Azure Key Vault: Как проверить доступ пользователя - PullRequest
0 голосов
/ 17 апреля 2020

Когда пользователь вызывает мой API, я хочу проверить, есть ли у этого пользователя доступ к моему Azure хранилищу ключей.

API работает в службе приложения, и этой службе приложения предоставлен доступ к хранилище ключей, но я хочу убедиться, что пользователю, вызывающему API, также предоставлен доступ к хранилищу ключей.

Предоставляет ли Azure SDK способ получения политик доступа для хранилища ключей?

Спасибо!

1 Ответ

1 голос
/ 17 апреля 2020

Если вы используете для доступа от имени , только пользователи, имеющие доступ к KeyVault, могут получить доступ через ваш API. В этом случае вы бы предоставили API только «делегированный» доступ к KeyVault, поэтому он работает только с пользователем.

Пользователь плюс доступ к приложению : приложение обращается к Key Vault от имени вошедшего в систему пользователя. Примеры этого типа доступа включают Azure PowerShell и Azure портал. Пользовательский доступ предоставляется двумя способами. Пользователи могут получить доступ к Key Vault из любого приложения, либо они должны использовать указанное приложение c (называемое составной идентификацией).

В идеале вы должны предоставить доступ к группе AD и добавить свой пользователи этой группы. Предоставление доступа отдельным пользователям не рекомендуется .

Этот учебник также затрагивает то, что вы хотите.

Это для On-Behalf- Из сценария авторизации ios, что означает, что авторизация предоставляется конкретному c пользователю только через указанное c приложение. Без других политик доступа пользователь не сможет получить доступ к хранилищу ключей без приложения, а приложение не сможет получить доступ к хранилищу ключей без пользователя. Большинство организаций не будут использовать эту функцию, но я знаю, что некоторые используют.

Compound identity (Изображение взято с Azure Хранилище ключей, неправильно создающее составную идентификацию )

...