跳转到主要内容

一个完全功能的OAUTH2 / OpenID Connect (OIDC)服务器,可在测试套件中使用

项目描述

pytest-iam

pytest-iam 在线程中启动一个轻量级的 OAuth2 / OpenID 服务器 (OIDC),用于测试套件。该机制涉及 CanailleAuthlib

安装

pip install pytest-iam

使用

pytest-iam 提供工具来测试您的应用程序认证机制对 OAuth2/OIDC 服务器的兼容性

  • 它启动了一个 Canaille 实例
  • 它提供了一个具有多个功能的 iam_server 固定装置
    • 配置您的应用程序的 IAM 服务器 URL
    • IAM 模型(用户、组、客户端、令牌等)以准备您的测试并检查副作用。更多详细信息请参阅 参考
    • 登录用户并允许他们同意您的应用程序的实用工具
    • 生成随机用户和组的实用工具

要在测试中运行客户端应用程序的完整认证过程,您可以编写如下内容

def test_authentication(iam_server, testapp, client):
    # create a random user on the IAM server
    user = iam_server.random_user()

    # logs the user in give its consent to your application
    iam_server.login(user)
    iam_server.consent(user)

    # simulate an attempt to access a protected page of your app
    response = testapp.get("/protected", status=302)

    # get an authorization code request at the IAM
    res = requests.get(res.location, allow_redirects=False)

    # access to the redirection URI
    res = testclient.get(res.headers["Location"])
    res.mustcontain("Hello World!")

查看 客户端应用程序资源服务器 教程以获取更多用例。

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

pytest_iam-0.1.0.tar.gz (5.0 kB 查看哈希)

上传时间 源代码

构建分发

pytest_iam-0.1.0-py3-none-any.whl (5.3 kB 查看哈希)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面