У меня есть мобильное приложение Flutter, которое требует аутентификации и доступа к функциям Azure, определенным в Azure API Management.Я настроил и протестировал его с предоставлением кода авторизации, и он работает нормально (использовал эту статью для руководства).Теперь я хочу посмотреть, сработает ли предоставление пароля владельца ресурса, и я не могу заставить его работать (в основном то же, что описано в упомянутой статье, но для предоставления пароля владельца ресурса).Я перенастроил настройку OAuth2 управления API следующим образом:
Я также настроил мобильный клиент (в разделеКаталог по умолчанию - Регистрация приложений -> клиент моего мобильного приложения -> Поддерживаемые типы учетных записей) в качестве общедоступного клиента, чтобы разрешить поток учетных данных владельца ресурса (ROPC) (не уверен, требуется ли это).
Когда я выполняю аутентификацию (т. Е. Нажимаю на конечную точку токена, передавая пароль grant_type, client_id, пароль пользователя, идентификатор пользователя и области действия), я получаю следующую ошибку обратно (примечаниечто я в бесплатной пробной версии каталога по умолчанию, если это имеет значение):
Ошибка авторизации OAuth (invalid_request): AADSTS90002: Арендатор '' не найден.Это может произойти, если для арендатора нет активных подписок.Обратитесь к администратору подписки.
Но URI конечной точки токена, который я использую, содержит мой правильный идентификатор клиента, и если я выполняю поток кода аутентификации, используя те же идентификаторы клиента в URI авторизации и конечной точки токена, все работаетхорошо.
Не уверен, какую другую информацию предоставить для лучшей диагностики, поэтому спросите.