Azure B2C SAML认证报错:AuthRequest无断言消费者服务URL
Azure B2C SAML登录错误修复方案
错误核心原因
错误提示明确:与AuthRequest中IssuerUri "ABC"对应的已注册应用,其元数据中未指定断言消费者服务URL "https://sample.com/api-gateway/auth-method/acs"。
从提供的应用清单来看,尽管replyUrlsWithType中已配置该URL,但Azure B2C的SAML流程不依赖此配置,需单独设置ACS地址;另外清单内signInAudience字段值存在拼写错误(AzureADMsadyOrg应为AzureADMyOrg或其他合法值),这会导致SAML元数据生成异常。
具体修复步骤
配置SAML专属ACS地址
- 登录Azure门户,进入目标B2C租户,找到名称为"A"的应用。
- 进入单一登录 → SAML配置页。
- 在**断言消费者服务(ACS)**区域,点击"添加",填入
https://sample.com/api-gateway/auth-method/acs并设为默认ACS URL,保存配置。
修正清单中的
signInAudience值- 打开应用的清单编辑页面,将
signInAudience的错误值AzureADMsadyOrg替换为合法值:- 仅内部租户用户登录:
AzureADMyOrg - 所有Azure AD租户用户登录:
AzureADMultipleOrgs - 所有用户(含外部访客)登录:
AzureADandPersonalMicrosoftAccount
- 仅内部租户用户登录:
- 保存清单修改。
- 打开应用的清单编辑页面,将
验证元数据
访问应用的SAML元数据URL(格式示例:https://{你的B2C租户名}.b2clogin.com/{你的B2C租户名}.onmicrosoft.com/B2C_1A_signup_signin/samlp/metadata/appid/{你的应用ID}),确认其中已包含指定的ACS URL。
关键说明
Azure B2C中,replyUrlsWithType仅作用于OAuth2/OIDC流程,SAML流程的ACS地址必须在SAML专属配置区单独设置;signInAudience字段值错误会直接干扰元数据生成,需确保取值符合业务需求。
内容的提问来源于stack exchange,提问作者WAEX
相关产品推荐
相关产品推荐

