Azure ad b2c MS Azure AD B2C作为SAML IDP不工作

Azure ad b2c MS Azure AD B2C作为SAML IDP不工作,azure-ad-b2c,Azure Ad B2c,背景 我有一个应用程序,其中用户通过广告B2C注册/登录。在应用程序中,有一个链接将重定向到另一个在SAML上工作的应用程序,因此希望MS Azure作为IDP工作,并将SAML发送到第三个应用程序 我们通过非画廊应用程序在AAD(非广告B2C)中实现了这一点,但在广告B2C中遇到了问题 我们遵循了这份文件 但当我们点击URL时,它会显示“AADB2C:发生了异常” 基本文件- 扩展文件- SignInSaml文件-您可以做的最好的事情是首先使用OIDC并确认策略正在工作,然后覆盖使用SAML发

背景

我有一个应用程序,其中用户通过广告B2C注册/登录。在应用程序中,有一个链接将重定向到另一个在SAML上工作的应用程序,因此希望MS Azure作为IDP工作,并将SAML发送到第三个应用程序

我们通过非画廊应用程序在AAD(非广告B2C)中实现了这一点,但在广告B2C中遇到了问题

我们遵循了这份文件 但当我们点击URL时,它会显示“AADB2C:发生了异常”

基本文件-

扩展文件-


SignInSaml文件-

您可以做的最好的事情是首先使用OIDC并确认策略正在工作,然后覆盖使用SAML发出JWT令牌的步骤

当使用SAML时,我使用这种格式

基地 基本扩展(如果您需要,我不愿意) 政策OIDC(这扩展了基础) 策略SAML(这扩展了OIDC)

在策略SAML中,我然后覆盖调用JWTIssuer的用户旅程编排步骤,然后调用我的SAML令牌创建者

这种方法的原因是B2C被设计为与OIDC一起工作,您可以确认旅程在OIDC中按预期工作,然后切换到SAML

我还使用了旅程记录仪,我发现旧的B2C旅程记录仪比app insights更好,但两者都跟踪相同的数据

在办公室检查我的SAML后,您丢失了一些元数据来告诉SAML在您的策略中的行为

      <Metadata>
    <Item Key="IdpInitiatedProfileEnabled">true</Item>
    <Item Key="RequestsSigned">false</Item>
    <Item Key="WantsSignedResponses">true</Item>
    <Item Key="ResponsesSigned">true</Item>
    <Item Key="AssertionsEncrypted">false</Item>
    <Item Key="WantsEncryptedAssertions">false</Item>
    <Item Key="PartnerEntity">https://my-calling-application/authservices</Item>
  </Metadata>
  <SubjectNamingInfo ClaimType="UserId"  />  

真的
假的
真的
真的
假的
假的
https://my-calling-application/authservices
您的主题命名信息也需要


因为这是您在基本策略中定义的SAAML名称,所以您可以做的最好的事情是首先使用OIDC并确认策略正在工作,然后覆盖使用SAML发出JWT令牌的步骤

当使用SAML时,我使用这种格式

基地 基本扩展(如果您需要,我不愿意) 政策OIDC(这扩展了基础) 策略SAML(这扩展了OIDC)

在策略SAML中,我然后覆盖调用JWTIssuer的用户旅程编排步骤,然后调用我的SAML令牌创建者

这种方法的原因是B2C被设计为与OIDC一起工作,您可以确认旅程在OIDC中按预期工作,然后切换到SAML

我还使用了旅程记录仪,我发现旧的B2C旅程记录仪比app insights更好,但两者都跟踪相同的数据

在办公室检查我的SAML后,您丢失了一些元数据来告诉SAML在您的策略中的行为

      <Metadata>
    <Item Key="IdpInitiatedProfileEnabled">true</Item>
    <Item Key="RequestsSigned">false</Item>
    <Item Key="WantsSignedResponses">true</Item>
    <Item Key="ResponsesSigned">true</Item>
    <Item Key="AssertionsEncrypted">false</Item>
    <Item Key="WantsEncryptedAssertions">false</Item>
    <Item Key="PartnerEntity">https://my-calling-application/authservices</Item>
  </Metadata>
  <SubjectNamingInfo ClaimType="UserId"  />  

真的
假的
真的
真的
假的
假的
https://my-calling-application/authservices
您的主题命名信息也需要


由于这是您在基本策略中定义的SAAML名称

我不能,我无权访问该名称。请向您的策略中添加旅程记录器终结点,app insights或您可以下载旅程记录器终结点以及示例策略,并部署到AzureI can,我没有访问权限。请将旅程记录器终结点添加到您的策略中,或者app insights,或者您可以下载旅程记录器终结点以及示例策略并部署到AzureI。我找到了上述问题的解决方案,即我没有在请求中发送SAMLRequest。但现在,当Azure发送SAML响应时,它包含“InResponseTo”属性,该属性不应该存在,因为它是IDP启动的SAML。你对此有什么想法吗?我找到了上述问题的解决方案,即我没有在请求中发送SAMLRequest。但现在,当Azure发送SAML响应时,它包含“InResponseTo”属性,该属性不应该存在,因为它是IDP启动的SAML。你知道吗?