diff options
Diffstat (limited to 'asgard/settings.d/20-saml.conf')
-rw-r--r-- | asgard/settings.d/20-saml.conf | 70 |
1 files changed, 68 insertions, 2 deletions
diff --git a/asgard/settings.d/20-saml.conf b/asgard/settings.d/20-saml.conf index 302ca5a..6dceaf8 100644 --- a/asgard/settings.d/20-saml.conf +++ b/asgard/settings.d/20-saml.conf @@ -1,5 +1,71 @@ +from django.conf import settings +from coip.utils import get_full_request + METADATA = 'http://md.swamid.se/md/swamid-1.0.xml' AUTH_PROFILE_MODULE = 'userprofile.UserProfile' -SAML_KEY = "/etc/ssl/private/ssl-cert-snakeoil.key" -SAML_CERT = "/etc/ssl/certs/ssl-cert-snakeoil.pem"
\ No newline at end of file +#SAML_KEY = "/etc/ssl/private/ssl-cert-snakeoil.key" +#SAML_CERT = "/etc/ssl/certs/ssl-cert-snakeoil.pem" + +LOGIN_URL = '/saml2/login/' +SESSION_EXPIRE_AT_BROWSER_CLOSE = True + +def asgard_sp_config(request): + return { + # your entity id, usually your subdomain plus the url to the metadata view + 'entityid': 'https://coip.app.nordu.net/saml2/metadata', + # directory with attribute mapping + "attribute_map_dir" : "%s/saml2/attributemaps" % settings.BASE_DIR, + # this block states what services we provide + 'service': { + # we are just a lonely SP + 'sp' : { + 'name': 'COIP', + 'endpoints': { + # url and binding to the assertion consumer service view + # do not change the binding osettingsr service name + 'assertion_consumer_service': [ + ('https://coip.app.nordu.net/saml2/acs/', + saml2.BINDING_HTTP_POST), + ], + # url and binding to the single logout service view + # do not change the binding or service name + 'single_logout_service': [ + ('https://coip.app.nordu.net/saml2/ls/', + saml2.BINDING_HTTP_REDIRECT), + ], + }, + # attributes that this project need to identify a user + 'required_attributes': ['eduPersonPrincipalName','displayName'], + # attributes that may be useful to have but not required + 'optional_attributes': ['eduPersonAffiliation'], + } + }, + + # where the remote metadata is stored + 'metadata': { 'local': ['/tmp/swamid-idp.xml'] }, + + # set to 1 to output debugging information + 'debug': 1, + + # certificate + "key_file" : "%s/%s.key" % (settings.SSL_KEY_DIR,host), + "cert_file" : "%s/%s.crt" % (settings.SSL_CRT_DIR,host), + # own metadata settings + 'contact_person': [ + {'given_name': 'Leif', + 'sur_name': 'Johansson', + 'company': 'NORDUnet', + 'email_address': 'leifj@nordu.net', + 'contact_type': 'technical'}, + ], + # you can set multilanguage information here + 'organization': { + 'name': [('NORDUNet', 'en')], + 'display_name': [('NORDUnet A/S', 'en')], + 'url': [('http://www.nordu.net', 'en')], + }, + 'valid_for': 24, # how long is our metadata valid +} + +SAML_CONFIG_GENERATOR = asgard_sp_config
\ No newline at end of file |