0

コードは次のとおりです。

"https://login.live.com/oauth20_authorize.srf?client_id=" +
 process.env.MIX_LIVE_CLIENT_ID +
 "&scope=service::user.auth.xboxlive.com::MBI_SSL&response_type=code&redirect_uri=" +
 process.env.MIX_LIVE_REDIRECT_URL +
 "&state=ClientStateGoesHere"

これは、Microsoft azure アカウントで作成したスコープです。

スコープ=サービス::user.auth.xboxlive.com::MBI_SSL

しかし、xbox を使用してログイン用のページを開くと、以下のエラーが発生します。

https://example.com/sign-in?error=invalid_scope&error_description=The%20provided%20value%20for%20the%20input%20parameter%20%27scope%27%20has%20not%20been%20pre-authorized%20for%20this% 20client%20application.&state=ClientStateGoesHere

4

1 に答える 1

1

オプション情報

これについて多くのことを調査した結果、Xbox live スコープは、すべてのクライアントで既に承認されているサービス スコープであることがわかりました。response_typeただし、サービス スコープはトークンでは機能しません。に設定する必要がありますresponse_type: 'code'

あなたのソリューション

スコープを Azure AD の実際のサービス スコープに変更します。つまりXboxLive.signin、別のオプションのスコープはXboxLive.offline_access更新トークンを取得することです。

ちなみに、service::user.auth.xboxlive.com::MBI_SSLID@Xbox を使うには ID@Xbox が必要だと思います。

于 2021-05-22T03:02:39.147 に答える