Перейти к содержимому

Ключи доступа

Сервисные аккаунты при обращении к ресурсам облака аутентифицируются при помощи ключей доступа.

Ключ доступа привязан к сервисному аккаунту. Для любого сервисного аккаунта может быть создано несколько ключей доступа.

У каждого ключа есть идентификатор, который используется для точного обращения к нему (например, при создании IAM-токена).

Срок действия ключа можно ограничить при создании.

Поддерживается создание и управление следующими типами ключей доступа:

  • HMAC-ключ — для доступа к Object Storage через AWS CLI и API (AWS-совместимая авторизация).
  • API-ключ — для организации доступа к сервисам Artifact Registry и GPT.
  • Авторизованный ключ — для доступа ко всем остальным сервисам MWS (рекомендуется).

Создание и управление ключами доступно в веб-консоли MWS в разделе IAMСервисные аккаунтыКлючи доступа.

  • Ключ создается для конкретного сервисного аккаунта.
  • Приватная часть ключа отображается только в момент создания: скопируйте его и сохраните в надежном месте.
  • Невозможно пересоздать уже созданный ключ — необходимо удалить старый и создать новый.
  • При удалении ключа его использование в каком-либо сервисе не проверяется.
  • Количество ключей, которые могут созданы в рамках одного проекта, ограничено квотами.
  • Храните ключи доступа в надежном месте и исключите доступ к ним третьих лиц.
  • Если ключ скомпрометирован, создайте новый ключ и используйте его.

HMAC-ключ (англ. Hash-based Message Authentication Code) — это статический ключ, необходимый для аутентификации сервисного аккаунта в AWS-совместимом API; например, при работе с сервисом Object Storage при помощи AWS CLI.

HMAC-ключ состоит из идентификатора ключа (Access Key) и секретного ключа доступа (Secret Key). Они используются в запросах AWS-совместимых API:

  • Access Key указывается в запросе в открытом виде.
  • При помощи Secret Key подписываются параметры запроса; при этом сам секретный ключ в запросе не указывается.

HMAC-ключами возможно управлять в веб-консоли MWS:

  • в разделе IAMСервисные аккаунтыКлючи доступа;
  • в разделе Object StorageНастройки.

При создании HMAC-ключа доступа пользователь должен сохранить себе секретный ключ.

  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого создается ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите Создать ключ и выберите пункт HMAC-ключ.
  5. (опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
  6. (опционально) Введите описание ключа.
  7. Ограничьте срок действия ключа (рекомендуется).
  8. Нажмите Создать.
  9. Скопируйте из окна секретный ключ из поля Secret Key и сохраните его в надежном месте.
    Внимание! После закрытия диалогового окна секретный ключ станет недоступен для просмотра.
  10. Нажмите Закрыть.
Примечание

Создать HMAC-ключ также можно, выбрав Object StorageНастройки: найдите в разделе HMAC-ключи для сервисных аккаунтов требуемый сервисный аккаунт и нажмите Добавить ключ.

Важно

При удалении ключа его использование в каком-либо сервисе не проверяется.

  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите на значок рядом с именем ключа, который нужно удалить.
  5. Выберите Удалить.
  6. Подтвердите удаление ключа, введя последние 5 символов его идентификатора.

Авторизованный ключ (authorized key) — это ключ с алгоритмом шифрования ES256, применяемый для аутентификации во всех сервисах MWS (исключая Object Storage, Artifact Registry и GPT).

Для доступа к API облачных сервисов необходим IAM-токен, который формируется с использованием авторизованного ключа. Этот ключ состоит из двух частей:

  • закрытый ключ (Private Key) хранится локально и применяется для подписи запроса на выдачу IAM-токена;
  • открытый ключ (Public Key) хранится в MWS и используется для проверки подлинности запроса.

Вы можете сгенерировать ключи на стороне MWS и скачать их на свое устройство в виде файла. Также вы можете загрузить в MWS собственный открытый ключ.

Создание и управление ключами доступно в веб-консоли MWS в разделе IAMСервисные аккаунтыКлючи доступа.

Создать авторизованный ключ в веб-консоли

Заголовок раздела «Создать авторизованный ключ в веб-консоли»
  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите создать ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите Создать ключ и выберите пункт Авторизованный ключ.
  5. (опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
  6. (опционально) Введите описание ключа.
  7. Ограничьте срок действия ключа (рекомендуется).
  8. Нажмите Создать.
  9. Скачайте файл с ключами и сохраните его в надежном месте.
    Внимание! После закрытия диалогового окна ключ станет недоступен для скачивания.
  10. Нажмите Закрыть.

Добавить существующий авторизованный ключ

Заголовок раздела «Добавить существующий авторизованный ключ»
  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите добавить ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите Создать ключ и выберите пункт Авторизованный ключ.
  5. (опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
  6. (опционально) Введите описание ключа.
  7. Ограничьте срок действия ключа (рекомендуется).
  8. Выберите опцию Добавить существующий ключ доступа и вставьте открытую часть ключа в поле Public key.
    Важно! Ключ должен быть создан с использованием алгоритма шифрования ES256.
  9. Нажмите Создать.
  10. Нажмите Закрыть.
Важно

При удалении ключа его использование в каком-либо сервисе не проверяется.

  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите на значок рядом с именем ключа, который нужно удалить.
  5. Выберите Удалить.
  6. Подтвердите удаление ключа, введя последние 5 символов его идентификатора.

API-ключ — это уникальная строка длиной 128 символов, предназначенная для упрощенной аутентификации сервисных аккаунтов в тех облачных сервисах, которые не поддерживают авторизованные ключи. Доступ к таким сервисам осуществляется через API используя IAM-токен. Данный токен получить, передав в соответствующем запросе API-ключ в качестве заголовка авторизации:

html
Authorization: Api-Key <API-ключ>

API-ключ может быть использован для организации доступа к сервисам Artifact Registry и GPT.

Важно

Если ваш API-ключ мог стать известен третьим лицам, немедленно удалите его и создайте новый.

Создание и управление ключами доступно в веб-консоли MWS в разделе IAMСервисные аккаунтыКлючи доступа.

  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите создать ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите Создать ключ и выберите пункт API-ключ.
  5. (опционально) Измените автоматически сгенерированное имя ключа. Позже это имя (name) и созданный из него идентификатор (ID) нельзя изменить, меняется только отображаемое имя (display name) ключа.
  6. (опционально) Введите описание ключа.
  7. Ограничьте срок действия ключа (рекомендуется).
  8. Нажмите Создать.
  9. Скопируйте из окна API-ключ и сохраните его в надежном месте.
    Внимание! После закрытия диалогового окна API-ключ станет недоступен для просмотра.
  10. Нажмите Закрыть.
Важно

При удалении ключа его использование в каком-либо сервисе не проверяется.

  1. Выберите в веб-консоли нужный проект из списка в верхней строке навигации.
  2. Выберите в левом меню IAMСервисные аккаунты.
    Откроется список сервисных аккаунтов.
  3. Нажмите на имя сервисного аккаунта, для которого вы хотите удалить ключ, и перейдите на вкладку Ключи доступа.
  4. Нажмите на значок рядом с именем ключа, который нужно удалить.
  5. Выберите Удалить.
  6. Подтвердите удаление ключа, введя последние 5 символов его идентификатора.