双腿OAuth工作流

双腿OAuth工作流,oauth,Oauth,我正在尝试使用两条腿的oauth来允许移动客户端登录到我创建的api中,但是我不能很好地找到合适的工作流程,所有的教程似乎都说了一些不同的东西 从我在两条腿版本中所读到的内容来看,oauth使用者密钥和使用者机密是专门分配给用户的,并且不使用令牌。因此,当用户登录时,他们(或他们的设备)必须出示他们的消费者密钥和密码,我们可以使用它们来验证他们的身份。那又怎么样?客户机设备是否接收到用于访问API的令牌,或者是否随每个请求发送消费者信息 用户只能记住用户名和密码,我们如何从客户端设备上的用户名和

我正在尝试使用两条腿的oauth来允许移动客户端登录到我创建的api中,但是我不能很好地找到合适的工作流程,所有的教程似乎都说了一些不同的东西

从我在两条腿版本中所读到的内容来看,oauth使用者密钥和使用者机密是专门分配给用户的,并且不使用令牌。因此,当用户登录时,他们(或他们的设备)必须出示他们的消费者密钥和密码,我们可以使用它们来验证他们的身份。那又怎么样?客户机设备是否接收到用于访问API的令牌,或者是否随每个请求发送消费者信息


用户只能记住用户名和密码,我们如何从客户端设备上的用户名和密码获取消费者密钥和密码,并将其发送到服务器

您不应该为每个客户端设备都设置使用者密钥/密钥对。OAuth的“消费者”概念是使用API向您进行身份验证的特定站点或开发人员。谁在创建用户名/密码对?这些都是您的用户帐户,还是您正在寻找能够使用雅虎、谷歌等帐户登录您的用户


无论如何,我希望用户拥有用户名和密码,而不是使用者密钥和使用者密码。

您不应该为每个客户端设备都拥有使用者密钥/密码对。OAuth的“消费者”概念是使用API向您进行身份验证的特定站点或开发人员。谁在创建用户名/密码对?这些都是您的用户帐户,还是您正在寻找能够使用雅虎、谷歌等帐户登录您的用户


无论如何,我希望用户拥有用户名和密码,而不是使用者密钥和使用者机密。

2腿OAuth删除了一个单独的authN/authZ服务器,该服务器直接与3腿OAuth中存在的客户端通信。它当然涉及(访问)令牌。客户端设备将接收令牌,并可以使用该令牌,直到其过期

这种设置的优点是,您不需要担心每次API调用时客户端id/密码的安全性。在每次通话中发送客户端id/secret是基本身份验证,不建议这样做。相反,通过使用OAuth,您只需要担心用于获取令牌的API调用上的client_id/secret的安全性(例如,在每个令牌的生命周期中一次)。如果令牌被破坏,它有一个TTL,而client_id/secret没有


提供自己用户凭据的最终用户不知道客户端id/密码。客户端应用程序应处理令牌的客户端id/secret协商。

2腿OAuth删除了一个单独的authN/authZ服务器,该服务器直接与3腿OAuth中存在的客户端对话。它当然涉及(访问)令牌。客户端设备将接收令牌,并可以使用该令牌,直到其过期

这种设置的优点是,您不需要担心每次API调用时客户端id/密码的安全性。在每次通话中发送客户端id/secret是基本身份验证,不建议这样做。相反,通过使用OAuth,您只需要担心用于获取令牌的API调用上的client_id/secret的安全性(例如,在每个令牌的生命周期中一次)。如果令牌被破坏,它有一个TTL,而client_id/secret没有


提供自己用户凭据的最终用户不知道客户端id/密码。客户端应用程序预计将处理令牌的客户端id/secret协商。

是的,我们希望用户专门为我们的服务创建用户名/密码,我们不尝试与谷歌、雅虎等集成。是的,我们希望使用用户名和密码,但不确定他们在oauth中扮演什么角色。我所看到的oauth验证实现示例中没有一个是使用密码的,听起来好像你想要的是用户名和密码,而不是oauth。你想从OAuth获得什么?关于您的体系结构的更多信息可能会有所帮助。我对双腿OAuth还不太熟悉,但通常使用OAuth的一个主要优点是,您不必存储用户的实际用户名和密码,而是存储某种OAuth凭据(例如密钥/密码)。如果用户的移动设备被盗,他们可以使用用户名/密码登录您的网站,并取消存储在该设备上的OAuth凭据的授权,因此现在小偷无法使用该设备登录。OAuth凭据也可以携带有限的权限,因此即使它们被破坏,也没有人能够更改您的密码。是的,我们希望用户专门为我们的服务创建用户名/密码,我们不尝试与Google集成,雅虎等。是的,我们想使用用户名和密码,但不确定他们在oauth中扮演什么角色。我所看到的oauth验证实现示例中没有一个是使用密码的,听起来好像你想要的是用户名和密码,而不是oauth。你想从OAuth获得什么?关于您的体系结构的更多信息可能会有所帮助。我对双腿OAuth还不太熟悉,但通常使用OAuth的一个主要优点是,您不必存储用户的实际用户名和密码,而是存储某种OAuth凭据(例如密钥/密码)。如果用户的移动设备被盗,他们可以使用用户名/密码登录您的网站,并取消存储在该设备上的OAuth凭据的授权,因此现在小偷无法使用该设备登录。OAuth凭据也可以携带有限的权限,因此即使它们被破坏,也没有人能够更改您的密码。