Ключи доступа
Ключи доступа привязаны к сервисным аккаунтам и используются для аутентификации сервисных аккаунтов при обращении к ресурсам облака. Для одного сервисного аккаунта можно создать несколько ключей доступа.
Поддерживается создание и управление следующими типами ключей доступа:
- HMAC-ключ — для доступа к сервису Object Storage через AWS CLI и API (AWS-совместимая авторизация).
- Авторизованный ключ — для получения IAM-токена для доступа к API облачных сервисов.
Создание и управление ключами доступно в веб-консоли на вкладке Ключи доступа страницы сервисного аккаунта в разделе IAM → Сервисные аккаунты. Количество ключей в одном проекте ограничено квотами.
Рекомендации по работе с ключами
Заголовок раздела «Рекомендации по работе с ключами»- По умолчанию ключ создается без ограничения срока действия. Ограничьте срок действия ключа, чтобы сократить время его возможного использования в случае утечки.
- Храните данные ключей в Secret Manager или локально в надежном месте. Данные, которые необходимо сохранить при создании, зависят от типа ключа.
- Исключите доступ к ключам третьих лиц. Если ключ скомпрометирован, замените его.
- Перед удалением ключа убедитесь, что он больше не используется. Если ключ используется для аутентификации, создайте новый ключ и настройте аутентификацию с его помощью. После этого удалите старый ключ.
HMAC-ключ
Заголовок раздела «HMAC-ключ»HMAC-ключ (англ. Hash-based Message Authentication Code) — это статический ключ, необходимый для аутентификации сервисного аккаунта в AWS-совместимом API; например, при работе с сервисом Object Storage при помощи AWS CLI.
HMAC-ключ состоит из идентификатора (Access Key) и секретного ключа (Secret Key). Они используются в запросах к AWS-совместимым API:
- Идентификатор HMAC-ключа (Access Key) указывается в запросе в открытом виде.
- Секретный ключ (Secret Key) используется для формирования подписи запроса, но сам в запросе не передается.
При создании HMAC-ключа сохраните секретный ключ в Secret Manager или локально. После создания секретный ключ будет недоступен для просмотра на странице HMAC-ключа, а без него использовать HMAC-ключ невозможно.
Создать HMAC-ключ
Заголовок раздела «Создать HMAC-ключ»В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого создается ключ, и перейдите на вкладку Ключи доступа.
Нажмите кнопку Создать и выберите HMAC-ключ.
(опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
(опционально) Добавьте описание ключа.
Ограничьте срок действия ключа (рекомендуется).
Нажмите кнопку Создать.
Сохраните секретный ключ в Secret Manager или локально. После создания HMAC-ключа его секретный ключ станет недоступен для просмотра на странице ключа.
- Сохранить в Secret Manager
- Сохранить локально
Нажмите кнопку Сохранить в Secret Manager.
В новой вкладке браузера откроется страница создания секрета.
(опционально) Измените автоматически сгенерированное имя секрета. Позже это имя (name) и созданный из него идентификатор (ID) секрета нельзя изменить, меняется только отображаемое имя (display name) секрета.
(опционально) Измените автоматически сгенерированное описание секрета.
Нажмите кнопку Создать.
Идентификатор ключа (Access Key) и секретный ключ (Secret Key) будут сохранены в первой версии секрета.
Нажмите кнопку Закрыть.
Удалить HMAC-ключ
Заголовок раздела «Удалить HMAC-ключ»Перед удалением ключа убедитесь, что он больше не используется для аутентификации. После удаления аутентификация с его помощью станет недоступна.
В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
Нажмите на значок … для удаляемого ключа и выберите Удалить.
Подтвердите удаление.
Авторизованный ключ
Заголовок раздела «Авторизованный ключ»Авторизованный ключ (authorized key) — это пара ключей для создания и проверки цифровой подписи по алгоритму ES256.
Авторизованный ключ используется для получения IAM-токена для доступа к API облачных сервисов. Авторизованный ключ состоит из двух частей:
- Закрытый ключ (Private Key) используется для создания цифровой подписи.
- Открытый ключ (Public Key) хранится на стороне MWS и используется для проверки цифровой подписи.
Для сервисного аккаунта можно использовать пару ключей, созданную в MWS или вне платформы:
- Создать пару ключей в MWS. При создании сохраните их в Secret Manager или локально. После создания закрытый ключ будет недоступен для просмотра и скачивания на странице ключа, а без него использовать авторизованный ключ невозможно.
- Добавить в MWS открытую часть существующей пары ключей. Пара ключей должна быть создана с использованием алгоритма цифровой подписи ES256.
Создать авторизованный ключ
Заголовок раздела «Создать авторизованный ключ»В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите создать ключ, и перейдите на вкладку Ключи доступа.
Нажмите кнопку Создать и выберите Авторизованный ключ.
(опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
(опционально) Добавьте описание ключа.
Ограничьте срок действия ключа (рекомендуется).
Нажмите кнопку Создать.
Сохраните закрытый и открытый ключи в Secret Manager или локально. После создания авторизованного ключа его закрытый ключ станет недоступен для просмотра и скачивания на странице ключа.
- Сохранить в Secret Manager
- Сохранить локально
Нажмите кнопку Сохранить в Secret Manager.
В новой вкладке браузера откроется страница создания секрета.
(опционально) Измените автоматически сгенерированное имя секрета. Позже это имя (name) и созданный из него идентификатор (ID) секрета нельзя изменить, меняется только отображаемое имя (display name) секрета.
(опционально) Измените автоматически сгенерированное описание секрета.
Нажмите кнопку Создать.
Закрытый и открытый ключи будут сохранены в первой версии секрета.
Нажмите кнопку Закрыть.
Добавить существующий авторизованный ключ
Заголовок раздела «Добавить существующий авторизованный ключ»Добавляемый ключ должен быть создан с использованием алгоритма цифровой подписи ES256.
В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите добавить ключ, и перейдите на вкладку Ключи доступа.
Нажмите кнопку Создать и выберите Авторизованный ключ.
(опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
(опционально) Добавьте описание ключа.
Ограничьте срок действия ключа (рекомендуется).
Выберите опцию Добавить существующий ключ доступа и вставьте открытую часть ключа в поле Public key.
Нажмите кнопку Создать.
Нажмите кнопку Закрыть.
Удалить авторизованный ключ
Заголовок раздела «Удалить авторизованный ключ»Перед удалением ключа убедитесь, что он больше не используется для аутентификации. После удаления аутентификация с его помощью станет недоступна.
В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
Нажмите на значок … для удаляемого ключа и выберите Удалить.
Подтвердите удаление.
API-ключ
Заголовок раздела «API-ключ»API-ключ — это уникальная строка длиной 128 символов, которая используется для аутентификации сервисного аккаунта без получения IAM-токена. Такой способ аутентификации поддерживают сервисы Artifact Registry, GPT и Мониторинг. Способ передачи API-ключа зависит от сервиса и используемого инструмента.
При создании API-ключа сохраните его в Secret Manager или локально. После создания API-ключ становится недоступен для просмотра на странице ключа.
Создать API-ключ
Заголовок раздела «Создать API-ключ»В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите создать ключ, и перейдите на вкладку Ключи доступа.
Нажмите кнопку Создать и выберите API-ключ.
(опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
(опционально) Добавьте описание ключа.
Ограничьте срок действия ключа (рекомендуется).
Нажмите кнопку Создать.
Сохраните ключ в Secret Manager или локально. После создания ключ становится недоступен для просмотра на странице ключа.
- Сохранить в Secret Manager
- Сохранить локально
Нажмите кнопку Сохранить в Secret Manager.
В новой вкладке браузера откроется страница создания секрета.
(опционально) Измените автоматически сгенерированное имя секрета. Позже это имя (name) и созданный из него идентификатор (ID) секрета нельзя изменить, меняется только отображаемое имя (display name) секрета.
(опционально) Измените автоматически сгенерированное описание секрета.
Нажмите кнопку Создать.
API-ключ будет сохранен в первой версии секрета.
Нажмите кнопку Закрыть.
Удалить API-ключ
Заголовок раздела «Удалить API-ключ»Перед удалением ключа убедитесь, что он больше не используется для аутентификации. После удаления аутентификация с его помощью станет недоступна.
В веб-консоли выберите нужный проект.
В списке сервисов выберите IAM → Сервисные аккаунты.
Откроется список сервисных аккаунтов.
Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
Нажмите на значок … для удаляемого ключа и выберите Удалить.
Подтвердите удаление.
Изменить отображаемое имя и описание ключа доступа
Заголовок раздела «Изменить отображаемое имя и описание ключа доступа»- В веб-консоли выберите нужный проект.
- В списке сервисов выберите IAM → Сервисные аккаунты.
- Нажмите на имя сервисного аккаунта и перейдите на вкладку Ключи доступа.
- Нажмите на значок … для нужного ключа доступа и выберите Редактировать.
- Отредактируйте отображаемое имя и описание ключа.
- Нажмите кнопку Сохранить.