Combinação SAML e SSL Offloader causa erro

Combinação SAML e SSL Offloader causa erro

Ontem à noite tentamos migrar um site para nosso novo provedor de hospedagem. Este novo provedor de hospedagem usa um descarregador SSL e isso causa um problema em um site que usa SAML. Após a migração quando tentamos fazer login via SAML obtivemos o erro abaixo, no erro e no web.config alterei o nome do cliente para cliente. Achamos que o SAML espera uma resposta HTTPS, mas obtém uma resposta HTTP. Existe uma maneira de influenciar isso no web.config. Também adicionei um pedaço do web.config com a maior parte da configuração do cliente em relação ao SAML, também tentamos com o CookieHandler em False, mas mesmo erro. Espero que vocês possam nos ajudar!

Configuração Web.Config

<!-- SAML authService -->
<kentor.authServices
   entityId="customersaml"
   returnUrl="https://customer.domain.com"
   validateCertificates="false">
   <identityProviders>
        <add entityId="http://ahauth01.customer.nl/adfs/services/trust" signOnUrl="https://ahauth01.customer.nl/adfs/ls/" allowUnsolicitedAuthnResponse="true" binding="HttpPost">
            <signingCertificate fileName="~/Config/customer.crt" />
        </add>
    </identityProviders>
</kentor.authServices>

<system.identityModel.services>
    <federationConfiguration>
        <cookieHandler requireSsl="true"/>
    </federationConfiguration>
</system.identityModel.services>

<system.identityModel>
    <identityConfiguration>
      <securityTokenHandlers>
        <securityTokenHandlerConfiguration>
          <audienceUris mode="Never" />
        </securityTokenHandlerConfiguration>
      </securityTokenHandlers>
    </identityConfiguration>
</system.identityModel>

ERRO

Saml Customersaml Microsoft.IdentityServer.Service.Policy.PolicyServer.Engine.AssertionConsumerServiceUrlDoesNotMatchPolicyException: MSIS3200: Nenhum AssertionConsumerService está configurado na confiança da terceira parte confiável 'microsoft:identityserver:Customersaml' que é uma correspondência de prefixo da URL AssertionConsumerService 'http://Customer.domain.com/AuthServices/Acs'especificado pela solicitação. em Microsoft.IdentityServer.Service.SamlProtocol.EndpointResolver.LookupAssertionConsumerServiceByUrl (Collection`1 assertionConsumerServices, Uri requestAssertionConsumerServiceUrl, String scopeIdentity) em Microsoft.IdentityServer.Service.SamlProtocol.EndpointResolver.FindSamlResponseEndpointForAuthenticationRequest (boolean artefatoEnabled, Solicitação AuthenticationRequest, ScopeDescription scopeDescription) em Microsoft.IdentityServer .Web.Protocols.Saml.SamlProtocolManager.GetResponseEndpointFromRequest (solicitação SamlRequest, Boolean isUrlTranslationNeeded, escopo ScopeDescription) em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue (HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String sessionSt comeu, String relayState, String& newSamlSession, String e samlpAuthenticationProvider, Boolean isUrlTranslationNeeded, contexto WrappedHttpListenerContext, Boolean isKmsiRequested) em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken (contexto WrappedHttpListenerContext, HttpSamlRequestMessage httpSamlRequest, SecurityTokenElement onBehal fOf, String confiandoPartyIdentifier, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired, String& samlpSessionState, String& samlpAuthenticationProvider ). em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSecurityToken(SamlSignInContext context, SecurityToken securityToken, SecurityToken deviceSecurityToken) em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(ProtocolContext context) em Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext protocolContext, PassiveProtocolHandler protocolHandler) em Microsoft.IdentityServer.Web. PassiveProtocolListener.OnGetContext (contexto WrappedHttpListenerContext)

Responder1

Verifique a confiança da parte confiável no AD FS e observe os pontos de extremidade. Tem um ponto final para o caminho 'http://Customer.domain.com/AuthServices/Acs'?

informação relacionada