一个完全功能的OAUTH2 / OpenID Connect (OIDC)服务器,可在测试套件中使用
项目描述
pytest-iam
pytest-iam 在线程中启动一个轻量级的 OAuth2 / OpenID 服务器 (OIDC),用于测试套件。该机制涉及 Canaille 和 Authlib。
安装
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 查看哈希)
关闭
pytest_iam-0.1.0.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3be9e5f370e505fa19f54d0786085d03d0cf9b5e99d5579862eea26e9321785f |
|
MD5 | 09c501964f29ddf10b72c57d85177324 |
|
BLAKE2b-256 | 3332012e5c88f6812ab439ffa131304ecaf1bf1d844eb8da23e447335bff9527 |
关闭
pytest_iam-0.1.0-py3-none-any.whl 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fca152edca2d93b53028860eec3c8167341d0c0a4416a7e0413e2b72f6ea6cd2 |
|
MD5 | eb54ef9526e3db95c18191b3e97be877 |
|
BLAKE2b-256 | a55e2d5811eaf81ee1e1ae7d3a368989a3e823e29944d9ca17a0122b1182eed4 |