请帮我查看带有djangosml2库的OneLogin IdP的saml配置(djangosaml2 == 0.14.5)。
成功登录后,一旦我回到我的应用程序,就无法解析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,
}
答案 0 :(得分:0)
我过去也遇到过类似的问题。如果我没记错的话,消息“SAML响应有错误。请检查日志”并不意味着SP发现响应有问题,这意味着IDP告诉你出了问题。 IE由于某种原因,IDP不高兴并且让你知道。如果我的记忆告诉我实话,当SP和IDP无法就属性名称达成一致时,我有这个错误......也许? SP在name属性中添加了一个友好名称,用于它所请求的属性......或类似的东西。
无论如何,怀疑这可以帮助你,因为这是6个月前,但它可能会帮助将来的人。