将外部 Azure Active Directory 集成到 ADB2C
Integrate external azure Active Directory in to ADB2C
我需要将多个外部 azure 活动目录集成到我的应用程序(多租户)中。目前我正在使用 AD B2C。简而言之,任何购买我的产品的客户都应该能够将他们的组织 azure 活动目录与我的应用程序集成,并且那些 AD 用户应该能够在不注册的情况下登录到应用程序。
我尝试的一种方法是通过要求客户端在其 AD 中创建应用程序以进行身份验证和授权来验证外部 azure 活动目录用户。但这似乎有点棘手,因为我们已经在我们使用的 B2C 租户中创建了应用程序,并通过 B2C 租户中的应用程序保护 API。拥有多个 AD api 需要用多个 ids.How 来保护才能做到这一点?
第二种方法是使用图表 api 读取外部 azure 活动目录用户并邀请他们作为来宾用户。但是这里创建的任何来宾用户即使在将 "guest" 更改为 "member" 用户类型后也无法登录应用程序。有实现这个的想法吗?
更新
我执行了 https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-setup-commonaad-custom 中的所有步骤,但是当我在输入凭据后尝试使用我的一个 Azure AD 帐户登录时,它会将我导航到 B2C 注册 page.That 是因为我没有那个 AD我的 B2C 租户中的帐户。只有完成注册后,我才能登录到应用程序并获取令牌。 AD 用户是在我们的 B2C 租户中创建的,来源为
Federated Azure Active Directory
是否可以在输入凭据后摆脱导航到注册页面,而是立即使用令牌登录应用程序,这样就不会在我们的 B2C 租户中创建用户并从客户端的 Azure AD 验证用户
最好将 AAD B2C 与 Azure AD 通用端点联合起来。这允许任何拥有 O365 帐户的用户通过单一选项从任何 Azure AD 租户登录到你的服务。
然后您可以将租户列入白名单,这样只有您客户的 Azure AD 帐户才能通过这个选项登录。客户只需向您提供他们的 TenantId。
<!-- The key below allows you to specify each of the Azure AD tenants
that can be used to sign in. Update the GUIDs below for each tenant. -->
<Item Key="ValidTokenIssuerPrefixes">https://sts.windows.net/00000000-0000-0000-0000-000000000000,https://sts.windows.net/11111111-1111-1111-1111-111111111111</Item>
为各个组织创建单独的 B2C 租户可能是一种解决方案。
您会将每个 Azure AD 租户与组织的本地 AD 集成。
为了同步两个 AD,您需要使用 Azure AD Connect
(有关 MSDN 的更多信息:https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/identity/azure-ad#azure-ad-connect-sync-service)
同步广告后,您的 Web 应用程序将为单个 B2C 租户请求访问和 ID 令牌。
有关如何使用 OIDC 运行 各种用户旅程的更多信息,请阅读此处:
https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-reference-oidc
我需要将多个外部 azure 活动目录集成到我的应用程序(多租户)中。目前我正在使用 AD B2C。简而言之,任何购买我的产品的客户都应该能够将他们的组织 azure 活动目录与我的应用程序集成,并且那些 AD 用户应该能够在不注册的情况下登录到应用程序。
我尝试的一种方法是通过要求客户端在其 AD 中创建应用程序以进行身份验证和授权来验证外部 azure 活动目录用户。但这似乎有点棘手,因为我们已经在我们使用的 B2C 租户中创建了应用程序,并通过 B2C 租户中的应用程序保护 API。拥有多个 AD api 需要用多个 ids.How 来保护才能做到这一点?
第二种方法是使用图表 api 读取外部 azure 活动目录用户并邀请他们作为来宾用户。但是这里创建的任何来宾用户即使在将 "guest" 更改为 "member" 用户类型后也无法登录应用程序。有实现这个的想法吗?
更新 我执行了 https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-setup-commonaad-custom 中的所有步骤,但是当我在输入凭据后尝试使用我的一个 Azure AD 帐户登录时,它会将我导航到 B2C 注册 page.That 是因为我没有那个 AD我的 B2C 租户中的帐户。只有完成注册后,我才能登录到应用程序并获取令牌。 AD 用户是在我们的 B2C 租户中创建的,来源为
Federated Azure Active Directory
是否可以在输入凭据后摆脱导航到注册页面,而是立即使用令牌登录应用程序,这样就不会在我们的 B2C 租户中创建用户并从客户端的 Azure AD 验证用户
最好将 AAD B2C 与 Azure AD 通用端点联合起来。这允许任何拥有 O365 帐户的用户通过单一选项从任何 Azure AD 租户登录到你的服务。
然后您可以将租户列入白名单,这样只有您客户的 Azure AD 帐户才能通过这个选项登录。客户只需向您提供他们的 TenantId。
<!-- The key below allows you to specify each of the Azure AD tenants
that can be used to sign in. Update the GUIDs below for each tenant. -->
<Item Key="ValidTokenIssuerPrefixes">https://sts.windows.net/00000000-0000-0000-0000-000000000000,https://sts.windows.net/11111111-1111-1111-1111-111111111111</Item>
为各个组织创建单独的 B2C 租户可能是一种解决方案。
您会将每个 Azure AD 租户与组织的本地 AD 集成。 为了同步两个 AD,您需要使用 Azure AD Connect
(有关 MSDN 的更多信息:https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/identity/azure-ad#azure-ad-connect-sync-service)
同步广告后,您的 Web 应用程序将为单个 B2C 租户请求访问和 ID 令牌。
有关如何使用 OIDC 运行 各种用户旅程的更多信息,请阅读此处:
https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-reference-oidc