0

我正在制作一个身份验证提供程序,它允许消费者同时代表多个用户行事(请不要去'duh')。

在我的 oauth_consumer_registry 表(消费者存储自己的凭据)中,我有以下条目

ocr_id  ocr_usa_id_ref  ocr_consumer_key    
1       672             7e6418..........

消费者将其访问的令牌存储在 oauth_consumer_token 上

oct_id  oct_ocr_id_ref  oct_usa_id_ref  oct_token_type
31      1               672             access
32      1               672             request

我相信当用户授权自己时,消费者会代表他获得访问令牌。因此消费者必须为每个用户存储一个访问令牌。但是,只要将请求令牌交换为访问令牌,就会删除已经存在的访问令牌。所以数据库只存储一个访问令牌。似乎有些事情显然是错误的。

如何告诉我的消费者应用程序将访问令牌与特定用户相关联?


我想到的一个解释是,我必须在 oauth_consumer_registry 中为每个用户注册一个新的“消费者”。那正确吗?

4

1 回答 1

0

对于每个消费者,该消费者必须为每个用户拥有一个令牌,因为消费者正试图代表用户访问提供者。在提供者方面,该提供者必须为每个消费者每个用户拥有一个令牌。这是假设您希望个人用户能够控制授予外部消费者的访问权限。

于 2012-04-10T16:12:36.480 回答