Wichtige KMS-Richtlinienerklärungen für Fortgeschrittene - AWS IAM Identity Center

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wichtige KMS-Richtlinienerklärungen für Fortgeschrittene

Anmerkung

Kundenverwaltete KMS-Schlüssel für AWS IAM Identity Center sind derzeit in ausgewählten AWS Regionen verfügbar.

Verwenden Sie erweiterte Richtlinienerklärungen für KMS-Schlüssel, um detailliertere Zugriffskontrollen für Ihren vom Kunden verwalteten KMS-Schlüssel zu implementieren. Diese Richtlinien bauen auf dem auf, Grundlegende KMS-Schlüssel- und IAM-Richtlinienerklärungen indem sie Verschlüsselungskontextbedingungen und dienstspezifische Einschränkungen hinzufügen. Bevor Sie entscheiden, ob Sie erweiterte KMS-Schlüsselrichtlinienerklärungen verwenden möchten, sollten Sie sich mit den entsprechenden Überlegungen vertraut machen.

Verwenden Sie den Verschlüsselungskontext, um den Zugriff einzuschränken

Sie können die Verwendung von KMS-Schlüsseln auf eine bestimmte IAM Identity Center-Instanz beschränken, indem Sie Ihren wichtigsten Richtlinienerklärungen eine Bedingung für den Verschlüsselungskontext hinzufügen. Diese Bedingung verwendet den ARN der IAM Identity Center-Instanz und den Identity Store-ARN, um sicherzustellen, dass der Schlüssel nur mit Ihrer beabsichtigten Instance funktioniert. Fügen Sie diese Bedingung zu einer der grundlegenden Richtlinienaussagen hinzu:

Identitätszentrum

"StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}" }

Identity Store

"StringLike": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}" }

Ersetzen Sie das Beispiel ARNs durch Ihre tatsächlichen ARN-Werte. Wenn Sie Hilfe bei der Suche nach diesen Identifikatoren benötigen, finden Sie weitere Informationen unterFinden Sie die erforderlichen Kennungen.

Überlegungen zur Implementierung von Bedingungen für den Verschlüsselungskontext

Bevor Sie die Bedingungen für den Verschlüsselungskontext implementieren, sollten Sie die folgenden Anforderungen überprüfen:

  • DescribeKey Aktion. Der Verschlüsselungskontext kann nicht auf die Aktion „kms:DescribeKey“ angewendet werden, die von IAM Identity Center-Administratoren verwendet werden kann. Schließen Sie bei der Konfiguration Ihrer KMS-Schlüsselrichtlinie den Verschlüsselungskontext für diese spezielle Aktion aus, um den ordnungsgemäßen Betrieb Ihrer IAM Identity Center-Instanz sicherzustellen.

  • Einrichtung einer neuen Instanz. Wenn Sie eine neue IAM Identity Center-Instanz mit einem vom Kunden verwalteten KMS-Schlüssel aktivieren, finden Sie weitere Informationen unterÜberlegungen zu vom Kunden verwalteten KMS-Schlüsseln und erweiterten KMS-Schlüsselrichtlinien.

  • Änderungen der Identitätsquelle. Wenn Sie Ihre Identitätsquelle zu oder von Active Directory ändern, muss dem Verschlüsselungskontext besondere Aufmerksamkeit geschenkt werden. Siehe Überlegungen zur Änderung Ihrer Identitätsquelle.

Richtlinienvorlagen

Wählen Sie je nach Ihren Sicherheitsanforderungen aus diesen erweiterten Richtlinienvorlagen. Sorgen Sie für ein ausgewogenes Verhältnis zwischen detaillierten Zugriffskontrollen und dem damit verbundenen Verwaltungsaufwand.

Themen, die hier behandelt werden:

Wichtige KMS-Richtlinienerklärungen für die Verwendung einer bestimmten IAM Identity Center-Instanz

Diese Richtlinienerklärungen ermöglichen es Administratoren einer bestimmten IAM Identity Center-Instanz, den KMS-Schlüssel zu verwenden und gleichzeitig den Zugriff auf diese Instanz einzuschränken.

Anmerkung

Derzeit können Sie einen vom Kunden verwalteten KMS-Schlüssel nur mit einer Organisationsinstanz von IAM Identity Center verwenden. Der vom Kunden verwaltete Schlüssel muss sich im Verwaltungskonto der AWS Organisation befinden. Dadurch wird sichergestellt, dass der Schlüssel mit einer einzigen IAM Identity Center-Instanz verwendet wird. Der Verschlüsselungskontextmechanismus bietet jedoch einen unabhängigen technischen Schutz für die Verwendung einer einzelnen Instanz.

Zugriffsrichtlinie für Administratoren

Mit der folgenden Richtlinienvorlage können Administratoren einer bestimmten Instanz von IAM Identity Center und dem zugehörigen Identity Store den KMS-Schlüssel verwenden.

So verwenden Sie diese Richtlinie:

  1. Ersetzen Sie die Beispieladministrator-IAM-Prinzipale durch Ihre tatsächlichen Administrator-IAM-Prinzipale

  2. Ersetzen Sie den Beispiel-ARN für eine IAM Identity Center-Instanz durch Ihren tatsächlichen Instanz-ARN

  3. Ersetzen Sie den Beispiel-Identity Store-ARN durch Ihren tatsächlichen Identity Store-ARN

Wenn Sie Hilfe bei der Suche nach den Werten dieser Identifikatoren benötigen, finden Sie weitere Informationen unterFinden Sie die erforderlichen Kennungen.

Nachdem Sie die Vorlage mit Ihren Werten aktualisiert haben, kehren Sie zu zurück, Schritt 2: Bereiten Sie die wichtigsten Richtlinienerklärungen für KMS vor um bei Bedarf weitere wichtige KMS-Richtlinienerklärungen vorzubereiten.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowSpecificIAMIdentityCenterAdminToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "AWS": "${Admin_IAM_principal}" }, "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowSpecificIAMIdentityCenterAdminToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "AWS": "${Admin_IAM_principal}" }, "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}", "kms:ViaService": "identitystore.*.amazonaws.com" } } }, { "Sid": "AllowIAMIdentityCenterAdminToDescribeTheKMSKey", "Effect": "Allow", "Principal": { "AWS": "${Admin_IAM_principal}" }, "Action": "kms:DescribeKey", "Resource": "*" } ] }

Richtlinie für den Zugriff auf Dienste

Die folgende Richtlinienvorlage ermöglicht es einer bestimmten Instanz von IAM Identity Center und dem zugehörigen Identity Store, den KMS-Schlüssel zu verwenden.

So verwenden Sie diese Richtlinie:

  1. Ersetzen Sie den Beispiel-ARN für eine IAM Identity Center-Instanz durch Ihren tatsächlichen Instanz-ARN

  2. Ersetzen Sie den Beispiel-Identity Store-ARN durch Ihren tatsächlichen Identity Store-ARN

Wenn Sie Hilfe bei der Suche nach den Werten dieser Identifikatoren benötigen, finden Sie weitere Informationen unterFinden Sie die erforderlichen Kennungen.

Nachdem Sie die Vorlage mit Ihren Werten aktualisiert haben, kehren Sie zu zurück, Schritt 2: Bereiten Sie die wichtigsten Richtlinienerklärungen für KMS vor um bei Bedarf weitere wichtige KMS-Richtlinienerklärungen vorzubereiten.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowSpecificIAMIdentityCenterToUseTheKMSKey", "Effect": "Allow", "Principal": { "Service": "sso.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}" } } }, { "Sid": "AllowSpecificIAMIdentityStoreToUseTheKMSKey", "Effect": "Allow", "Principal": { "Service": "identitystore.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}" } } }, { "Sid": "AllowIAMIdentityCenterAndIdentityStoreToDescribeKMSKey", "Effect": "Allow", "Principal": { "Service": [ "identitystore.amazonaws.com", "sso.amazonaws.com" ] }, "Action": "kms:DescribeKey", "Resource": "*" } ] }

KMS-Richtlinienanweisungen für die schreibgeschützte Verwendung einer bestimmten IAM Identity Center-Instanz

Diese Richtlinie ermöglicht es Sicherheitsprüfern und anderen Mitarbeitern, die nur Lesezugriff auf IAM Identity Center benötigen, den KMS-Schlüssel zu verwenden.

So verwenden Sie diese Richtlinie:

  1. Ersetzen Sie das Beispiel für schreibgeschützte Administrator-IAM-Prinzipale durch Ihre tatsächlichen Administrator-IAM-Prinzipale

  2. Ersetzen Sie den Beispiel-ARN für eine IAM Identity Center-Instanz durch Ihren tatsächlichen Instanz-ARN

  3. Ersetzen Sie den Beispiel-Identity Store-ARN durch Ihren tatsächlichen Identity Store-ARN

  4. Wenn Sie delegierte Administration verwenden, finden Sie weitere Informationen Schritt 4: Konfigurieren Sie IAM-Richtlinien für die kontoübergreifende Verwendung des KMS-Schlüssels

Wenn Sie Hilfe bei der Suche nach den Werten dieser Bezeichner benötigen, finden Sie unter. Finden Sie die erforderlichen Kennungen

Nachdem Sie die Vorlage mit Ihren Werten aktualisiert haben, kehren Sie zu zurück, Schritt 2: Bereiten Sie die wichtigsten Richtlinienerklärungen für KMS vor um bei Bedarf weitere wichtige KMS-Richtlinienerklärungen vorzubereiten.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowReadOnlyAccessToIdentityCenterAPI", "Effect": "Allow", "Principal": { "AWS": "${Admin_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowReadOnlyAccessToIdentityStoreAPI", "Effect": "Allow", "Principal": { "AWS": "${Admin_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}" } } } ] }

Verfeinerte grundlegende KMS-Richtlinienerklärungen für die Verwendung AWS verwalteter Anwendungen

Diese Richtlinienvorlagen bieten eine detailliertere Kontrolle darüber, welche AWS verwalteten Anwendungen Ihren KMS-Schlüssel verwenden können.

Anmerkung

Einige AWS verwaltete Anwendungen können nicht mit IAM Identity Center verwendet werden, das mit einem vom Kunden verwalteten KMS-Schlüssel konfiguriert ist. Sehen Sie sich AWS verwaltete Anwendungen an, die Sie mit IAM Identity Center verwenden können.

Grundlegende KMS-Schlüssel- und IAM-Richtlinienerklärungen für die Verwendung verwalteter Anwendungen AWSSie ermöglichen es jeder AWS verwalteten Anwendung von jedem Konto in derselben AWS Organisation, den KMS-Schlüssel zu verwenden. Verwenden Sie diese verfeinerten Richtlinien, um den Zugriff wie folgt einzuschränken:

  • Principal des Anwendungsdienstes

  • Anwendungsinstanz ARNs

  • AWS Konto IDs

  • Verschlüsselungskontext für bestimmte IAM Identity Center-Instanzen

Anmerkung

Ein Service Principal ist eine eindeutige Kennung für einen AWS Service, die normalerweise als servicename.amazonaws.com formatiert ist (z. B. elasticmapreduce.amazonaws.com für Amazon EMR).

Nach Konto einschränken

Diese Vorlage für eine KMS-Schlüsselrichtlinie ermöglicht es einer AWS verwalteten Anwendung in bestimmten AWS Konten, den KMS-Schlüssel mithilfe einer bestimmten IAM Identity Center-Instanz zu verwenden.

So verwenden Sie diese Richtlinie:

  1. Ersetzen Sie den Beispiel-Serviceprinzipal durch Ihren tatsächlichen Anwendungsdienstprinzipal

  2. Ersetzen Sie das Beispielkonto IDs durch Ihr aktuelles Konto IDs

  3. Ersetzen Sie den Beispiel-Identity Store-ARN durch Ihren tatsächlichen Identity Store-ARN

  4. Ersetzen Sie den Beispiel-ARN für eine IAM Identity Center-Instanz durch Ihren tatsächlichen Instanz-ARN

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowServiceInSpecificAccountsToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "Service": "${app_SPN_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:sourceAccount": [ "${account_id_1}", "${account_id_2}" ] }, "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } }, { "Sid": "AllowServiceInSpecificAccountsToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "Service": "${app_SPN_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:sourceAccount": [ "${account_id_1}", "${account_id_2}" ] }, "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } } ] }

Nach Anwendungsinstanz einschränken

Diese Vorlage für eine KMS-Schlüsselrichtlinie ermöglicht es einer bestimmten AWS verwalteten Anwendungsinstanz, den KMS-Schlüssel mithilfe einer bestimmten IAM Identity Center-Instanz zu verwenden.

So verwenden Sie diese Richtlinie:

  1. Ersetzen Sie den Beispiel-Serviceprinzipal durch Ihren tatsächlichen Anwendungsdienstprinzipal

  2. Ersetzen Sie den ARN der Beispielanwendung durch den ARN Ihrer tatsächlichen Anwendungsinstanz

  3. Ersetzen Sie den Beispiel-Identity Store-ARN durch Ihren tatsächlichen Identity Store-ARN

  4. Ersetzen Sie den Beispiel-ARN für eine IAM Identity Center-Instanz durch Ihren tatsächlichen Instanz-ARN

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowSpecificAppInstanceToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "Service": "${app_SPN_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceARN": "${app_arn}" }, "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "${identity_center_arn}" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } }, { "Sid": "AllowSpecificAppInstanceToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "Service": "${app_SPN_IAM_principal}" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceARN": "${app_arn}" }, "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "${identity_store_arn}" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } } ] }