Open mecampbellsoup opened 9 months ago
The toolkit contains idp_metadata_parser.py which basically allow you to get and parse any IdP SAML Metadata and transform it to a dict.
If you already have the Toolkit settings in a dict and you only want to validate, initializing the Settings object with your dict will do the trick as it internally call check_settings to validate the settings and if anything is wrong, will raise a OneLogin_Saml2_Error
So your code should look like the following:
try:
OneLogin_Saml2_Settings(_settings)
except OneLogin_Saml2_Error as e:
print e.code
print e.message
return None
return _settings
We use django-allauth and are implementing support for customers/users bringing their own SAML IdP configurations.
We use
OneLogin_Saml2_Settings
in order to validate the SAML configurations they give to us.However, I'm not seeing a clear and obvious way to have the
OneLogin_Saml2_Settings
object returned byOneLogin_Saml2_Settings(settings_input_from_customer)
to give me back a serialized JSON ordict
object that I can write to our DB to persist the configuration.I'd imagine an API like
OneLogin_Saml2_Settings._settings
or something public-facing likeOneLogin_Saml2_Settings.get_settings()
that I can call on a valid instance to get back a mapping of the settings.Am I missing something obvious?
As a result of not seeing an API for this, my code is doing something clunky like: