summaryrefslogtreecommitdiffstats
path: root/ipsilon/providers/saml2/provider.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipsilon/providers/saml2/provider.py')
-rw-r--r--ipsilon/providers/saml2/provider.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/ipsilon/providers/saml2/provider.py b/ipsilon/providers/saml2/provider.py
index c02d6fb..7e1c6c0 100644
--- a/ipsilon/providers/saml2/provider.py
+++ b/ipsilon/providers/saml2/provider.py
@@ -18,6 +18,7 @@
from ipsilon.providers.common import ProviderException
from ipsilon.tools.saml2metadata import SAML2_NAMEID_MAP
from ipsilon.util.log import Log
+import json
import lasso
@@ -100,6 +101,19 @@ class ServiceProvider(Log):
def default_nameid(self, value):
self._staging['default nameid'] = value
+ # NGK(TODO) - the default needs to be the global policy, then override here.
+ # This hard-coded mapping will need to be removed at that time.
+ @property
+ def attribute_mappings(self):
+ if 'attribute mappings' in self._properties:
+ return json.loads(self._properties['attribute mappings'])
+ else:
+ return [['*', '*'],]
+
+ @attribute_mappings.setter
+ def attribute_mappings(self, value):
+ self._staging['attribute mappings'] = json.dumps(value)
+
def save_properties(self):
data = self.cfg.get_data(name='id', value=self.provider_id)
if len(data) != 1: