ACS を接続した Thinktecture の Authorization Server と LiveID を ID プロバイダーとして使用しています。動作しますが、JWT は次のようになります (nameid クレームに注目してください)。
{
"aud": "urn:mygym",
"iss": "https://my-gym.accesscontrol.windows.net/",
"nbf": 1378851574,
"exp": 1378852174,
"nameid": "MjApoxNfAaXXXXXXXXXXXXXdBi7lqd4sjd6j0=",
"identityprovider": "uri:WindowsLiveID"
}
これは私のカスタム JWT トークン ハンドラーでキャッチされるため、ACS から直接取得されます。「nameid」クレームは Live ID UserId である必要がありますが、そうではなく、base64 でエンコードされた文字列のように見えますが、ランダムな文字にデコードされるだけです。https://apis.live.net/v5.0/8c8ce076ca27823fのように、ユーザーの公開情報を取得するには UserId を取得する必要があります。
何が間違っているか、構成が間違っている可能性があるかについてのアイデアはありますか?