Package com.ngrok.definitions
Class EndpointSaml
java.lang.Object
com.ngrok.definitions.EndpointSaml
A class encapsulating the
EndpointSaml
resource.-
Constructor Summary
ConstructorDescriptionEndpointSaml
(Optional<Boolean> enabled, Boolean optionsPassthrough, String cookiePrefix, Long inactivityTimeout, Duration maximumDuration, String idpMetadata, Boolean forceAuthn, Optional<Boolean> allowIdpInitiated, List<String> authorizedGroups, String entityId, URI assertionConsumerServiceUrl, URI singleLogoutUrl, String requestSigningCertificatePem, URI metadataUrl, String nameidFormat) Creates a new instance ofEndpointSaml
. -
Method Summary
Modifier and TypeMethodDescriptionboolean
If true, the IdP may initiate a login directly (e.g.The public URL of the SP's Assertion Consumer Service.If present, only users who are a member of one of the listed groups may access the target endpoint.the prefix of the session cookie that ngrok sets on the http client to cache authentication.true
if the module will be applied to traffic,false
to disable.The SP Entity's unique ID.boolean
If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP.The full XML IdP EntityDescriptor.long
Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate.Integer number of seconds of the maximum duration of an authenticated session.A public URL where the SP's metadata is hosted.Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects.boolean
Do not enforce authentication on HTTP OPTIONS requests.PEM-encoded x.509 certificate of the key pair that is used to sign all SAML requests that the ngrok SP makes to the IdP.The public URL of the SP's Single Logout Service.int
hashCode()
toString()
-
Constructor Details
-
EndpointSaml
public EndpointSaml(Optional<Boolean> enabled, Boolean optionsPassthrough, String cookiePrefix, Long inactivityTimeout, Duration maximumDuration, String idpMetadata, Boolean forceAuthn, Optional<Boolean> allowIdpInitiated, List<String> authorizedGroups, String entityId, URI assertionConsumerServiceUrl, URI singleLogoutUrl, String requestSigningCertificatePem, URI metadataUrl, String nameidFormat) Creates a new instance ofEndpointSaml
.- Parameters:
enabled
-true
if the module will be applied to traffic,false
to disable. defaulttrue
if unspecifiedoptionsPassthrough
- Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS.cookiePrefix
- the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.'inactivityTimeout
- Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate.maximumDuration
- Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate.idpMetadata
- The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL.forceAuthn
- If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP.allowIdpInitiated
- If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set theRelayState
parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed.authorizedGroups
- If present, only users who are a member of one of the listed groups may access the target endpoint.entityId
- The SP Entity's unique ID. This always takes the form of a URL. In ngrok's implementation, this URL is the same as the metadata URL. This will need to be specified to the IdP as configuration.assertionConsumerServiceUrl
- The public URL of the SP's Assertion Consumer Service. This is where the IdP will redirect to during an authentication flow. This will need to be specified to the IdP as configuration.singleLogoutUrl
- The public URL of the SP's Single Logout Service. This is where the IdP will redirect to during a single logout flow. This will optionally need to be specified to the IdP as configuration.requestSigningCertificatePem
- PEM-encoded x.509 certificate of the key pair that is used to sign all SAML requests that the ngrok SP makes to the IdP. Many IdPs do not support request signing verification, but we highly recommend specifying this in the IdP's configuration if it is supported.metadataUrl
- A public URL where the SP's metadata is hosted. If an IdP supports dynamic configuration, this is the URL it can use to retrieve the SP metadata.nameidFormat
- Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value ofurn:oasis:names:tc:SAML:2.0:nameid-format:persistent
will be used. A subset of the allowed values enumerated by the SAML specification are supported.
-
-
Method Details
-
getEnabled
true
if the module will be applied to traffic,false
to disable. defaulttrue
if unspecified- Returns:
- the value of the property as a
boolean
wrapped in anOptional
-
getOptionsPassthrough
public boolean getOptionsPassthrough()Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS.- Returns:
- the value of the property as a
boolean
-
getCookiePrefix
the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.'- Returns:
- the value of the property as a
String
-
getInactivityTimeout
public long getInactivityTimeout()Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate.- Returns:
- the value of the property as a
long
-
getMaximumDuration
Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate.- Returns:
- the value of the property as a
Duration
-
getIdpMetadata
The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL.- Returns:
- the value of the property as a
String
-
getForceAuthn
public boolean getForceAuthn()If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP.- Returns:
- the value of the property as a
boolean
-
getAllowIdpInitiated
If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set theRelayState
parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed.- Returns:
- the value of the property as a
boolean
wrapped in anOptional
-
getAuthorizedGroups
If present, only users who are a member of one of the listed groups may access the target endpoint. -
getEntityId
The SP Entity's unique ID. This always takes the form of a URL. In ngrok's implementation, this URL is the same as the metadata URL. This will need to be specified to the IdP as configuration.- Returns:
- the value of the property as a
String
-
getAssertionConsumerServiceUrl
The public URL of the SP's Assertion Consumer Service. This is where the IdP will redirect to during an authentication flow. This will need to be specified to the IdP as configuration.- Returns:
- the value of the property as a
URI
-
getSingleLogoutUrl
The public URL of the SP's Single Logout Service. This is where the IdP will redirect to during a single logout flow. This will optionally need to be specified to the IdP as configuration.- Returns:
- the value of the property as a
URI
-
getRequestSigningCertificatePem
PEM-encoded x.509 certificate of the key pair that is used to sign all SAML requests that the ngrok SP makes to the IdP. Many IdPs do not support request signing verification, but we highly recommend specifying this in the IdP's configuration if it is supported.- Returns:
- the value of the property as a
String
-
getMetadataUrl
A public URL where the SP's metadata is hosted. If an IdP supports dynamic configuration, this is the URL it can use to retrieve the SP metadata.- Returns:
- the value of the property as a
URI
-
getNameidFormat
Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value ofurn:oasis:names:tc:SAML:2.0:nameid-format:persistent
will be used. A subset of the allowed values enumerated by the SAML specification are supported.- Returns:
- the value of the property as a
String
-
equals
-
hashCode
public int hashCode() -
toString
-