当前位置: 首页 > 知识库问答 >
问题:

Spring saml将请求重定向到http

伊温书
2023-03-14

我将spring saml扩展与Apache2.2+Tomcat7.0+OKTA(IdP)一起使用。securitycontext.xml如下所示:

MetadataGeneratorFilter:

<bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
    <constructor-arg>
        <bean class="org.springframework.security.saml.metadata.MetadataGenerator">
            <property name="entityBaseURL" value="https://myapp.com/api"/>
        </bean>
    </constructor-arg>
</bean>
<bean id="contextProvider" class="org.springframework.security.saml.context.SAMLContextProviderLB">
    <property name="scheme" value="https"/>
    <property name="serverName" value="myapp.com"/>
    <property name="serverPort" value="443"/>
    <property name="includeServerPortInRequestURL" value="false"/>
    <property name="contextPath" value="/api"/>
    <property name="storageFactory">
        <bean class="org.springframework.security.saml.storage.EmptyStorageFactory"/>
    </property>
</bean>
https://myapp.com/api/welcome.html
 http://myapp.com/api/welcome.html

谢谢

奈良

HTTP请求转储:


    Single Sign On URL => https://myapp.com/api/saml/SSO
    Recipient URL => https://myapp.com/api/saml/SSO
    Destination URL => https://myapp.com/api/saml/SSO
    Audience Restriction => https://myapp.com/api/saml/metadata
    Default Relay State => https://myapp.com/dashboard.html
    Name ID Format => Unspecified
    Response => Signed
    Assertion Signature => Signed
    Signature Algorithm => RSA_SHA256
    Digest Algorithm => SHA256
    Assertion Encryption => Unencrypted
    SAML Single Logout => Disabled
    authnContextClassRef => PasswordProtectedTransport
    Request Compression => Uncompressed
    Honor Force Authentication => Yes
    SAML Issuer ID => http://www.okta.com/${org.externalKey}

https://docs.google.com/document/d/16iDLcBuwvQ23-mKMFybPfxdIyvqCBi5sbYePgUjl0p4/edit?usp=sharing

共有1个答案

朱修真
2023-03-14

我仍然不知道真正的原因,您的配置看起来还可以,但是请尝试用以下代码替换当前的SuccessRedirectHandler(当然要用您自己的URL替换),看看问题是否会消失:

<bean id="successRedirectHandler" class="org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler">
    <property name="defaultTargetUrl" value="https://yourapp.com/welcome.jsp"/>
</bean>
 类似资料:
  • 我试图点击一个postendpoint,但它给出了错误302,当我在同一台服务器上尝试另一个get Url时,它给出了200。然后,我使用laxrirectstrategy()重定向了post请求。post请求正在重定向到get请求(只有同一个endpoint的方法名是get和post),它没有从post方法获得响应。有人能告诉我如何使用apahce httpClient 4.5将post请求重定

  • 我们的整个网站将通过https提供服务。我在每条路线上都有“https”。但是,如果他们试图通过http将其重定向到https,我该如何将其重定向到https?

  • 当我们使用AWS应用型负载均衡将传入请求重定向到我们的服务器时,我们创建了一个SSL证书并将其设置为负载均衡器。它同时监听HTTP 80和HTTPS 443端口的流量。在这两种情况下,流量都被重定向到目标组实例的HTTP 80端口。 在这些情况下,有nginx服务器配置为侦听它们所在的实例的HTTP 80端口。 当我更新nginx.conf文件以将传入的HTTP请求重定向到HTTPS协议时,我们面

  • 问题内容: 这是我的standalone-full.xml配置,其中ssl配置了 security realm . Subsystem Socket Binding 问题答案: 重写规则可用于重定向用户。在undertow子系统(standalone.xml或domain.xml)中,你需要创建一个新的重写过滤器,然后在新的fitler-ref中启用该过滤器: 在过滤器部分中创建新的重写过滤器。在

  • 我正在尝试使用重定向规则设置静态web托管。在我的应用程序中,任何具有前缀api/(http://web.company.com/api)的请求都应该重定向到具有相同前缀(http://api.company.com/api)的另一个主机。我已按以下方式设置路由规则: 但请求没有被正确重定向。控制台中有两个不同的错误: XMLHttpRequest无法加载http://api.company.co

  • 问题内容: 我正在尝试通过springboot Web应用程序提供Angular2应用程序。我已经找到了许多非常简单的方法示例: https://spring.io/blog/2015/01/12/spring-and-angular-js-a-secure-single-page- application#using-spring-boot-cli https://github.com/zoua