Wie wende ich eine ressourcenbasierte Richtlinie auf ein AWS Secrets Manager-Geheimnis an?

Lesedauer: 2 Minute
0

Wie kann ich den Zugriff auf AWS Secrets Manager-Geheimnisse mithilfe ressourcenbasierter Richtlinien kontrollieren?

Kurzbeschreibung

Mit ressourcenbasierten Richtlinien können Sie den Benutzerzugriff auf ein Geheimnis festlegen und festlegen, welche Aktionen ein AWS Identity and Access Management (IAM) -Benutzer ausführen kann.

Hinweis: Ein Geheimnis wird mit Secrets Manager als Ressource definiert.

Häufige Anwendungsfälle für ressourcenbasierte Secrets Manager-Richtlinien sind:

In diesem Beispiel für eine ressourcenbasierte Richtlinie gibt das IAM-Element Effect an, ob die Anweisung zu Zulassen oder zu einer expliziten Ablehnung führt. Das IAM-Aktionselement definiert die Aktionen, die mit dem Secret ausgeführt werden. Das IAM-Ressourcenelement ist das Geheimnis, an das die Richtlinie angehängt ist. Das IAM-Principal-Element gibt den Benutzer an, der berechtigt ist, Aktionen mit dem Secret auszuführen.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "secretsmanager:*",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

Lösung

Folgen Sie diesen Anweisungen, um eine ressourcenbasierte Richtlinie in Secrets Manager anzuwenden:

Hinweis: Wenn Sie beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste AWS CLI-Version verwenden.

1.    Folgen Sie den Anweisungen, um ein Geheimnis zu erstellen. Beachten Sie den geheimen ARN.

2.    Kopieren Sie diese Richtlinie, fügen Sie sie in Ihren bevorzugten Texteditor ein und speichern Sie sie dann als JSON-Datei wie my_explicit_deny_policy.json.

{ "Version": "2012-10-17",
"Statement": [
    {
      "Effect": "Deny",
      "Action": "secretsmanager:GetSecretValue",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

3.    Verwenden Sie den AWS-CLI-Befehl put-resource-policy, um eine Ressourcenrichtlinie für das Geheimnis festzulegen, um IAM-Benutzer Mary ausdrücklich daran zu hindern, den geheimen Wert abzurufen.

aws secretsmanager put-resource-policy --secret-id My_Resource_Secret --resource-policy file:// My_explicit_deny_Policy.json

4.    Sie erhalten eine Ausgabe, die der folgenden ähnelt:

{
"ARN": "arn:aws:secretsmanager:<your region>:123456789999:secret:My_Resource_Secret",
"Name": "My_Resource_Secret"
}

Hinweis: Die Entschlüsselungsberechtigung des AWS Key Management Service (AWS KMS) ist nur erforderlich, wenn Sie AWS KMS-Schlüssel verwenden, um Ihr Geheimnis zu verschlüsseln. Ein Geheimnis kann von einem IAM-Principal in einem Drittanbieterkonto nicht abgerufen werden, wenn das Geheimnis mit dem standardmäßigen AWS-KMS-Schlüssel verschlüsselt ist.

Weitere Informationen finden Sie unter Verwenden von ressourcenbasierten Richtlinien für Secrets Manager.


AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren