如何:将 Azure AD 租户添加为标识提供者

更新时间:2015 年 6 月 19 日

适用于:Azure

应用于

  • Microsoft Azure Active Directory 访问控制(也称为访问控制服务或 ACS)

概述

本主题介绍如何将Azure Active Directory (AD) 租户添加到访问控制命名空间中的标识提供者列表中。 此功能允许你将租户用作与命名空间关联的应用程序的标识提供程序。

此过程具有两个主要元素:

  1. 将访问控制命名空间添加到 Azure AD 租户中作为 Web 应用。 这将允许该命名空间(Web 应用程序)从 Azure AD 接收令牌。

  2. 将 Azure AD 租户作为标识提供者添加到访问控制命名空间。

剩下的步骤对于 ACS 中的所有标识提供程序是共同的。 你可以添加信赖方应用程序和规则,以便确定哪些标识声明从标识提供程序传递到信赖方应用程序。

要求

本主题中的说明需要以下条件:

  1. Azure 订阅。 有关详细信息,请参阅 Azure 入门

  2. Azure 访问控制命名空间。 有关帮助,请参阅如何:创建访问控制命名空间

  3. Visual Studio 2012

步骤摘要

若要将 Azure AD 租户添加为标识提供程序,请完成以下步骤:

  • 步骤 1:查找访问控制命名空间的名称

  • 步骤 2:将访问控制命名空间添加为 Web 应用程序

  • 步骤 3:将 Azure AD 租户标识提供者添加到访问控制命名空间

  • 步骤 4:将 Azure AD 租户标识提供者与应用配合使用

步骤 1:查找访问控制命名空间的名称

在此步骤中,我们将复制要在下一步中使用的命名空间名称。 你将需要使用命名空间名称来指示:应将令牌发送到用于接收 WS 联合身份验证登录响应的终结点。

虽然命名空间 URL 在标记为“管理门户”的字段中,但令牌将发送到指定的终结点,而不是该门户。

  1. 转到Microsoft Azure管理门户 () https://manage.WindowsAzure.com 登录,然后单击“Active Directory”。 (故障排除提示: “Active Directory”项缺失或不可用)

  2. 若要管理访问控制命名空间,请选择该命名空间,然后单击“管理”。 (或者,单击“访问控制命名空间”,选择命名空间,然后单击“管理”。)

  3. 单击“应用程序集成”

  4. 复制“管理门户”字段的值。

    “管理门户”字段中的 URL 具有以下格式:

    < https:// Namespace.accesscontrol.windows.net/>

    保存该值。 你将在下一步中需要它。

“管理门户”字段的值是用于接收 WS 联合身份验证登录响应的终结点的命名空间名称和 URL。

步骤 2:将访问控制命名空间添加为 Web 应用程序

在此步骤中,你将使用 Azure 管理门户的功能将访问控制命名空间添加为 Azure AD 租户中的 Web 应用程序。 这使租户成为 Azure AD 生成的令牌的接收者。

  1. 转到 Azure 管理门户 并登录。 单击 Active Directory,单击目录,单击 “应用程序”,然后单击“ 添加”。

    Add an application to an Active Directory tenant

  2. 输入应用程序的名称。 在“类型”字段中,选择“Web 应用程序和/或 Web API”(默认值)。 若要前进,请单击箭头。

    Add a name and type for the app

  3. 在“应用程序 URL”和“应用程序 ID URI”文本框中,粘贴“应用程序集成”页上“管理门户”字段中的 URL。 若要继续,请单击箭头。

    应用程序 URL 是在用户成功进行身份验证时将令牌发送到的地址。 应用程序 ID URI 是指令牌的受限访问群体。 如果我们使用了除访问控制命名空间的 entityID 以外的任何值,ACS 会将其解释为中间人攻击重复使用的令牌。

    粘贴时,请小心操作,不要包含最后的正斜杠 (/) 后尾随的空格或额外的字符。 否则,Azure AD 会将该 URL 标记为无效。

    Add the URL and App ID Uri for the app

  4. 在“目录访问”页上,选择默认设置,即“单一登录”。 由于 ACS 不调用 Graph API,因此不会使用该设置。 若要完成此过程,请单击复选标记。

    此时,Azure AD 租户知道访问控制命名空间,并可以为其颁发令牌。

    Specify the access requirements of the app

  5. 在最后一页上,复制联合元数据 URL。 你将在几分钟后需要它。

    若要返回到该页,请执行以下操作:

    • 转到 Azure 管理门户 并登录。

    • 单击某个 Azure 目录。

    • 单击“应用程序”

    • 单击该应用程序。

    联合元数据 URL 也会在应用程序的“应用程序终结点”页上列出。 若要查看该页,请在应用程序页上,单击“查看终结点”

    Page announces that app is added

步骤 3:将 Azure AD 租户标识提供者添加到访问控制命名空间

在此步骤中,将 Azure AD 租户的安全令牌服务 (STS) 添加到访问控制命名空间。

  1. 转到Microsoft Azure管理门户 () https://manage.WindowsAzure.com 登录,然后单击“Active Directory”。 (故障排除提示: “Active Directory”项缺失或不可用)

  2. 若要管理访问控制命名空间,请选择该命名空间,然后单击“管理”。 (或者,单击“访问控制命名空间”,选择命名空间,然后单击“管理”。)

    此操作将打开访问控制命名空间的 ACS 管理门户。

    ACS Management Portal

  3. 单击“标识提供程序”,然后单击“添加”

  4. 选择 WS 联合身份验证标识提供程序,然后单击“下一步”。

    Add an identity provider

  5. 输入显示名称和登录链接文本。 对这些值没有特殊的要求。

  6. 在“WS 联合身份验证元数据”部分中,单击 URL,然后粘贴从应用程序页复制的联合元数据 URL。 然后,单击“保存”。

    此页上另一个有用字段是“登录链接文本”字段。 当用户登录到应用程序时,该字段的值将显示在向用户提供的标识提供程序列表中。

    Enter the Federation Metadata URL

步骤 4:将 Azure AD 租户标识提供者与应用配合使用

Azure AD 租户现在注册为访问控制命名空间的标识提供者。 在某种意义上,我们的任务已完成。 但是,在此步骤中,我们会将新的标识提供程序添加到 Web 应用程序的标识提供程序服务,以便显示如何使用该标识提供程序。

若要为应用程序选择新的标识提供程序,请使用标准过程:

  1. 启动 Visual Studio 2012 并打开一个 ?eb 应用程序。

  2. 在解决方案资源管理器中,右键单击应用程序名称,然后单击“标识和访问”

  3. 在“提供程序”选项卡上,单击“使用 Azure 访问控制服务”

  4. 若要将应用程序与访问控制命名空间相关联,需要命名空间的管理密钥。 以下是找到该密钥的方法。

    1. 转到Microsoft Azure管理门户 () https://manage.WindowsAzure.com 登录,然后单击“Active Directory”。 (故障排除提示: “Active Directory”项缺失或不可用)

    2. 若要管理访问控制命名空间,请选择该命名空间,然后单击“管理”。 (或者,单击“访问控制命名空间”,选择命名空间,然后单击“管理”。)

    3. 依次单击“管理服务”“管理客户端”“对称密钥”

    4. 单击“显示密钥”,复制密钥值,然后单击“隐藏密钥”

  5. 现在,回到 Visual Studio 的“配置 ACS 命名空间”对话框,输入访问控制命名空间的名称并粘贴管理密钥值。

    Enter the namespace name and key in Visual Studio

  6. 然后,从命名空间中的标识提供者列表中选择 Azure AD 租户标识提供者。

    Select the AD Tenant identity provider

  7. 当你运行应用程序时,登录对话框的标识提供程序选项中将包括 Azure AD 租户标识提供程序。 (此页显示的名称是在标识提供程序设置页的“登录链接文本”字段中定义的。)

    Select an identity provider

  8. 选择 Azure AD 租户,然后使用组织帐户登录。

    Application sign-in page

现在,你已可访问应用程序。 身份验证令牌将转发到充当标识提供程序的 Azure AD 租户。

另请参阅

概念

ACS 操作指南