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.
Manuelles Erstellen einer IAM Rolle für SQL Server Audit
Wenn Sie eine neue Option erstellen, AWS Management Console erstellt sie in der Regel die IAM Rolle und die IAM Vertrauensrichtlinie für Sie. Sie können jedoch manuell eine neue IAM Rolle zur Verwendung mit SQL Serveraudits erstellen, sodass Sie sie an Ihre zusätzlichen Anforderungen anpassen können. Dazu erstellen Sie eine IAM Rolle und delegieren Berechtigungen, sodass der RDS Amazon-Service Ihren Amazon S3-Bucket verwenden kann. Wenn Sie diese IAM Rolle erstellen, fügen Sie Vertrauens- und Berechtigungsrichtlinien hinzu. Die Vertrauensrichtlinie ermöglicht es AmazonRDS, diese Rolle zu übernehmen. Die Berechtigungsrichtlinie definiert die Aktionen, die über diese Rolle ausgeführt werden können. Weitere Informationen finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen für einen AWS Dienst im AWS Identity and Access Management-Benutzerhandbuch.
Sie können anhand der Beispiele in diesem Abschnitt die benötigten Vertrauensbeziehungen und Berechtigungsrichtlinien erstellen.
Das folgende Beispiel zeigt eine Vertrauensbeziehung für SQL Server Audit. Es verwendet den Service Principalrds.amazonaws.com
, um das Schreiben RDS in den S3-Bucket zu ermöglichen. Ein Service-Prinzipal ist eine Kennung, die verwendet wird, um einem Service Berechtigungen zu erteilen. Jedes Mal, wenn Sie auf diese rds.amazonaws.com
Weise Zugriff gewähren, RDS erlauben Sie, eine Aktion in Ihrem Namen auszuführen. Weitere Informationen zu Service Principals finden Sie unter AWS JSONPolicy Elements: Principal.
Beispiel Vertrauensverhältnis für SQL Server Audit
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "
rds.amazonaws.com
" }, "Action": "sts:AssumeRole" } ] }
Wir empfehlen die Verwendung der globalen Bedingungskontextschlüssel aws:SourceArn
und aws:SourceAccount
in ressourcenbasierten Vertrauensbeziehungen, um die Berechtigungen des Services auf eine bestimmte Ressource zu beschränken. Dies ist der effektivste Weg, um sich vor dem verwirrtes Stellvertreterproblem zu schützen.
Sie können beide globalen Bedingungskontextschlüssel verwenden und der Wert aws:SourceArn
enthält die Konto-ID. Stellen Sie in diesen Fällen sicher, dass der Wert aws:SourceAccount
und das Konto im Wert aws:SourceArn
dieselbe Konto-ID verwenden, wenn sie in derselben Anweisung verwendet werden.
-
Verwenden von
aws:SourceArn
wenn Sie einen serviceübergreifenden Zugriff für eine einzelne Ressource wünschen. -
Verwenden von
aws:SourceAccount
wenn Sie zulassen möchten, dass eine Ressource in diesem Konto mit der betriebsübergreifenden Verwendung verknüpft wird.
Stellen Sie in der Vertrauensstellung sicher, dass Sie den aws:SourceArn
globalen Bedingungskontextschlüssel mit dem vollständigen Amazon-Ressourcennamen (ARN) der Ressourcen verwenden, die auf die Rolle zugreifen. Stellen Sie bei SQL Server Audit sicher, dass Sie sowohl die DB-Optionsgruppe als auch die DB-Instances einbeziehen, wie im folgenden Beispiel gezeigt.
Beispiel Vertrauensstellung mit globalem Bedingungskontextschlüssel für SQL Server Audit
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": [ "arn:aws:rds:
Region
:my_account_ID
:db:db_instance_identifier
", "arn:aws:rds:Region
:my_account_ID
:og:option_group_name
" ] } } } ] }
Im folgenden Beispiel einer Berechtigungsrichtlinie für SQL Server Audit geben wir einen ARN für den Amazon S3 S3-Bucket an. Sie können sie verwendenARNs, um ein bestimmtes Konto, einen bestimmten Benutzer oder eine bestimmte Rolle zu identifizieren, für die Sie Zugriff gewähren möchten. Weitere Informationen zur Verwendung ARNs finden Sie unter Amazon-Ressourcennamen (ARNs).
Beispiel Berechtigungsrichtlinie für SQL Server Audit
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketACL", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
" }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/key_prefix
/*" } ] }
Anmerkung
Die s3:ListAllMyBuckets
Aktion ist erforderlich, um zu überprüfen, ob dasselbe AWS Konto sowohl den S3-Bucket als auch die SQL Server-DB-Instance besitzt. Die Aktion listet die Namen der Buckets in dem Konto auf.
S3-Bucket-Namespaces sind global. Wenn Sie Ihren Bucket versehentlich löschen, kann ein anderer Benutzer einen Bucket mit demselben Namen in einem anderen Konto erstellen. Anschließend SQL werden die Server Audit-Daten in den neuen Bucket geschrieben.