Google の IDToken の sub の値が変わるって本当?

ritou
·
公開:2025/1/16

ritouです。

私の投稿でお馴染み、メアドをキーにするID連携実装に加えて廃業したスタートアップのドメインを取得してメールアドレスを利用可能になったらホゲホゲっていうお話にとんでもないことがしれっと書かれていました。

問題はこの文です。

Why Doesn’t The SUB Identifier Solve this?

I have worked with a few of these downstream providers to look for a solution. There is a documented unique user identifier (the sub claim) that could theoretically prevent this issue, but in practice, it's unreliable.

According to a staff engineer at a major tech company:

“The sub claim changes in about 0.04% of logins from Log in with Google. For us, that's hundreds of users last week”.

Because the sub claim is inconsistent, it cannot be used to uniquely identify users - leaving services reliant on the email and hd claims.

何かで翻訳しましょう。

なぜSUB識別子ではこの問題が解決しないのか?

いくつかの下流プロバイダーと協力して、この問題の解決策を模索してきました。理論的には、この問題を防ぐことができるとされる一意のユーザー識別子(subクレーム)が文書化されていますが、実際には信頼性が低いのです。

大手テクノロジー企業のスタッフエンジニアによると、次のような事例があります:

「Googleでログインした際、subクレームが約0.04%のログインで変更されます。私たちの場合、これは先週だけで数百人のユーザーに影響を与えました。」

このように、subクレームは一貫性がないため、ユーザーを一意に識別する手段として使用することができません。その結果、サービスはメールアドレスやhdクレームに依存せざるを得ない状況となっています。

とんでもないことが書いてありますね。

IdPによってsubが変わり得る、までは百歩譲ってそうしたらそう、ではあります。が、Googleがやってる?マ? これは流石にないと思います。

あくまで "a staff engineer at a major tech company" の意見なので、Google側の意見も聞きたいところです。

ではまた!