"SignatureError:验证签名失败&okta,pySAML2

quot;SignatureError: Failed to verify signaturequot; - Okta, pySAML2(quot;SignatureError:验证签名失败okta,pySAML2)
本文介绍了"SignatureError:验证签名失败&okta,pySAML2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

三天来,我一直在绞尽脑汁,试图把我的头围绕在Okta&;SAML上。

在我的本地计算机(OSX Mavericks)上,我能够成功地执行下面列出的步骤:http://developer.okta.com/docs/guides/pysaml2

一切正常。 但是将所有东西移到我们的生产服务器上,这是一个CentOS机器,运行几乎相同的代码,我面临着这个"SignatureError:Failure to Verify Signature"错误。

回溯(最近一次调用): AUTH_RESPONSE=saml_client.parse_authn_request_response(SAMLResponse,实体.BINDING_HTTP_POST) 文件"/usr/local/lib/python2.7.11/lib/python2.7/site-packages/saml2/client_base.py",第599行,在解析身份验证请求响应绑定中,**kwargs) Response=Response.Loads(xmlstr,FALSE,Origxml=Origxml) 文件数据行510,在装入sel._"/usr/local/lib/python2.7.11/lib/python2.7/site-packages/saml2/response.py",(xmldata,decode,Origxml)

文件加载第335行,in_"/usr/local/lib/python2.7.11/lib/python2.7/site-packages/saml2/response.py",**参数) 在"/usr/local/lib/python2.7.11/lib/python2.7/site-packages/saml2/sigver.py",_Signed_Response中正确签名第1756行 CLASS_NAME(响应),原始文档)

文件"/usr/local/lib/python2.7.11/lib/python2.7/site-packages/saml2/sigver.py",第1571行,In_Check_Signature 引发SignatureError("验证签名失败") SignatureError:验证签名失败

我已在互联网上搜索,以寻找解决此错误的方法。我是SAML和Okta的新手。

我的假设是,这与xmlsec1在我们的生产机器上的行为方式不同有关。但这两个版本是相同的。有很多依赖项,所以我不确定问题可能出在哪里。

有人遇到过这个错误吗?有什么想法可以让我尝试一下吗?

推荐答案

我知道这有点晚了,但以防其他人遇到这种情况:

pysaml2使用其内置的日志记录提供了大量日志记录,我为saml2.sigver定义了一个处理程序,提供了很多信息。在这些日志中,我发现了以下内容:

Error: unable to load xmlsec-openssl library. Make sure that you have
this it installed, check shared libraries path (LD_LIBRARY_PATH)
envornment variable or use "--crypto" option to specify different
crypto engine.
结果是我需要安装xmlsec1-openssl。 希望这对未来的某个人有所帮助。

这篇关于"SignatureError:验证签名失败&okta,pySAML2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)