2014-10-03 48 views
0

首先,我知道密钥是什么以及它的用途,但我在下面的示例中有一个关于实例的问题。omniauth-provider返回的密钥是什么?

当使用omniauth提供商,你从omniauth提供商成功地得到回应哈希使用者登入您的应用程序,你会得到这样的事情

{ 
    :credentials => { 
    :token => "a1b2c3d4...", # The OAuth 2.0 access token 
    :secret => "abcdef1234" 
    }, 
} 

1)现在是不同的这两个键从您的应用程序的令牌和秘密令牌?

2)散列中的这些返回的标记是否因用户不同而不同,或者它们对于所有用户都是相同的? (逻辑上他们应该是不同的,但只是试图彻底)

3)这些从属或以任何方式绑定到您在您的配置文件中为您的应用程序密钥和应用程序密钥设置的内容?

感谢

回答

1
  1. 是的,他们是不同的。

  2. 它们是特定于每个用户的。根据供应商的不同,他们也可能随时间而改变。

  3. 它取决于OmniAuth提供程序。有些提供商为每个用户提供一个全局令牌和秘密,但其他提供商为每个用户提供每个应用程序的不同令牌和秘密。因此,根据提供商的情况,如果您使用不同的应用程序,或者如果您更改了配置文件,用户的令牌和机密可能会改变。

+0

非常感谢您的澄清。所以最好对待他们悲观,因为他们可能会改变。当你说我的用户的令牌和秘密可能会改变时,你的意思是,如果我更改了我的配置密钥,用户将无法再登录,或者在你尝试登录后密钥会更新改变你的应用程序的密钥? – ahnbizcad 2014-10-03 22:41:56

+1

第二个。但是,这又取决于提供者。请务必调查提供商的API,以便了解您正在处理的内容。 – Ashitaka 2014-10-04 09:29:47