Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

20200522 #32

Open
into-piece opened this issue May 26, 2020 · 0 comments
Open

20200522 #32

into-piece opened this issue May 26, 2020 · 0 comments

Comments

@into-piece
Copy link
Owner

腾讯面试

  • react native跟原生是怎么交互的
  • cookie有什么可以作为唯一标识
  • 三次握手和挥手要更清晰

csp(内容安全策略

内容安全策略(CSP)是一个 HTTP Header,CSP 通过告诉浏览器一系列规则,严格规定页面中哪些资源允许有哪些来源, 不在指定范围内的统统拒绝。

使用它是防止跨站点脚本(XSS)漏洞的最佳方法。由于难以使用 CSP 对现有网站进行改造(可通过渐进式的方法),因此 CSP 对于所有新网站都是强制性的,强烈建议对所有现有高风险站点进行 CSP 策略配置。

CSP被设计出来的目的就是为了效防范内容注入攻击,如XSS攻击等.

它通过让开发者对自己WEB应用声明一个外部资源加载的白名单,使得客户端在运行WEB应用时对外部资源的加载做出筛选和识别,只加载被允许的网站资源.对于不被允许的网站资源不予加载和执行.同时,还可以将WEB应用中出现的不被允许的资源链接和详情报告给我们指定的网址.如此,大大增强了WEB应用的安全性.使得攻击者即使发现了漏洞,也没法注入脚本,除非还控制了一台列入了白名单的服务器.

使用方式

  1. meta标签
<meta http-equiv="Content-Security-Policy" content="default-src 'self';">
<meta http-equiv="content-security-policy-report-only" content="default-src 'self';">
  1. http header

一种是后端开发或服务运维人员对页面的HTTP请求的响应配置Content-Security-Policy属性,如在NGINX服务器上配置如下

OAuth2

OAuth(Open Authorization,开放授权)是为用户资源的授权定义了一个安全、开放及简单的标准,第三方无需知道用户的账号及密码,就可获取到用户的授权信息

OAuth2.0是OAuth协议的延续版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0

  1. 第三方应用向资源持有者请求获取资源
  2. 资源持有者授权给予第三方应用一个许可
  3. 第三方应用将该许可给予认证服务器进行认证,如果认证成功,返回一个Access Token
  4. 第三方应用使用该access token到资源服务器处获取该access token对应的资源(也就是第一步中资源持有者自身的资源)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant