【问题标题】:Python RESTful client with CAS authentication具有 CAS 身份验证的 Python RESTful 客户端
【发布时间】:2010-07-13 17:55:11
【问题描述】:

我正在尝试构建一个 python 库来与我们的 RESTful API 交互,但它使用 CAS 进行客户端身份验证,并且我无法找到任何好的现有库。到目前为止,我已经找到了以下链接,但我不确定它们是用于客户端还是由使用 CAS 本身的网站使用。有没有人对使用好的库以及构建与它交互的代码的好方法有任何建议?

https://wiki.jasig.org/download/attachments/28213515/pycas.py.txt

https://sp.princeton.edu/oit/sdp/CAS/Wiki%20Pages/Python.aspx

http://github.com/benoitc/restkit/

http://morethanseven.net/2009/02/18/python-rest-client.html

我也刚刚尝试过使用caslib,但不起作用:

>>> import caslib
>>> srv = caslib.CASServer('https://my.cas/auth')
>>> svc = caslib.CASService('https://my.service/foo')
>>> caslib.login_to_cas_service(srv.login(svc),'user@example.com','password')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "caslib/cas_dance.py", line 250, in login_to_cas_service
    raise CASLoginError('Could not parse the document at %s: %s' % (login_fh.url, errors))
caslib.cas_dance.CASLoginError: Could not parse the document at https://my.cas/auth/login?service=https%3A%2F%2Fmy.service%2Ffoo: undefined entity &copy;: line 97, column 26

嗯,上面的错误似乎在我们的标记中(或 caslib 使用的验证器。)

再次编辑:安装python的lxml库后故障排除。后备解析器也不能正常工作。

【问题讨论】:

    标签: python rest cas


    【解决方案1】:

    您可能需要推出自己的解决方案,或者通过修改 python REST 客户端以支持 CAS,或者从头开始构建一些东西(我建议在 httplib2 之上。)

    【讨论】:

    • 希望不会出现这种情况,但谢谢。我会继续调查的。
    【解决方案2】:

    11 年后,至少有两个 Python CAS 库,提供 Flask 示例:

    python-cas - 似乎更流行
    Flask-CAS -- Github repo 不见了

    我个人还没有这些工作,所以 YMMV。

    【讨论】:

      【解决方案3】:

      也许,官方python示例在:https://wiki.jasig.org/display/casum/restful+api

      【讨论】:

        猜你喜欢
        • 2015-07-09
        • 2017-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多