Как настроить аутентификацию Firebase для защиты моего. Net Core API - PullRequest
0 голосов
/ 02 мая 2020

Я пытаюсь аутентифицировать свой внутренний API (который в настоящее время является только локальным) с помощью аутентификации Firebase согласно этому блогу .

Я всегда получаю 401 несанкционированный, даже когда я ' м (я предполагаю) правильный токен. Я просто использую атрибут [Authorize] на своем контроллере.

Нужна ли дополнительная настройка, разрешить домен localhost, разрешения на установку или я неправильно настроил?

Моя консоль Firebase

enter image description here

Мой Startup.cs

     .AddJwtBearer(options =>
        {
            string projectId = "eisenhower-255ca";
            options.Authority = "https://securetoken.google.com/" + projectId;
            options.TokenValidationParameters = new TokenValidationParameters
            {
                ValidateIssuer = true,
                ValidIssuer = "https://securetoken.google.com/" + projectId,
                ValidateAudience = true,
                ValidAudience = projectId,
                ValidateLifetime = true,
            };
        });

Это токен JWT, который я отправляю

{
  "name": "My Name",
  "picture": "https://lh4.googleusercontent.com/-5TcxgD5tEPM/AAAAAAAAAAI/AAAAAAAAAAA/AAKWJJNudlhDY8TkE5x1HLlh7hwZFA5dew/photo.jpg",
  "iss": "https://securetoken.google.com/eisenhower-255ca",
  "aud": "eisenhower-255ca",
  "auth_time": 1588413429,
  "user_id": "3Ot95XQyenTvBmdTnGO5HcsihBs2",
  "sub": "3Ot95XQyenTvBmdTnGO5HcsihBs2",
  "iat": 1588413429,
  "exp": 1588417029,
  "email": "myEmail@gmail.com",
  "email_verified": true,
  "firebase": {
    "identities": {
      "google.com": [
        "110210403554430687155"
      ],
      "email": [
        "myEmail@gmail.com"
      ]
    },
    "sign_in_provider": "google.com"
  }
}

Спасибо

1 Ответ

0 голосов
/ 02 мая 2020

У меня было промежуточное ПО в неправильном порядке:

было

app.UseAuthorization();
app.UseAuthentication();

должно быть

app.UseAuthentication();
app.UseAuthorization();
...