ID令牌具有不正确的受众群体(aud)声明

时间:2020-03-18 13:27:36

标签: c# firebase firebase-authentication

我正在尝试验证C#中的ID令牌

我正在这样创建应用程序:

AppOptions appOptions = new AppOptions()
            {
                Credential = GoogleCredential.FromFile(@"path/to/Credential.json"),
                ServiceAccountId = "serviceAccId",
                ProjectId = "ProjectId",
            };

var MyApp = FirebaseApp.Create(appOptions);

我收到的错误消息是:ID令牌具有不正确的听众(aud)声明。 有什么想法吗?谢谢!

我在代码中添加了一些内容……当我尝试使用自定义令牌登录时,我遇到的问题是最后一步。

它给了我一个错误,指出原因是MissingIdentifier。

using (var customToken = FirebaseAdmin.Auth.FirebaseAuth.DefaultInstance.CreateCustomTokenAsync(authentication.FirebaseUser.LocalId))
                {
                    string token = customToken.Result;
                    using (FirebaseAuthProvider auth = new FirebaseAuthProvider(new FirebaseConfig(FireBaseAppKey)))
                    {
                        using (test = auth.SignInWithCustomTokenAsync(token))
                        {
                            test.Wait();
                        }
                    }
                    customToken.Wait();
                }

这是我收到的消息:

Exception occured while authenticating.
Url: https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyCustomToken?key={0}
Request Data: 
        {
          "token":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJVaWQiOiIyM2E1ZGM0Ny03NDNhLTQzNDUtODc5Mi1lMDY5NjhkNDZjNGIiLCJpc3MiOiJmaXJlYmFzZS1hZG1pbnNkay0xb2ZxNEBhdXRodGVzdHByb2plY3QtYmVlMDkuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iLCJzdWIiOiJmaXJlYmFzZS1hZG1pbnNkay0xb2ZxNEBhdXRodGVzdHByb2plY3QtYmVlMDkuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iLCJhdWQiOiJodHRwczovL2lkZW50aXR5dG9vbGtpdC5nb29nbGVhcGlzLmNvbS9nb29nbGUuaWRlbnRpdHkuaWRlbnRpdHl0b29sa2l0LnYxLklkZW50aXR5VG9vbGtpdCIsImV4cCI6MTU4NDU1NTAzNiwiaWF0IjoxNTg0NTUxNDM2fQ.nwvRalOpMs9LYIAFoFZ53Yu72kar9MNpO8gHBGZaMQcdx0ms7OIs0cYEsXUDYy0A_rNfOK03pIWc1y_w2rtIbl_Rg7oHY2u8YublHGe
               -n6w9PjQpkONU3YEWHW9qnewhYPFqiLw94j8qEM9V3Bc0FCtspyv8i7Ra9-r2Gz9p88kvUHcIV8_qF9dN_4kNVNiVVHOIhFDQgDOnwUSobmp6aMVnsB9xRwv2_oiWc19s4HNXcNif12d7HHdeRauWVRoTYYvMjrgJTRUsGcB2YFZR8QhH7_0Fmn8bfbiJWP2maTXayL4sY2sIaEyJZDIaBDHkU8l_j_1KxBR7_FTv2Q5_DA\",
          "returnSecureToken":true
        }
        Response: {
                 "error": {
                        "code": 400,
                        "message": "MISSING_IDENTIFIER",
                        "errors": [
                            {"message": "MISSING_IDENTIFIER\",
                             "domain": "global",
                                     "reason": "invalid"
                                    }
                              ]
                      }
              }

Reason: MissingIdentifier"}

1 个答案:

答案 0 :(得分:0)

这通常意味着ID令牌用于与您的凭据文件不同的项目。我建议从Firebase / Cloud控制台为该项目下载新的凭据文件,然后重试。