请帮助我使用 djangosml2 库(djangosml2==0.14.5)为 OneLogin IdP 进行 saml 配置。
一旦我成功登录后回到我的应用程序,它就无法解析 xml 响应。
我收到错误“SAML 响应有错误。请检查日志”
这是我的配置: -
SAML_CONFIG = {
'xmlsec_binary': '/usr/bin/xmlsec1',
'entityid': 'http://localhost:8006/saml2/metadata/',
'service': {
'sp' : {
'name': 'Federated Django sample SP',
'allow_unsolicited': True,
'endpoints': {
'assertion_consumer_service': [
('http://localhost:8006/saml2/acs/',
saml2.BINDING_HTTP_POST),
],
'single_logout_service': [
('http://localhost:8006/saml2/ls/',
saml2.BINDING_HTTP_REDIRECT),
('http://localhost:8006/saml2/ls/post',
saml2.BINDING_HTTP_POST),
],
},
'required_attributes': ['uid'],
'optional_attributes': ['eduPersonAffiliation'],
'idp': {
'https://app.onelogin.com/saml/metadata/595757': {
'single_sign_on_service': {
saml2.BINDING_HTTP_REDIRECT: 'https://isystango16.onelogin.com/trust/saml2/http-post/sso/595757',
},
'single_logout_service': {
saml2.BINDING_HTTP_REDIRECT: 'https://isystango16.onelogin.com/trust/saml2/http-redirect/slo/595757',
},
},
},
},
},
'metadata': {
'local': [os.path.join(BASE_DIR, 'new_onelogin_metadata.xml')],
},
'debug': 1,
'cert_file': os.path.join(BASE_DIR, 'new_onelogin .pem'),
'contact_person': [
{'given_name': 'Lorenzo',
'sur_name': 'Gil',
'company': 'Yaco Sistemas',
'email_address': 'lgs@yaco.es',
'contact_type': 'technical'},
{'given_name': 'Angel',
'sur_name': 'Fernandez',
'company': 'Yaco Sistemas',
'email_address': 'angel@yaco.es',
'contact_type': 'administrative'},
],
'organization': {
'name': [('Yaco Sistemas', 'es'), ('Yaco Systems', 'en')],
'display_name': [('Yaco', 'es'), ('Yaco', 'en')],
'url': [('http://www.yaco.es', 'es'), ('http://www.yaco.com', 'en')],
},
'valid_for': 24,
}