金字塔的google云身份感知代理认证策略

pyramid_iap的Python项目详细描述


一个够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够够与谷歌云的“身份感知代理”兼容的金字塔<;https://cloud.google.com/iap/>;`.



配置
==


配置识别代理后,从其设置中获取*签名头jwt audience*(有关“使用签名头保护应用程序安全”的详细说明,请参阅https://cloud.google.com/iap/docs/signed headers howto>;`.)

在金字塔应用程序中启用JWT支持:

…代码块::python

from pyramid.config import configurator
from pyramid.authorization import aclauthorizationpolicy


def main():
config=configurator()
pyramid需要激活授权策略。
配置设置“授权”策略(aclAuthorizationPolicy())
“身份感知代理的签名头jwt访问群体”。
访问群体=“/projects/123/global/backendservices/456”
“启用jwt身份验证”。
配置包含(“金字塔”iap')
配置添加jwt声明(访问群体)
config.set_authentication_policy(jwtclaimrauthenticationpolicy())


默认情况下,用户id是jwt令牌的“子”声明(例如“accounts.google.com:123456”),以使用“email”声明(例如“test@example.com”)指定:

。代码块::python

config.set_authentication_policy(jwtclaim authenticationpolicy(userid_claim=“email”))




settings
==


有许多标志指定如何验证令牌。
您可以在.ini文件中设置,或者直接将它们传递/重写到``config.add_jwt_claims()``函数。

+———————————————————————————————————————————————————————————————————————————————————————————————|
>+==============================================================================+====================================================================================================================--+——————————————————————————————————————————————————————————————————————设置
---------


如果您在google cloud iap后面运行,则不太可能需要这些设置。

+---------+---------+---------+---------------------------+
|
======================================================================================================================================================================================================用于验证令牌签名的密钥的URL。|
+——+————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————|令牌被拒绝前允许过期的秒数。|
+————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————|授权头中使用的身份验证类型。不用于其他http头。|
+—————--+---————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————'PuffixKyURUR'`.BR/>
*'CuraTyJWTTKEngult'请求方法是不可用的,因为它是同一性感知代理发出令牌的责任。

*没有“认证”策略由'AddiSyIAPjJWTJAuth'’CONFIG方法配置,以提供那些使用的令牌的灵活性。``金字塔多重认证`.



欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用数据库中的值填充p:selectOneMenu   Java/Junit中的异步单元测试一个非常简单但不成功的例子   在Debian上使用Java连接到MySQL   java测试时如何恢复表中的一条记录/行?   java如何将重点放在jbutton上而不是放在另一个jbutton上?   java我可以从HPROF文件中获取JVM标志吗?   java如何使用自定义比较器在2个集合上保留   java让stringTokenizer将一行文本拆分为预定义变量的最佳方法是什么   Kotlin Android/Java字符串日期时间格式,API21   exchange server EWS Java Api自动发现不工作   netbeans是Java新手,似乎无法修复错误;应为类、接口或枚举。274062   我正在尝试将一些scala代码转换为Java8,以创建新的Lambda和并行集合   流中的分配api(java)   用于串行通信的java Python字节数组