google-signin - 为什么我没有收到 G Suite 帐户的 Google 安全事件?
问题描述
我已经成功地为我的应用程序实现了 Google 登录,如此处所述,使用我们的后端服务器进行了额外的验证层,如此处所述。但是,当我尝试注册跨账户保护申请时,我只能接收来自个人(以 结尾@gmail.com
)账户的事件。
我的流配置对象如下所示:
{
"delivery": {
"delivery_method": "https://schemas.openid.net/secevent/risc/delivery-method/push",
"url": MY_RECEIVER_ENDPOINT
},
"events_requested": [
"https://schemas.openid.net/secevent/risc/event-type/account-credential-change-required",
"https://schemas.openid.net/secevent/risc/event-type/account-disabled",
"https://schemas.openid.net/secevent/risc/event-type/sessions-revoked",
"https://schemas.openid.net/secevent/risc/event-type/account-enabled",
"https://schemas.openid.net/secevent/risc/event-type/account-purged",
"https://schemas.openid.net/secevent/risc/event-type/verification",
"https://schemas.openid.net/secevent/oauth/event-type/tokens-revoked"
]
}
当我向 Google 注册端点时,我得到一个 200 响应代码,并且可以verify
使用以下命令成功测试事件:
def test_event_stream(auth_token, nonce):
headers = {'Authorization': 'Bearer {}'.format(auth_token)}
state = {'state': nonce}
response = requests.post('https://risc.googleapis.com/v1beta/stream:verify', json=state, headers=headers)
return response
它也将以 200 响应,并且我在我的应用程序日志中看到以下有效负载(解码 jwt 令牌后):
{
"aud": [
"MY_CLIENT_ID.apps.googleusercontent.com"
],
"events": {
"https://schemas.openid.net/secevent/risc/event-type/verification": {
"state": "MESSAGE at Fri Nov 8 01:31:13 2019"
}
},
"iat": 1573176640,
"iss": "https://accounts.google.com",
"jti": "JTI_VALUE"
}
当我在我的安全面板中撤销我的应用程序的访问权限时,我也可以'https://accounts.google.com/risc/event/all-token-revoked'
从我自己的个人 Google 帐户接收事件,但当我执行相同的操作时,我不会从我的工作帐户 (GSuite) 接收相同的事件。
是否有需要由我们的 GSuite 管理员或我在此应用程序的开发者控制台中启用的设置?非常感谢这里的任何帮助,这是一个重要的障碍。
解决方案
推荐阅读
- javascript - 如何以编程方式为 Google Apps 脚本中的打开事件创建触发器
- firebase - GAE - 没有为此线程注册 API 环境
- continuous-integration - 操作系统特定的 Puppet 单元测试
- javascript - 如何在 TypeScript 中键入 JSON 导入
- node.js - Azure Blob Node.js 下载 blob 文件
- r - 如何从 CSV 文件计算 R 中每部电影的平均评分?
- r - 如何在ggplot2中显示obs的方向(标题)
- python - 如何在 Pygame 上创建用户输入?
- mysql - 跨多个模式的 mySQL 查询
- angular - Mousevent方法不触发