在多租户环境中使用多个AddWsFederation()

时间:2019-05-02 13:37:28

标签: azure asp.net-core azure-active-directory ws-federation

我已经搜索过,但是找不到有关使用多个.AddWsFederation扩展名的任何文档。

我目前没有要测试的两个AD实例设置,所以我只是想知道是否有人熟悉在单个扩展中添加个以上 .AddWsFederation扩展名的概念应用程式。

想法是允许我的多租户应用程序的用户通过他们自己的Azure Active Directory实例登录。 用户A 属于 Tenant A 将通过其自己的Azure AD实例登录,而属于 Tenant B 用户B 将通过其自己的Azure AD实例登录。

有人知道这是否可能吗,或者是否有任何文档?

    services.AddAuthentication()
    .AddWsFederation(options =>
    {
        // MetadataAddress represents the Active Directory instance used to authenticate users.
        options.MetadataAddress = "https://login.microsoftonline.com/.../federationmetadata.xml";

        // Wtrealm is the app's identifier in the Active Directory instance.
        // For ADFS, use the relying party's identifier, its WS-Federation Passive protocol URL.
        // For AAD, use the App ID URI from the app registration's Properties blade.
        // Read more: https://docs.microsoft.com/en-us/aspnet/core/security/authentication/ws-federation
        options.Wtrealm = Configuration["WtRealm"];
    });

编辑:该应用程序当前使用ASPNET Core Identity身份验证以及通过单个WsFederation实例提供登录名(如上所示):

services.AddIdentity<ApplicationUser, IdentityRole>(options =>
    {
        options.Password.RequireNonAlphanumeric = false;
        options.Password.RequiredLength = 10;
        options.Password.RequireDigit = false;
        options.Password.RequireLowercase = false;
        options.Password.RequireUppercase = false;
        options.User.RequireUniqueEmail = true;
    })
    .AddEntityFrameworkStores<ApplicationDbContext>()
    .AddDefaultTokenProviders();

0 个答案:

没有答案