Отключить AWS S3 Management Console - PullRequest
2 голосов
/ 11 июля 2020

Можно ли отключить консоль управления AWS S3 по соображениям безопасности?

Мы не хотим, чтобы кто-либо, включая пользователей root / admin, имел доступ к файлам клиентов непосредственно из AWS S3. Нам нужно просто иметь программный c доступ к файлам, хранящимся в S3.

Если это невозможно, можно ли прекратить перечисление каталогов внутри корзины для всех пользователей?

Ответы [ 2 ]

1 голос
/ 11 июля 2020

Да, можно отключить консоль управления: Не сообщать пользователям пароль.

При создании пользователей IAM есть два способа предоставить учетные данные:

  • Учетные данные для входа (для консоли)
  • Ключ доступа (для вызовов API)

Дайте пользователям только ключ доступа, и они не смогут для входа в консоль.

Однако обратите внимание, что при использовании консоли управления пользователи имеют точно такие же разрешения, как и при использовании ключа доступа . Таким образом, если они могут сделать это в консоли, то они могут сделать это через вызов API (если у них есть ключ доступа).

Если ваша цель - запретить кому-либо доступ к файлам клиентов, вы можете добавьте политику сегмента с Deny на s3:* для сегмента, где Принципал не является клиентом.

Обратите внимание, однако, что учетная запись Root может удалить такую ​​политику.

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

1 голос
/ 11 июля 2020

Это сложно реализовать, однако следующие должны соответствовать требованиям.

Programmati c Только доступ

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

Если вы находитесь в AWS, вы должны использовать роли IAM и VP C конечная точка для подключения к службе S3. Оба из них поддерживают возможность управления доступом в рамках вашей политики корзины сегментов S3.

Вы могли бы использовать это, чтобы запретить действия List *, где источником является , а не конечная точка VP C . Вы также можете запретить, если это не конкретное c подмножество ролей .

Это работает для всех программных c вариантов использования и для людей, которые входят в систему как пользователь IAM с консоли. , однако этот не запрещает доступ пользователю root.

Также имейте в виду, что для любого пользователя IAM / роли IAM у них нет доступа, если вы явно не дадите им это с помощью политики IAM.

Запрет доступа к Root пользователю

В настоящее время существует только один способ запретить доступ пользователю root AWS учетная запись (хотя вы должны поделиться этими учетными данными с кем-либо, даже в вашей компании), поскольку она использует политику управления службами.

Для этого учетная запись должна быть частью организации AWS (как организационная единица). Если / однажды вы создадите SCP, который отказывает в доступе к принципалу root для определенных c действий, которые вы хотите .

Пример этой политики для вас: быть

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "RestrictS3ForRoot",
      "Effect": "Deny",
      "Action": [
        "s3:List*"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringLike": {
          "aws:PrincipalArn": [
            "arn:aws:iam::*:root"
          ]
        }
      }
    }
  ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...