使用 Bearer Header 针对受 IAP 保护的资源进行身份验证?
Authenticating Against an IAP Protected Resource with Bearer Header?
是否可以使用 Authorization: Bearer …
header 通过 Identity Aware Proxy 向我的受保护应用程序发出请求? (当然是使用服务帐户。来自 GCP 外部。)
我想不执行OIDC令牌交换,支持吗?
如果是这样,有没有人有任何例子?
到目前为止,我有以下但不起作用:
iat = time.time()
exp = iat + 3600
payload = {'iss': account['client_email'],
'sub': account['client_email'],
'aud': '/projects/NNNNN/apps/XXXXXXX',
'iat': iat,
'exp': exp}
additional_headers = {'kid': account['private_key']}
signed_jwt = jwt.encode(payload, account['private_key'], headers=additional_headers,
algorithm='RS256')
signed_jwt = signed_jwt.decode('utf-8')
这会产生:Invalid IAP credentials: JWT signature is invalid
。
目前不支持此功能。 IAP 需要 Google 帐户基础设施使用其私钥生成的签名,因此这就是签名检查失败的原因。你能告诉我更多关于为什么你想避免 OIDC 令牌交换吗? --Matthew,Google IAP 工程
是否可以使用 Authorization: Bearer …
header 通过 Identity Aware Proxy 向我的受保护应用程序发出请求? (当然是使用服务帐户。来自 GCP 外部。)
我想不执行OIDC令牌交换,支持吗?
如果是这样,有没有人有任何例子?
到目前为止,我有以下但不起作用:
iat = time.time()
exp = iat + 3600
payload = {'iss': account['client_email'],
'sub': account['client_email'],
'aud': '/projects/NNNNN/apps/XXXXXXX',
'iat': iat,
'exp': exp}
additional_headers = {'kid': account['private_key']}
signed_jwt = jwt.encode(payload, account['private_key'], headers=additional_headers,
algorithm='RS256')
signed_jwt = signed_jwt.decode('utf-8')
这会产生:Invalid IAP credentials: JWT signature is invalid
。
目前不支持此功能。 IAP 需要 Google 帐户基础设施使用其私钥生成的签名,因此这就是签名检查失败的原因。你能告诉我更多关于为什么你想避免 OIDC 令牌交换吗? --Matthew,Google IAP 工程