Azure AD B2C声明无法传递至Static Web App问题求助
Azure AD B2C声明无法传递至Azure Static Web App排查求助
我在尝试将Azure AD B2C的声明传递至Azure Static Web App(SWA)时遇到问题:目前已完成ADB2C租户应用注册、SWA的OpenID Connect提供商配置,且用户能正常登录,但通过SWA的/.auth/me端点获取声明时,仅能得到少量内容。
已完成的操作:
- 按照微软官方文档指引,在应用声明中勾选了所有需要的声明并保存
- 在ADB2C租户中完成应用注册,配置了SWA的回调URL
- 根据SWA自定义认证文档,提供了应用注册的客户端ID、客户端密钥,以及与ADB2C策略关联的OpenID配置信息
关键现象:
- 使用同一应用注册运行SignupSignIn策略,将jwt.ms作为回调URL时,能获取到所有预期声明
- 但通过SWA的
/.auth/login/adb2c/callback完成登录后,/.auth/me端点无法显示完整声明
我怀疑需要调整应用注册配置,但不确定具体方向,也无法判断是ADB2C未输出完整声明,还是SWA代理环节丢弃了声明。
以下是我的应用清单:
{ "id": "947e0f27-54f8-4fd7-8d47-7138ec829e49", "acceptMappedClaims": null, "accessTokenAcceptedVersion": 2, "addIns": [], "allowPublicClient": null, "appId": "25a72c46-1be1-445e-9ed1-fbf89732c9ea", "appRoles": [], "oauth2AllowUrlPathMatching": false, "createdDateTime": "2022-08-16T17:23:28Z", "description": null, "certification": null, "disabledByMicrosoftStatus": null, "groupMembershipClaims": null, "identifierUris": [], "informationalUrls": { "termsOfService": null, "support": null, "privacy": null, "marketing": null }, "keyCredentials": [], "knownClientApplications": [], "logoUrl": null, "logoutUrl": "https://seanwoodwardwebb2c.b2clogin.com/seanwoodwardwebb2c.onmicrosoft.com/B2C_1_signupsignin1/oauth2/v2.0/logout", "name": "SWA Test", "notes": null, "oauth2AllowIdTokenImplicitFlow": true, "oauth2AllowImplicitFlow": true, "oauth2Permissions": [], "oauth2RequirePostResponse": false, "optionalClaims": { "idToken": [], "accessToken": [], "saml2Token": [] }, "orgRestrictions": [], "parentalControlSettings": { "countriesBlockedForMinors": [], "legalAgeGroupRule": "Allow" }, "passwordCredentials": [ { "customKeyIdentifier": null, "endDate": "2023-02-16T18:23:56.247Z", "keyId": "886381a9-74d8-4176-8921-e34299f52b13", "startDate": "2022-08-16T17:23:56.247Z", "value": null, "createdOn": "2022-08-16T17:24:00.1757229Z", "hint": "4pA", "displayName": "Dev" } ], "preAuthorizedApplications": [], "publisherDomain": "seanwoodwardwebb2c.onmicrosoft.com", "replyUrlsWithType": [ { "url": "https://jwt.ms", "type": "Web" }, { "url": "https://gentle-water-027065a10.1.azurestaticapps.net/.auth/login/adb2c/callback", "type": "Web" }, { "url": "https://gentle-water-027065a10-staging.centralus.1.azurestaticapps.net/.auth/login/adb2c/callback", "type": "Web" }, { "url": "https://gentle-water-027065a10-dev.centralus.1.azurestaticapps.net/.auth/login/adb2c/callback", "type": "Web" } ], "requiredResourceAccess": [ { "resourceAppId": "00000003-0000-0000-c000-000000000000", "resourceAccess": [ { "id": "37f7f235-527c-4136-accd-4a02d197296e", "type": "Scope" }, { "id": "7427e0e9-2fba-42fe-b0c0-848c9e6a8182", "type": "Scope" } ] } ], "samlMetadataUrl": null, "signInUrl": null, "signInAudience": "AzureADandPersonalMicrosoftAccount", "tags": [], "tokenEncryptionKeyId": null }
我的代码库:az-swa-b2c-demo
内容的提问来源于stack exchange,提问作者Sean W.
相关产品推荐
相关产品推荐

