SAMLModule
Required when operating under SAML context as SP or IDP.
Last updated
Required when operating under SAML context as SP or IDP.
Last updated
Responsible for
loading, maintaining & generating metadata.
generating outbound SAML messages (assertions, authentication & logout requests )
consuming and validating incoming SAML requests.
When deployed the module opens http port 8080 to enable saml meta data generation.
Module name: SAML
Name | Description | Default value | Mandatory |
---|---|---|---|
Metadata to be consumed by remote party is generated based of a template file. It is referenced using the parameter "config.metadata_template.metadata_file_path". Administration of this file is handled outside the system and must include the necessary information such as entity id, binding location etc.
Signing of meta data, injecting certificates used and adding of SLO url is handled by the module.
A single object used for signing the meta data
Configuration, array, for key pairs used to sign SAML messages. Multiple key stores is supported. Each entity is placed in the sign_ref
array. Key store must be in PKCS#12 format.
Same as sign ref, sign_ref
, but for encryption.
See sign ref properties.
Setting up trust with an external party is done by consuming it's meta data. This can be done by either a file or using an url.
In order to get metadata generated by the system point your browser to:
http://<host>:<port_if_any>/saml/metadata/<config.metaDataTemplate.id>
Integrity can use a HSM to sign messages. It is done through JAVA PKCS#11 standard interface.
Configuration elements are to be located at same level as "keystore" property.
File for SAML IDP metadata template can be downloaded here:
Failing to get meta data for the first time will result in retries every 20 seconds until meta data is loaded.
Meta data target is checked on set intervall (every 20 minutes by default) for information update. Meta data is reloaded based on valid until, if present. Otherwise every four hours.
XML meta data template has some understanding of "expansion". It knows the concept of globals. By using globals it will allow for conffiguration like "<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" entityID="${globals.idp1.idp_entityid}"".
Note that only globals is supported.
Name | Description | Default value | Mandatory |
---|---|---|---|
Name | Description | Default value | Mandatory |
---|---|---|---|
Name | Description | Default value | Mandatory |
---|---|---|---|
Name | Description | Default value | Mandatory |
---|---|---|---|
Name | Description | Defalut value | Mandatory |
---|---|---|---|
metadata_cache
Optional location to where remote metadata loaded, using HTTP, should be cached. The target directory folder must exist.
<server_root>
enable_http
Should metadata be available using HTTP.
true
internal_http_destination
Id of the internal HTTP module to handle HTTP-based metadata loading.
default
ignore_signature_validation
Disabled signature validation on incoming AuthnRequest & LogoutOutRequest.
false
reload_meta_intervall_millis
How often in milliseconds a reload should occur.
300000
reload_meta_start_delay_millis
How long after startup reloading of metadata should start reloading.
20000
id
Id to be used in URL when getting meta data. Id is used to reference the meta data.
N/A
Location of the template used.
N/A
Object for signing the meta data when exposed to clients.
Location of the p12 key store
N/A
password of the key store
N/A
alias used to reference in the store.
N/A - Mandatory if multiple entries are located in the store.
Password to the private key.
N/A
Location of the p12 key store
N/A
password of the key store
N/A
alias used to reference in the store.
N/A - Mandatory if multiple entries are located in the store.
Password to the private key.
N/A
path
File path to the meta data
N/A
Either path or url.
url
HTTP url to the metadata.
N/A
Either path or url.
provider_path
File path to the HSM provider implementation file.
N/A
pin
HSM pin.
N/A
alias
Alias handle.
N/A
key_password
Private key password. Use same value as pin if missing.
N/A
certificate_pem_path
If present Integrity will read the certificate from file. Must be in PEM format. If missing, certificate is read from HSM.
N/A