Как защитить принципала службы Azure в своем коде PowerShell

Допустим, у меня есть код PowerShell, который выполняет определенные действия с моей подпиской Azure. Я понял, что необходимо войти в Azure, используя мое имя пользователя Azure или, возможно, руководителя службы Azure.

В моем случае я хотел бы использовать принципала, потому что многие люди будут использовать этот код, и я не хочу давать всем доступ к моей подписке. Поэтому я предоставляю доступ только к этому ИП.

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

Можно ли как-нибудь защитить себя от такой угрозы безопасности? Я также вижу раздел Azure AD, в котором я могу указать пользователей / группы, которые могут получить доступ к компоненту службы (приложение Azure). Но будет ли это больше похоже на двойную аутентификацию? не могли бы вы указать мне правильное направление?

Если вы могли бы также поделиться со мной некоторым примером кода, это будет высоко ценится.

1 ответ

Честно, пожалуйста, не делай так. Любой, кто получит доступ к сертификату (если вы распространяете его с помощью своего кода), также будет иметь доступ в качестве участника службы для Azure.

Я бы посоветовал вам создать модуль Runbook Azure Automation и прикрепить к нему веб-крючок. Затем вы можете создать небольшой HTML-файл, который будет выполнять Runbook (запрашивая любые параметры, которые вам требуются). Таким образом, пользователи могут запускать только тот код, который вы установили (через webhook), и вы можете периодически циклически повторять URL-адрес webhook (удаляя его и создавая новый).

Другие вопросы по тегам