Azure AD(一)入门认识

一,引言(吹水)

  距离上一次介绍Azure Functions的相关博文以及过时快一个月了,原本早早都想好已经规划好的Azure的相关的学习的路线,无奈仍是因为本身文笔很差以及自身太懒,致使博文没有更新😂。好了,废话也很少说,开始今天的分享!!!编程

二,正文

什么是Microsoft 表示平台?

  今天分享的主题叫 “Azure AD”,全称为 “Azure Active Directory” Azure 活动目录,是否是听起来很拗口,微软官方文档解释到,其实在Azure上的提供的云端的身份表示和资源访问服务,能够帮助员工登陆以及访问如下位置的资源:缓存

  • 外部资源,例如 Microsoft Office 36五、Azure 门户以及成千上万的其余 SaaS 应用程序。安全

  • 内部资源,例如公司网络和 Intranet 上的应用,以及由本身的组织开发的任何云应用。服务器

  对应开发人员来说,按照这些理解,咱们大概了解到 Azure AD 实际上是微软基于云的表示和受权访问管理服务,它能够帮助咱们在Azure中登陆和访问资源。咱们能够经过Azure的标识平台生成应用程序,采用微软表示登陆,以及获取令牌来调用受保护的API资源,这里是否是 有点和Identity Server 4 相似,没错,这一切功能也是基于包含Oauth 2.0和Open ID Connect的身份验证服务。😎😎😎😎😎😎网络

实现标识平台,Azure AD 所支持的项目类型

  

 

 

   以上,是引用微软关于 Azure AD介绍的所支持的全部类型的身份认证平台app

微软标识平台的发展

  微软标识平台由 Azure AD 开发人员平台演变而来。 借助该平台,开发人员能够生成登陆用户的应用程序,以及获取令牌调用 API,例如 Microsoft Graph 或受保护的API资源。 它包含身份验证服务、开源库、应用程序注册和配置等等和其余开放人员内容。 微软 标识平台支持行业标准协议,例如 OAuth 2.0 和 OpenID Connect。框架

  借助微软统一标识平台 (v2.0),能够一次性编写代码,而后将任何微软标识身份验证到应用程序。 对于多个平台,标识平台终结点使用彻底受支持的开源 Microsoft 身份验证库 (MSAL)。 MSAL 易于使用,为用户提供出色的单一登陆 (SSO) 体验,帮助咱们实现高可靠性和性能,采用 微软 安全开发生命周期 (SDL) 开发。 调用 API 时,能够将应用程序配置为使用递增赞成,这容许你延迟对赞成的请求以实现更广的范围,直到应用程序的使用在运行时对此做出保证。 MSAL 还支持 Azure Active Directory B2C,所以,客户可以使用其首选的社交、企业或本地账户标识对应用程序和 API 进行单一登陆访问。ide

借助 Microsoft 标识平台,可将覆盖范围扩展到如下类型的用户:post

  • 工做和学校账户(Azure AD 预配账户)
  • 经过 MSAL 和 Azure AD B2C 使用本身的电子邮件或社交标识的客户

可使用 Azure 门户注册和配置应用程序,并将 Microsoft Graph API 用于编程应用程序配置。性能

  根据本身的进度更新应用程序。 使用 ADAL 库构建的应用程序继续受支持。 混合应用程序组合(包含使用 ADAL 生成的应用程序和使用 MSAL 库生成的应用程序)也受支持。 这意味着使用最新 ADAL 和最新 MSAL 的应用程序将在组合中提供 SSO,SSO 由这些库之间的共享令牌缓存提供。 从 ADAL 更新为 MSAL 的应用程序将在升级时保持用户登陆状态。

全部由此,咱们能够看出在咱们的项目中集成Azure AD来实现身份验证和受权。

微软标识平台开发术语-----开始以前,咱们仍是先去了解这些术语

  1. 访问令牌:由受权服务器颁发的一种安全令牌,可供客户端应用程序用来访问受保护的资源服务器。 一般,该令牌采用 JSON Web 令牌 (JWT) 形式,其中包含由资源全部者授予客户端的受权,用于进行所请求级别的访问。
  2. 应用程序 ID:Azure AD 向应用程序注册颁发的惟一标识符,用于标识特定应用程序和关联的配置。 执行身份验证请求时将使用此应用程序 ID,开发时会向身份验证库提供它。 
  3. 应用程序注册:要容许某个应用程序与标识和访问管理功能集成并将这些功能委托给 Azure AD,必须向 Azure AD 租户注册该应用程序。
  4. authentication:向访问方质询合法凭据的措施,提供建立用于标识和访问控制的安全主体的基础。
  5. authorization:受权通过身份验证的安全主体执行某项操做的措施,在 OAuth2 受权流程中:资源全部者向客户端应用程序受权时,容许客户端访问资源全部者的资源
  6. 受权终结点:受权服务器实现的终结点之一,用来与资源全部者进行交互,以便在 OAuth2 受权流程期间提供受权
  7. 受权服务器:根据 OAuth2 受权框架的定义,这是在成功验证资源全部者身份并获取其受权以后,负责向客户端颁发访问令牌的服务器。 客户端应用程序在运行时根据 OAuth2 定义的权限授予,经过其权限和令牌终结点来与受权服务器交互
  8. ID 令牌:受权服务器的受权终结点提供的 OpenID Connect 安全令牌,其中包含与最终用户资源全部者的身份验证相关的声明。 与访问令牌同样,ID 令牌也以数字签名的 JSON Web 令牌 (JWT) 形式来表示。
  9. 资源全部者:可以授予对受保护资源的访问权限的实体。若是资源全部者是我的,则称为最终用户。 例如,当客户端应用程序想要经过 Microsoft Graph API 访问用户的邮箱时,须要从该邮箱的资源全部者获取权限。
  10. 资源服务器:托管受保护资源的服务器,该服务器可以接受并响应出示访问令牌的客户端应用程序发出的受保护资源请求。 它也称为受保护的资源服务器或资源应用程序。
  11. 角色:提供某种方式让资源服务器控制其受保护资源的访问权限。 有两种类型的角色:“用户”角色为须要资源访问权限的用户/组实现基于角色的访问控制,“应用程序”角色为须要访问权限的 客户端应用程序 实现相同的访问控制
  12. 范围:与角色同样,范围提供某种方式让资源服务器控制其受保护资源的访问权限。 对于资源全部者已为其提供资源的委托访问权限的客户端应用程序,范围可用于实现基于范围的访问控制。
  13. 安全令牌:包含 OAuth2 令牌或 SAML 2.0 断言等声明的已签名文档。 对于 OAuth2 受权,访问令牌 (OAuth2) 和 ID 令牌都是安全令牌类型,而且这两种类型都做为 JSON Web 令牌 (JWT) 实现。
  14. tenant:Azure AD 目录的实例称为 Azure AD 租户

微软标识平台体验

  下图显示了高级别的 Microsoft 标识体验,包括应用注册体验、SDK、终结点和支持的标识

应用注册体验

  Azure 门户应用注册 体验是用于管理已与 Microsoft 标识平台集成的全部应用程序的一种门户体验。

要与 Azure AD B2C 集成(对社交或本地身份进行身份验证时),须要在 Azure AD B2C 租户中注册应用程序。 这种体验也是 Azure 门户的一部分。

  使用应用程序 API 以编程方式配置与 Microsoft 标识平台集成的应用程序,以对 Microsoft 标识进行身份验证。

MSAL 库

  可使用 MSAL 库生成对全部 Microsoft 标识进行身份验证的应用程序。 .NET 和 JavaScript 中的 MSAL 库已正式发布。 适用于 iOS 和 Android 的 MSAL 库处于预览阶段,适合用于生产环境。 咱们为预览版 MSAL 库提供的生产级别支持与咱们为正式版 MSAL 和 ADAL 提供的生产级别支持相同。

  还可以使用 MSAL 库将应用程序与 Azure AD B2C 集成。

  用于构建 Web 应用和 Web API 的服务器端库已正式发布:ASP.NET 和 ASP.NET Core

Microsoft 标识平台终结点

Microsoft 标识平台 (v2.0) 终结点现已通过 OIDC 认证。 它适用于 Microsoft 身份验证库 (MSAL) 或任何其余符合标准的库。 它按照行业标准实现了简明易懂的范围。

3、结尾

今天大概介绍了如下Azure AD的一些概述,以及做为开发者,咱们可使用Azure AD 来作些什么,下一篇正式开始在项目中咱们是若是进行集成Azure AD以及Azure AD认证受权的几种模式。

做者:Allen 

版权:转载请在文章明显位置注明做者及出处。如发现错误,欢迎批评指正。

参考微软文档出处:

 中文文档:https://docs.microsoft.com/zh-cn/azure/active-directory/fundamentals/active-directory-whatis

 英文文档:https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/active-directory-whatis

相关文章
相关标签/搜索