【问题标题】:Python flask saml throwing saml2.sigver.SigverError Error MessagePython烧瓶saml抛出saml2.sigver.SigverError错误消息
【发布时间】:2019-03-04 08:39:38
【问题描述】:

有没有人使用 Windows 作为开发环境、Python 3.6 和 Flask 1.0.2 成功实现了 flask-saml?

我们的组织为我提供了指向 SAML METADATA XML 文件的链接,并在我的烧瓶应用程序上进行了配置。

app.config.update({
    'SECRET_KEY': 'changethiskeylaterthisisoursecretkey',
    'SAML_METADATA_URL': 'https://<url>/FederationMetadata.xml',
})

flask_saml.FlaskSAML(app)

根据documentation,此扩展将设置以下路由:

  • /saml/logout/: 从应用程序中注销。这是用户去的地方 如果他们单击“注销”按钮。

  • /saml/sso/:通过 SAML 登录。

  • /saml/acs/: 在 /saml/sso/ 将您发送到您的 IdP 后,它会将您发送 回到这条路。此外,您的 IdP 可能会提供直接登录,而无需 需要 /saml/sso/ 路线。

当我转到http://localhost:5000/saml/sso/ 的其中一条路线时,我收到以下错误

saml2.sigver.SigverError saml2.sigver.SigverError: 找不到 ['xmlsec.exe', 'xmlsec1.exe']

然后我去了这个网站https://github.com/mehcode/python-xmlsec/releases/tag/1.3.5 获取 xmlsec 并安装它。但是,我仍然遇到同样的问题。

这是我如何安装 xmlsec 的屏幕截图

哪里好像没有找到xmlsec.exe

【问题讨论】:

  • 您确定所需的可执行文件在您的PATH 中吗?
  • 我刚开始阅读这个aleksey.com/xmlsec/download.html,但不确定我是否朝着正确的方向前进。另外,我还不确定可执行文件应该在哪里。
  • PATH 中的任何位置,在 Windows 中,您可以通过在命令提示符中键入 where xmlsec 来检查它们是否存在
  • 似乎没有找到 xmlsec。我现在正试图弄清楚从哪里获取这些可执行文件以及如何在我的环境中配置它们。
  • 可执行文件在这里zlatkovic.com/pub/libxml

标签: python python-3.x flask saml xmlsec


【解决方案1】:

documentation要求预装xmlsec1。你安装的是一个 python 绑定到xmlsec1

here 获取xmlsec1 的Windows 构建或从source 构建它 并在PATH 中提供。

【讨论】:

    【解决方案2】:

    xmlsec在windows下无法正常工作,最好使用Linux环境

    在给pip install xmlsec之前输入下面的command

    sudo apt-get install xmlsec1
    

    【讨论】:

    • 很高兴听到@AjayKumar。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多