AWS Secret Manager - предоставляет доступ всем, если задан только определенный список участников.

Я вижу, что здесь есть правило оценки политики для Secrets Manager.

https://docs.aws.amazon.com/secretsmanager/latest/userguide/determine-acccess_understanding-policy-evaluation.html

У меня есть политика, прикрепленная к ресурсу диспетчера секретов, как показано ниже

      {
  "Version" : "2012-10-17",
  "Statement" : [ {
    "Sid" : "minimumNeeded",
    "Effect" : "Allow",
    "Principal" : {
      "AWS" : [ "arn:aws:sts::SLJFLSDKFJLSJDKF:assumed-role/xxx/USER1", "arn:aws:sts::SLJFLSDKFJLSJDKF:assumed-role/xxx/USER2" ]
    },
    "Action" : "secretsmanager:*",
    "Resource" : "*"
  }]
}

Когда другой пользователь пытался выполнить put-secret-valueот aws CLI, нацеленного на указанный выше ресурс, он работал, и указанная выше политика не остановила их. Как я понимаю из приведенного выше документа AWS:

  1. ПОЛЬЗОВАТЕЛЬ2 будет иметь РАЗРЕШЕНИЕ, если роль XXX явно разрешила операции диспетчера секретов.

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

С уважением,

2 ответа

При доступе к ресурсу в той же учетной записи, если либо политика ресурсов явно предоставляет доступ, либо политика пользователей / ролей IAM явно предоставляет доступ, доступ предоставляется.

При использовании политик ресурсов для доступа между учетными записями как политика IAM пользователя / роли, так и политика ресурсов должны предоставлять доступ.

Кроме того, если где-либо есть инструкция DENY (IAM или политика ресурсов), доступ запрещен . Если доступ нигде явно не предоставлен, он запрещен по умолчанию (локальная учетная запись или перекрестная учетная запись).

Вы не указали, находятся ли пользователи в одной учетной записи или в разных учетных записях, но похоже, что они находятся в одной учетной записи. Если пользователь находится в той же учетной записи, либо ему не должен быть предоставлен доступ в их политике IAM, либо в политике ресурсов должен быть явный запрос deny. Вы также можете изменить свою политику на отказ в сочетании с объявлением «не принципала». Тогда только разрешенные участники могут получить доступ к секрету, если это разрешено их политикой пользователей / ролей IAM.

I think I would need to do NotPrincipal with DENY as mentioned in the docs

https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notprincipal.html

Другие вопросы по тегам