
[英]invalid_grant on OAuth2 request when obtaining access_token from SSO in App
[英]Obtaining userId with UberRUSH access token
我对UberRUSH三足oauth和webhooks有疑问。
我们正在开发多租户应用程序,它将代表UberRUSH用户。 我们正在实现三足oauth流,我们想使用webhooks来更新传递状态。
在webhooks文档( https://developer.uber.com/docs/deliveries/guides/webhooks )中,我读到UberRUSH事件将包含有关交付ID( meta.resource_id
)和用户ID( meta.user_id
)的信息。
当我们在内部将实体存储在单独的租户(每个UberRUSH用户单独的租户)中时,我们需要将事件的user_id
映射到我们的租户名称。 我想到构建这种地图的唯一方法是基于我们保留的用户访问令牌。 我们可以对其进行解码(JWT)并读取其sub
属性(Subject),因为我假设它包含用户的ID。
我的问题是,以这种方式获取用户ID是否有效且安全(我们可以依靠它,并且在可预见的将来它不会改变),还是有更简单的方法来获取用户ID?
由于您使用的是3-leged-oauth,因此一种简单的方法是使用Riders API中的/ me端点 。 这将为您提供以下用户数据:
{
"picture": "https://d1w2poirtb3as9.cloudfront.net/f3be498cb0bbf570aa3d.jpeg",
"first_name": "Uber",
"last_name": "Developer",
"uuid": "f4a416e3-6016-4623-8ec9-d5ee105a6e27",
"rider_id": "8OlTlUG1TyeAQf1JiBZZdkKxuSSOUwu2IkO0Hf9d2HV52Pm25A0NvsbmbnZr85tLVi-s8CckpBK8Eq0Nke4X-no3AcSHfeVh6J5O6LiQt5LsBZDSi4qyVUdSLeYDnTtirw==",
"email": "uberdevelopers@gmail.com",
"mobile_verified": true,
"promo_code": "uberd340ue"
}
使用uuid,rider_id和电子邮件,您将获得用户的识别道具。 请记住,您需要在身份验证期间请求profile
范围,才能对/ me进行调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.