2014-01-29 67 views
0

道歉,如果我的術語不準確。作爲一個OpenID提供者URL,OpenID身份總是可以接受的嗎?

我有一個作爲OpenID依賴方的應用程序。假設用戶通過OpenID註冊,併爲我提供他的OpenID提供商的URL。身份驗證發生,我收到一個OpenID身份。

如果我需要再次驗證用戶,我是否可以始終使用身份,而不是原始提供的URL?

一個具體的例子,萬一上面是無稽之談。要將Google用作他們的OpenID提供商,用戶輸入https://www.google.com/accounts/o8/id。一旦通過身份驗證,Google就會爲我提供身份網址,例如https://www.google.com/accounts/o8/id?id=A1B2c3d45F6g7。我隨後可以使用該身份URL進行身份驗證(我已選中);但這對所有供應商都是如此?

回答

0

該身份URL是聲明的標識符。 spec says它「應該被依賴方用作本地存儲用戶信息的關鍵。」因此,您可以相當確信,對於任何正確實施的提供商,您將獲得給定用戶的穩定聲明標識符。但是,請注意,這樣的標識符通常對於每個RP的域是特定的(在技術上,;該功能是防止RP在追蹤不同服務中的用戶活動時牽扯進來的隱私保護)。因此,你可能會在同一個用戶之間得到不同的標識符。您的分段環境和您的生產環境。

+0

是的,我知道聲明標識符(謝謝你的正確名詞!)是穩定的。我想知道我是否可以將它用作OpenID請求的目標。我可以通過「https://www.google.com/accounts/o8/id?id = A1B2c3d45F6g7」而不是「https:// www.google.com/accounts/o8/id」請求身份驗證嗎? – Chowlett

相關問題