1

我對OpenID Connect身份驗證很陌生! (也OAuth2.0的太..)OpenId Connect JWT子郵件或電子郵件

反正我的問題是,

「什麼是智威湯遜的必要的用戶數據的東西呢?」 (「sub」或「user-email」?)

什麼是真正的意思,因爲谷歌登錄說? 我認爲,我們無法更改Google帳戶的電子郵件,不是嗎?

注意:Google帳戶的電子郵件地址可能會更改,因此請勿使用它來標識用戶。而是使用帳戶的ID,您可以通過getBasicProfile()。getId()在客戶端上獲得該ID,並在ID令牌的子索賠的後端使用該ID。

回答

3

id_token需要sub索賠,email是可選的,請參閱:http://openid.net/specs/openid-connect-core-1_0.html#IDToken。正如你所提到的電子郵件地址可以改變,sub不應該改變,當與iss索賠相結合時,代表提供者 - 谷歌在你的情況 - 它可以用來獲得全球唯一的用戶標識符。

+0

非常感謝! 而我有一些問題,id_token也有「exp」(過期時間)所以,在RP中,如果exp時間結束,我也得到新的有效id_token嗎? 我有一些令人困惑的過期時間,像一個刷新訪問令牌.. –

+1

'exp'說當令牌本身變得無效,之後它不應該被接收者接受;它不一定與最初接收到「id_token」時RP啓動的會話有關 –