支持多客户端配置的Auth0中间件
项目描述
这是一个支持多客户端配置的Auth0中间件。
它向 environ 映射中添加了4个键
wsgiauth0.jwt_claims:解码后的声明字典或如果发生任何错误则为 None。例如
{ 'iss': 'issuer', 'sub': 'auth0|user_id', 'aud': 'https://example.com, 'exp': 1234567890, 'iat': 1134567890, }
wsgiauth0.jwt_error:一个具有 code 和 description 键的映射或如果未发生错误则为 None,例如
{ 'code': 'invalid_header', 'description': 'Authorization header must be "Bearer token".', }
wsgiauth0.jwt_client:一个包含客户端信息的映射,如果从接收到的JSON Web Token中成功推断出任何信息
{ 'id': 'NieY4eekoo3aed2fe9ei', 'audience': 'https://example.com', 'secret': 'shei6eehuF2ui9OphahW', }
REMOTE_USER:来自 wsgiauth0.jwt_claims 的解码主题或如果发生任何错误则为 None。
用法
配置您的wsgi管道在paste deploy ini文件中
[filter:wsgiauth0] use = egg:wsgiauth0#middleware clients_config_file = %(here)s/auth0_clients_config.yml [pipeline:main] pipeline = wsgiauth0 myapp [app:myapp] use = egg:wsgiapp#main [server:main] use = egg:waitress#main host = 0.0.0.0 port = 6543
使用DynamoDB进行配置
它期望有一个指向Auth0客户端配置yaml文件的 clients_config_file 键。
以下是一个yaml配置文件的示例。
Client 1:
id: oZ0ahm4Thoh1Oghiqu4oe9qu
audience: oZ0ahm4Thoh1Oghiqu4oe9qu
secret:
value: noh4feibaighikeeD0inah9Rei3nei6yeenoa7uar2Dah2yaeKioph8Jux8ahte
type: base64_url_encoded
Client 2:
id: Aen1XobahDoh7queing3eaS0@clients
audience: https://example.com/
secret:
value: |
-----BEGIN CERTIFICATE REQUEST-----
MIIBZjCB0AIBADANMQswCQYDVQQGEwJDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAx2LwsUexPKQ/0GIHqugXZtIGZxSOovO754KWn3ZWBbDvm/wuh+QfmMj8
ZTxnxRymHjSNJ04nCMcqtzl3VDwapMkM433CnyZjoJjA/fRwLRjUepLAMbmoqkOG
k1BKNAyidyko7DBnkMayzJRfmnCwFy1hsuikh6oFSinU7MP3LBsCAwEAAaAaMBgG
CSqGSIb3DQEJBzELEwljaGFsbGVuZ2UwDQYJKoZIhvcNAQELBQADgYEAP819zy3q
1gh5z5FLeFanc3TpdlcGHCQxcTMC/x9iyMpbSd2XkKLrZ02Is1Y8Ox/XeT8zNjOg
/nulPg6YrIsywpKFR4orMvuUUMZ8uT8UVNj1pnatmXy9ikjdGtBXeU+EKkMZ4q6a
OrG8qyB4o/WETphyxfneazWt3jrLHkKBvXA=
-----END CERTIFICATE REQUEST-----
type: certiticate
使用DynamoDB进行配置
DynamoDB可以用作配置源。配置表应为每个用于身份验证的键提供一个项。
使用 clients_config_table 键指定表名,并使用 clients_config_service 指定服务名。
表应在 service 字段上有一个哈希键,在 label 字段上有一个排序键(键的友好描述)。其他字段是 id、audience 和 secret,具有 type 和 value 子键。
您需要要求 dynamodb 扩展依赖项(即 wsgiauth0[dynamodb])。
项目详情
关闭
wsgiauth0-0.0.19.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d2a46b1cd3d2fa249d8832cf27289b9d0ac7b6a341dd4d2e13a5a1b0cca964e4 |
|
MD5 | dad1456fe7267acf9269d7c71b1a884d |
|
BLAKE2b-256 | d094250bc198c7e31e9b63b214455b472384328c07a2a70f9c685bb7b6f52f58 |