看起来,截至昨天,Google Apps(OAuth 2.0)的单点登录已完全停止,适用于各种Google Apps Marketplace安装.
用户在尝试登录时收到以下错误:
- 那是一个错误.
错误:policy_enforced
应用:....
您可以通过以下方式向该应用程序的开发者发送电
由您组织的Google Apps管理员建立的安全政策拒绝访问.请联系您的管理员以获取进一步的帮
我们发现的不是原因:
我们发现这些安装的共同点(到目前为止)是,所有这些安装都是最近从Google Apps Marketplace V1迁移到GAMv2的安装.这发生在几个月前,虽然登录没有问题,但问题刚刚突然出现.
这是Google的身份验证机制中的一个新错误,任何想法如何修复它?
当用户登录到我们的Marketplace V2应用程序时,我们需要知道该用户属于哪个Google Apps帐户。
id_token包含“ hd”参数(域名),但这还不够,因为Google Apps帐户可以具有多个域。
CustomerId似乎是将用户匹配到正确的Google Apps帐户的不错的主键。问题是,它似乎没有包含在id_token中。有什么办法可以弄清楚用户的CustomerId是什么。
可以使用Admin SDK,但是在几乎所有情况下,对Admin SDK的调用都会失败,并显示“域无法使用API”。我在上一个答案中读到,当管理员安装Marketplace应用程序时,Google会自动(重新)启用API访问权限,但事实并非如此,因为对Admin SDK的调用几乎无效。
是否有人对如何获取customerId或其他主键有任何建议,或者是否有其他技巧可以使Admin SDK正常工作(而不必指示人们更改其Google Apps Scurity设置,因为这几乎可以轻松解决问题)市场安装)。
谢谢!