Skip to content

[SAML] timeout behind http proxy #48

@bartleboeuf

Description

@bartleboeuf

Hi,

Would it be possible to implement the management of the http proxy on SAML calls, because we are running into a timeout on authentication with our AzureAD. Thank you.

Here the part of the logs

2021-02-04 09:51:05.250 DEBUG 1 --- [           main] o.s.s.saml.metadata.MetadataManager      : Created new trust manager for metadata provider org.opensaml.saml2.metadata.provider.HTTPMetadataProvider@397ef2
2021-02-04 09:51:05.250 DEBUG 1 --- [           main] o.s.s.saml.metadata.MetadataManager      : Adding signature filter
2021-02-04 09:51:05.250 DEBUG 1 --- [           main] o.s.s.saml.metadata.MetadataManager      : Initializing extendedMetadataDelegate org.opensaml.saml2.metadata.provider.HTTPMetadataProvider@397ef2
2021-02-04 09:51:05.250 DEBUG 1 --- [           main] o.s.s.s.m.ExtendedMetadataDelegate       : Initializing delegate
2021-02-04 09:51:05.287 DEBUG 1 --- [           main] .s.m.p.AbstractReloadingMetadataProvider : Beginning refresh of metadata from 'https://login.microsoftonline.com/aca3c8d6-aa71-4e1a-a10e-xxxxxxxxx/FederationMetadata/2007-06/FederationMetadata.xml'
2021-02-04 09:51:05.304 DEBUG 1 --- [           main] o.o.s.m.provider.HTTPMetadataProvider    : Attempting to fetch metadata document from 'https://login.microsoftonline.com/aca3c8d6-aa71-4e1a-a10e-xxxxxxxxx/FederationMetadata/2007-06/FederationMetadata.xml'
2021-02-04 09:51:05.310 DEBUG 1 --- [           main] o.a.commons.httpclient.HttpConnection    : Open connection to login.microsoftonline.com:443
...
2021-02-04 09:53:16.106 DEBUG 1 --- [           main] o.a.c.httpclient.HttpMethodDirector      : Closing the connection.
2021-02-04 09:53:16.106  INFO 1 --- [           main] o.a.c.httpclient.HttpMethodDirector      : I/O exception (java.net.ConnectException) caught when processing request: Connection timed out (Connection timed out)
2021-02-04 09:53:16.112 DEBUG 1 --- [           main] o.a.c.httpclient.HttpMethodDirector      : Connection timed out (Connection timed out)
java.net.ConnectException: Connection timed out (Connection timed out)
        at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:na]
        at java.base/java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) ~[na:na]
        at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) ~[na:na]
        at java.base/java.net.AbstractPlainSocketImpl.connect(Unknown Source) ~[na:na]
        at java.base/java.net.SocksSocketImpl.connect(Unknown Source) ~[na:na]
        at java.base/java.net.Socket.connect(Unknown Source) ~[na:na]
        at java.base/sun.security.ssl.SSLSocketImpl.connect(Unknown Source) ~[na:na]
        at java.base/sun.security.ssl.SSLSocketImpl.<init>(Unknown Source) ~[na:na]
        at java.base/sun.security.ssl.SSLSocketFactoryImpl.createSocket(Unknown Source) ~[na:na]
        at org.opensaml.ws.soap.client.http.TLSProtocolSocketFactory.createSocket(TLSProtocolSocketFactory.java:185) ~[openws-1.5.6.jar!/:na]
        at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) ~[commons-httpclient-3.1.jar!/:na]
        at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) ~[commons-httpclient-3.1.jar!/:na]
        at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) ~[commons-httpclient-3.1.jar!/:na]
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) ~[commons-httpclient-3.1.jar!/:na]
        at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) ~[commons-httpclient-3.1.jar!/:na]
        at org.opensaml.saml2.metadata.provider.HTTPMetadataProvider.fetchMetadata(HTTPMetadataProvider.java:250) ~[opensaml-2.6.6.jar!/:na]
        at org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:258) ~[opensaml-2.6.6.jar!/:na]
        at org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.doInitialization(AbstractReloadingMetadataProvider.java:239) ~[opensaml-2.6.6.jar!/:na]
        at org.opensaml.saml2.metadata.provider.AbstractMetadataProvider.initialize(AbstractMetadataProvider.java:407) ~[opensaml-2.6.6.jar!/:na]
        at org.springframework.security.saml.metadata.ExtendedMetadataDelegate.initialize(ExtendedMetadataDelegate.java:167) ~[spring-security-saml2-core-1.0.10.RELEASE.jar!/:1.0.10.RELEASE]

Note : we found this on spring security doc but no way apply it (https://docs.spring.io/spring-security-saml/docs/current/reference/html/configuration-advanced.html#artifact-resolution)

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions