summaryrefslogtreecommitdiff
path: root/asgard/settings.d/20-saml.conf
diff options
context:
space:
mode:
Diffstat (limited to 'asgard/settings.d/20-saml.conf')
-rw-r--r--asgard/settings.d/20-saml.conf70
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