我已经配置了Identity Server 4并使用Azure AD身份验证。如果我在身份服务器中使用特定于租户的授权URL,则一切正常。只有该租户的用户才能登录。我想允许多个域登录,并希望在后端验证发行者。
为支持我需要为Azure AD使用公共登录终结点,并且在登录后,当它重定向到Identity Server的sign-aad终结点时出现以下错误。我应该做些什么配置,以便可以手动验证发行者。
SecurityTokenInvalidIssuerException:IDX10205:发行者验证失败。发行者:“ https://sts.windows.net/94b73406-72db-4abb-a142-adfdfdfdfdbc/”。不匹配:validationParameters.ValidIssuer:“空”或validationParameters.ValidIssuers:“ https://sts.windows.net/ {tenantid} /”。 Microsoft.IdentityModel.Tokens.Validators.ValidateIssuer(字符串发行者,SecurityToken securityToken,TokenValidationParametersvalidationParameters)
答案 0 :(得分:2)
如果您的域可以在运行时动态增长,请在ValidateIssuer
中将false
设置为TokenValidationParameters
。如果您有预定的一组域,则将它们全部添加到ValidIssuers
。