Детальные разрешения в облачном хранилище Яндекса - PullRequest
0 голосов
/ 21 октября 2019

Как создать учетную запись службы в хранилище объектов, которая имеет разрешения только для одного сегмента?

Я пытался создать учетную запись службы через веб-консоль, но не могу найти роли, связанные с хранилищем объектов: enter image description here

1 Ответ

1 голос
/ 22 октября 2019

Чтобы ограничить доступ к служебной учетной записи, вам необходимо использовать ACL .

Вам также необходимо использовать YC CLI и AWS CLI.

Позвольте мне объяснить все с самого начала, начиная с создания учетной записи.

# yc iam service-account create name <account name>
id: <service-account id>
folder_id: <folder_id>
created_at: "2019-01-23T45:67:89Z"
name: <account name>

# yc iam access-key create service-account-name <account name>
access_key:
id: <operation id>
service_account_id: <service-account_id>
created_at: "2019-12-34T56:78:90Z"
key_id: <key id>
secret: <secret key>

Сохраните key_id и секретный ключ. Теперь настройте интерфейс командной строки AWS в соответствии с инструкцией в документации для работы с учетной записью администратора.

Создайте ведро и установите для него доступ. Чтобы предоставить доступ, вам нужно установить service_account_id в команде put-bucket-acl поля id.

# aws endpoint-url=https://storage.yandexcloud.net s3  
mb s3://<bucket_name>
make_bucket: <bucket_name>

# aws endpoint-url=https://storage.yandexcloud.net 
s3api put-bucket-acl \
bucket hidden-bucket grant-full-control 
id=<service_account_id> \
grant-read 

PS Единственная проблема заключается в том, что хранилище объектов Яндекса не поддерживает разрешение «ЗАПИСЬ», и вы можете установить полный доступ только для служебной учетной записи. Это означает, что он может редактировать ACL в своем сегменте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...