前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FastAPI(57)- 安全相关的概念

FastAPI(57)- 安全相关的概念

作者头像
小菠萝测试笔记
发布2021-10-09 10:56:02
8870
发布2021-10-09 10:56:02
举报
OAuth2
  • OAuth2 是一个规范,它定义了几种处理身份验证和授权的方法
  • 这是一个相当广泛的规范,涵盖了几个复杂的用例
  • 它包括使用“第三方”进行身份验证的方法
  • 比如在抖音通过微信、QQ 登录,底层用的就是 OAuth2
OAuth1
  • OAuth 1,它与 OAuth2 非常不同,而且更复杂,因为它直接包含了关于如何加密通信的规范
  • 它现在不是很流行或常用
  • OAuth2 没有指定如何加密通信,它希望您的应用程序使用 HTTPS
OpenID Connect
  • OpenID Connect 是另一个规范,基于 OAuth2
  • 它只是扩展了 OAuth2,指定了 OAuth2 中相对模糊的一些内容,以尝试使其更具互操作性
  • 例如,Google 登录使用 OpenID Connect(其底层使用 OAuth2)
  • 但是 Facebook 登录不支持 OpenID Connect,它有自己的 OAuth2 风格
OpenID (not "OpenID Connect")
  • 还有一个“OpenID”规范,它试图解决与 OpenID Connect 相同的问题,但不是基于 OAuth2
  • 所以,这是一个完整的附加系统
  • 但它现在不是很流行或使用
OpenAPI
  • OpenAPI(以前称为 Swagger)是用于构建 API(现在是 Linux 基金会的一部分)的开放规范
  • FastAPI 基于 OpenAPI,这就是拥有多个自动交互式文档界面、代码生成等的原因
  • OpenAPI 有一种方法可以定义多个安全“方案”
  • 通过使用它们,可以利用所有这些基于标准的工具,包括这些交互式文档系统
apikey

一个应用程序特定的密钥,可以来自:

  • query param
  • header
  • cookie
http

标准的 HTTP 认证系统,包括

  • Bearer:一个 header Authorization,值为 Bearer 加上一个 token,这是从 OAuth2 继承的
  • HTTP 基本身份验证
  • HTTP 摘要
oauth2

处理安全性的所有 OAuth2 方法(称为“流”)

其中一些流程适用于构建 OAuth 2.0 身份验证提供程序(如 Google、Facebook、Twitter、GitHub 等)

  • implicit
  • clientCredentials
  • authorizationCode

但是有一个特定的“流程”可以完美地用于直接在同一应用程序中处理身份验证

  • password
openIdConnect
  • 有一种方法可以定义如何自动发现 OAuth2 身份验证数据
  • 这种自动发现是 OpenID Connect 规范中定义的
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-10-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • OAuth2
  • OAuth1
  • OpenID Connect
  • OpenID (not "OpenID Connect")
  • OpenAPI
  • apikey
  • http
  • oauth2
  • openIdConnect
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档