Создайте политику корзины S3 для ограничения доступа на основе ключа доступа для частного облака - PullRequest
1 голос
/ 04 августа 2020

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

1 Ответ

0 голосов
/ 04 августа 2020

Вы не можете сделать это с помощью ключа IAM, но можете с помощью принципала, который в данном случае является пользователем IAM. (ы) упомянутые. Используйте это вместе, чтобы предотвратить случайное блокирование возможности управлять корзиной.

Ниже приведен пример политики корзины, использующей это

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Sid": "statement1",
         "Effect": "Allow",
         "Principal": {
            "AWS": "arn:aws:iam::123456789:user/$USERNAME"
         },
         "Action": [
            "s3:Put*",
            "s3:Get*",
            "s3:List*"
         ],
         "Resource": [
            "arn:aws:s3:::awsexamplebucket1",
            "arn:aws:s3:::awsexamplebucket1/*"
         ]
      },
      {
         "Sid": "statement1",
         "Effect": "Deny",
         "NotPrincipal": {
            "AWS": "arn:aws:iam::123456789:user/$USERNAME"
         },
         "Action": [
            "s3:Put*",
            "s3:Get*",
            "s3:List*"
         ],
         "Resource": [
            "arn:aws:s3:::awsexamplebucket1",
            "arn:aws:s3:::awsexamplebucket1/*"
         ]
      }
   ]
}
...