Приложению, зарегистрированному в AAD, отказано в доступе к учетной записи хранилища Azure. - PullRequest
0 голосов
/ 20 марта 2019

Справочная информация: Я следую https://docs.microsoft.com/en-us/azure/azure-monitor/platform/metrics-store-custom-rest-api для импорта пользовательских журналов в учетную запись хранилища Azure. Это не удается из-за разрешений на идентификатор ресурса: объект Azure AD '' не имеет разрешений для выполнения действия 'Microsoft.Insights / Metrics / write' over scope '.

Я отследил проблему до того факта, что Контроль доступа к учетной записи хранения (IAM) не перечисляет приложение, которое позволяет ему писать. (Обратите внимание, что я создал клиентское приложение .NET).

Я вернулся к разделу «Как добавить назначения ролей» в https://docs.microsoft.com/en-us/azure/role-based-access-control/role-assignments-portal

Тем не менее, если я буду следовать этой процедуре, новое созданное приложение не будет отображаться в назначениях ролей Azure. (не основной сервис, нет приложения.) Я являюсь владельцем подписки, а также глобальным администратором AAD.

Вопрос: Как правильно выполнить процедуру регистрации приложения, как описано выше, для записи в новую созданную учетную запись хранения?

Ответы [ 2 ]

1 голос
/ 20 марта 2019

ОК, проблема была в два раза: 1. Документация в https://docs.microsoft.com/en-us/azure/role-based-access-control/role-assignments-portal при попытке добавить принципала сервиса: вам нужно искать имя приложения, без идентификатора. Идентификатор не будет найден, только имя. И: На самом деле это не сразу. Начните вводить первые буквы имени участника службы, затем дождитесь начала автозаполнения. Затем вы видите свою основную службу. Это приводит ко второму пункту: 2. Терпение и понимание отношений между Принципами применения и Обслуживания.

предложить как прочтение: https://docs.microsoft.com/en-us/azure/active-directory/develop/app-objects-and-service-principals

После того, как он был представлен, я мог назначить роль «Мониторинг метрик». Сведения о хранилище Azure RBAC

0 голосов
/ 20 марта 2019

У вас есть пара вариантов. На сегодняшний день рекомендуется использовать Shared Access Signatures . Сигнатура общего доступа (SAS) предоставляет вам возможность предоставить ограниченный доступ к объектам в вашей учетной записи хранения другим клиентам без предоставления ключа вашей учетной записи.

Другой вариант - использовать Azure AD, но он все еще находится в режиме предварительного просмотра и не рекомендуется для производства. Первым шагом в использовании интеграции Azure AD с хранилищем Azure является назначение ролей RBAC для данных хранилища для вашего участника службы (пользователя, группы или участника службы приложений) или управляемых удостоверений для ресурсов Azure. Роли RBAC охватывают общие наборы разрешений для контейнеров и очередей. Подробнее о назначении ролей RBAC для хранилища Azure см. Управление правами доступа к данным хранилища с помощью RBAC (предварительный просмотр) .

.

Чтобы использовать Azure AD для авторизации доступа к ресурсам хранения в ваших приложениях, вам необходимо запросить токен доступа OAuth 2.0 из своего кода. Чтобы узнать, как запросить токен доступа и использовать его для авторизации запросов к хранилищу Azure, см. Аутентификация с помощью Azure AD из приложения хранилища Azure (предварительная версия) . Если вы используете управляемую идентификацию, см. Проверка подлинности доступа к BLOB-объектам и очередям с помощью управляемых идентификаторов Azure для ресурсов Azure (предварительная версия) .

Azure CLI и PowerShell теперь поддерживают вход с использованием удостоверения Azure AD. После входа в систему с использованием идентификатора Azure AD сеанс запускается под этим идентификатором. Дополнительные сведения см. В разделе Использование удостоверения Azure AD для доступа к хранилищу Azure с помощью CLI или PowerShell (предварительный просмотр) .

.
...