Получение токена доступа AzureADD в среде разработки - PullRequest
0 голосов
/ 30 апреля 2018

В приложении с проверкой подлинности AzureAD, размещенном в Azure, я получаю токен доступа в контроллере API, как это

        public override void OnActionExecuting(ActionExecutingContext context)
    {
        base.OnActionExecuting(context);
        _client.DefaultRequestHeaders.Accept.Clear();

        var tokenHeader = Request.Headers["X-MS-TOKEN-ADD-ACCESS-TOKEN"];
        _client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokenHeader );
    }

Поскольку служба приложения Azure AD внедряет токен, она работает только при размещении в Azure.

Как я могу заставить его работать в моей среде разработки? Это, конечно, создает исключение.

Я следую этому уроку: https://docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-auth-aad#enable-authentication-and-authorization-for-back-end-app

Бэкэнд и внешний интерфейс защищены с помощью аутентификации AzureAD. Приложение внешнего интерфейса имеет установленное разрешение для внутреннего приложения в разделе AzureAD на портале. В коде ничего не настроено в appsettings.json.

1 Ответ

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

Согласно вашему описанию, вы используете Easy Auth для службы веб-приложений. Вы знаете, простая аутентификация для службы веб-приложений Azure, она управляется Azure. Поэтому я боюсь, что вы не можете использовать аутентификацию Easy Auth для своего приложения с локального компьютера.

Дополнительные сведения о службе Easy Auth для Azure Web App см. В этой документации .

Если вы запускаете приложение локально в вашей системе разработки, Easy Auth не будет доступен и у вас не будет токенов доступа, и т.д., которые могут вам понадобиться в вашем приложении. Для того, чтобы отладить те функций вашего приложения, вам нужно будет развернуть в Azure Web Приложение. Альтернативный подход состоит в том, чтобы сделать вход в систему и аутентификацию рабочий процесс в коде приложения, но тогда вы уже не используя Easy Auth.

Однако существует метод локальной отладки .NET Core Web App с помощью Easy Auth. Вот блог , в котором представлен подход к этому. Этот блог может быть полезен для размышления о вашем сценарии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...