我有一个问题,我觉得这很重要。
我正在尝试将Azure Active Directory授权添加到我的应用程序中。
并且每个人都知道它正在使用ClientId
,TenantId
必须在Startup.cs
文件中注册。
这是我的问题,因为我想开发比Azure Active Directory更多的应用程序并将其信息存储到数据库中并调用指定的ClientId
&来自数据库的TenantId
并在启动时将它们注册到我的应用程序。
全部取决于子域或普通用户输入。
所以。如何在应用程序启动后将Azure Active Directory信息注册到app.UseOpenIdConnectAuthentication()
?
答案 0 :(得分:1)
您所描述的支持多个Azure AD租户的方法并不是非常正统的,并且对于所有参与设置和维护的各方来说都非常繁重。通常,您将创建一个应用程序,并将其标记为多租户 - 这将允许您将您的应用程序与多个组织一起使用,而无需更改clientID或任何其他坐标。有关示例,请参阅https://azure.microsoft.com/en-us/documentation/samples/active-directory-dotnet-webapp-multitenant-openidconnect/。 如果您确实按照自己的方法进行了设置,那么可能有用的一件事就是实现RedirectToIdentityProvider通知。在这里,您有机会在将请求消息发送到Azure AD之前对其进行修改,因此您可以修改要更改的参数。