我正在为一家关于安全问题的公司建立一个外联网.他们希望确保其用户正在浏览网站,并在其网络浏览器中启用私人浏览模式,以便不保留任何Cookie或历史记录.
我发现只有这个 http://jeremiahgrossman.blogspot.com/2009/03/detecting-private-browsing-mode.html 和 https://serverfault.com/questions/18966/force-safari-to-operate-in-私人模式和检测,该状态-从-A-Web服务器
理想的解决方案是使用no或minimal javascript.试图为所有浏览器和平台设置一个独特的cookie吗?有人这样做过吗?
谢谢!
更新
http://crypto.stanford.edu/~collinj/research/incognito/使用其他海报提到的浏览器fingerprinters的CSS访问技术 - 感谢提示.
我喜欢它,因为它小而优雅,但仍然希望能够在没有javascript的情况下做到这一点,如果可能的话.
我的Angular 5项目中有一个服务,其中包含一些配置状态:
@Injectable
export class FooService {
isIncognito: boolean = null;
constructor() {
// I want Angular to wait for this to resolve (i.e. until `isIncognito != null`):
FooService.isIncognitoWindow()
.then( isIncognito => {
this.isIncognito= isIncognito;
} );
}
private static isIncognitoWindow(): Promise<boolean> {
// /sf/ask/203655721/
// https://developer.mozilla.org/en-US/docs/Web/API/LocalFileSystem
return new Promise<boolean>( ( resolve, reject ) => {
let rfs = window['requestFileSystem'] || window['webkitRequestFileSystem'];
if( !rfs ) {
console.warn( "window.RequestFileSystem not found." );
resolve( false );
}
const typeTemporary = 0;
const …Run Code Online (Sandbox Code Playgroud)