二.使用Azure AD进行身份验证 之所以将Azure AD 作为开始,是应为基本上我们所有应用都需要进行安全管理.Azure Active Directory (Azure AD) 通过以下方式简化了对开发人员的身份验证:将标识提供为一项服务.支持行业标准协议(例如 OAuth 2.0 和 OpenID Connect),并提供用于不同平台的开源库来帮助你快速开始编码. Azure Active Directory (Azure AD) 提供了一种简便的方法,让企业可以在云中和本地管理标识和…
2.2身份验证开发 在我们的案例中,我们是用户通过Web应用程序进行身份识别. 上面的图示说明了如下的一些概念 l Azure AD 是标识提供程序,负责对组织的目录中存在的用户和应用程序的标识进行验证,并最终在那些用户和应用程序成功通过身份验证时颁发安全令牌. l 希望将身份验证外包给 Azure AD 的应用程序必须在 Azure AD 中进行注册,Azure AD 将在目录中注册并唯一地标识该应用程序. l 在用户通过身份验证后,应用程序必须对用户的安全令牌进行验证以确保身份验证对于目标方…
2.1使用Azure AD需要了解几个概念 l Azure AD目录 当你注册 Microsoft 云服务时,便会获得一个 Azure AD 目录.你可根据需要创建更多的目录.例如,可以将第一个目录保留为生产目录,然后创建另一个目录进行测试或过渡. l Azure AD租户 在启用云的工作区中,可以将租户定义为拥有并管理该云服务的特定实例的客户端或组织.租户使用 Microsoft Azure 提供的标识平台,它只是你的组织在注册 Azure 或 Office 365 等 Microsoft 云…
三.使用Azure AD管理用户信息 在上一章我们采用OpenID的方案和Azure AD交互进行身份验证,本章节我们继续了解如何在Azure AD中创建用户,列出用户信息,修改用户信息和删除用户信息.因为SDK提供了很好的封装,使我们使用Azure AD将变得非常简单轻松.Azure AD的操作基本都是通过Microsoft.Azure.ActiveDirectory.GraphClient.ActiveDirectoryClient对象进行操作控制.Microsoft.Azure.Activ…
3.1 Index用户列表 或许当前域下的用户列表 [Authorize] public async Task<ActionResult> Index() { var userList = new List<IUser>(); try { var client = AuthenticationHelper.GetActiveDirectoryClient(); var pagedCollection = await client.Users.ExecuteAsync(); whil…
3.4 Edit修改用户信息 我们用FormCollection简化了表单提交,非常方便的进行用户信息修改. [HttpPost, Authorize] public async Task<ActionResult> Edit(User user, FormCollection values) { try { ActiveDirectoryClient client = AuthenticationHelper.GetActiveDirectoryClient(); IUser toUpdat…
3.3 Details用户详细信息 用户详细信息是通过objectId获取.代码如下 public async Task<ActionResult> Details(string objectId) { try { ActiveDirectoryClient client = AuthenticationHelper.GetActiveDirectoryClient(); var user = (User)await client.Users.GetByObjectId(objectId).E…
3.2 Create创建用户 [HttpPost, Authorize] public async Task<ActionResult> Create( [Bind(Include = "UserPrincipalName,AccountEnabled,PasswordProfile,MailNickname,DisplayName,GivenName,Surname,JobTitle,Department")] User user) { ActiveDirectoryCl…
3.5 Delete删除用户 删除也是通过ObjectID获得对象进行删除 [Authorize] public async Task<ActionResult> Delete(string objectId) { try { ActiveDirectoryClient client = AuthenticationHelper.GetActiveDirectoryClient(); var user = (User)await client.Users.GetByObjectId(objec…
<編者按>本篇为系列文章,带领读者轻松进入Windows Azure SDK .NET开发平台.本文为第二篇,将教导读者使用Azure AD进行身分验证.也推荐读者阅读无责任Windows Azure SDK .NET开发入门(一):开发前准备工作. 使用Azure AD 进行身份验证 之所以将Azure AD 作为开始,是应为基本上我们所有应用都需要进行安全管理.Azure Active Directory (Azure AD) 通过以下方式简化了对开发人员的身份验证:将标识提供为一项服务.…