SustainSys库不包括来自Azure AD的电子邮件声明吗?

时间:2018-10-18 17:58:39

标签: azure-active-directory saml-2.0 identityserver3 kentor-authservices sustainsys-saml2

我正在使用IdentityServer3进行身份验证,并且我还已将Azure AD配置为IdentityServer3中的外部提供程序。由于Azure AD使用的是SAML2协议,所以我使用SustainSys库来配置Azure AD
在Azure AD中,我已如下配置有效负载。请注意,电子邮件已包含在有效负载中 enter image description here

但是,在用户通过Azure AD进行身份验证并且请求返回到IdentityServer之后,SustainSys库不包括电子邮件声明。

enter image description here

我需要在SustainSys库中进行任何配置以包括电子邮件声明吗?在IdentityServer3中,我正在使用代码加载Azure AD提供程序

      private void AddSAML2Idp(IAppBuilder app, SAML2Provider provider, string signInAsType)
        {
            var authenticationOptions = new Saml2AuthenticationOptions(false)
            {
                SPOptions = new SPOptions
                {
                    EntityId = new EntityId(provider.AuduenceURI), // Auduence URI   
                    MinIncomingSigningAlgorithm = provider.MinIncomingSigningAlgorithm,
                    ModulePath = string.Format("/{0}", provider.Idp)
                },
                SignInAsAuthenticationType = signInAsType,
                AuthenticationType = provider.Idp,
                Caption = provider.Caption
            };

            UseIdSrv3LogoutOnFederatedLogout(app, authenticationOptions);                          
            authenticationOptions.SPOptions.ServiceCertificates.Add(LoadCertificateFromWindwosStore(ApplicationConfig.Saml2SigningCertificateSubjectName));

            var identityProvider = new IdentityProvider(new EntityId(provider.EntityID), authenticationOptions.SPOptions)
            {                
                MetadataLocation = provider.MetadataLocation,
                LoadMetadata = true 
            };            

            authenticationOptions.IdentityProviders.Add(identityProvider);

            app.UseSaml2Authentication(authenticationOptions);
        }

0 个答案:

没有答案