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.
Zugreifen auf Amazon S3 S3-Buckets mit Redshift Spectrum
Im Allgemeinen unterstützt Amazon Redshift Spectrum kein erweitertes VPC-Routing mit bereitgestellten Clustern, obwohl ein bereitgestellter Cluster externe Tabellen von Amazon S3 abfragen kann, wenn erweitertes VPC-Routing aktiviert ist.
Das erweiterte VPC-Routing von Amazon Redshift sendet bestimmten Datenverkehr über Ihre VPC, was bedeutet, dass der gesamte Datenverkehr zwischen Ihrem Cluster und Ihren Amazon S3 S3-Buckets gezwungen ist, Ihre Amazon VPC zu passieren. Da Redshift Spectrum auf AWS verwalteten Ressourcen läuft, die Amazon Redshift gehören, sich aber außerhalb Ihrer VPC befinden, verwendet Redshift Spectrum kein erweitertes VPC-Routing.
Der Datenverkehr zwischen Redshift Spectrum und Amazon S3 wird sicher über das AWS private Netzwerk außerhalb Ihrer VPC geleitet. Der Flugverkehr wird mit dem Amazon Signature Version 4-Protokoll (SIGv4) signiert und mit HTTPS verschlüsselt. Dieser Datenverkehr wird auf der Grundlage der IAM-Rolle autorisiert, die Ihrem Amazon-Redshift-Cluster angefügt ist. Um den Redshift-Spectrum-Datenverkehr weiter zu verwalten, können Sie die IAM-Rolle Ihres Clusters und Ihre an den Amazon-S3-Bucket angehängte Richtlinie ändern. Möglicherweise müssen Sie Ihre VPC auch so konfigurieren, dass Ihr Cluster auf Athena zugreifen AWS Glue kann, wie im Folgenden beschrieben.
Da Enhanced VPC Routing sich darauf auswirkt, wie Amazon Redshift auf andere Ressourcen zugreift, schlagen Abfragen möglicherweise fehl, wenn Ihre VPC nicht ordnungsgemäß konfiguriert wurde. Weitere Informationen finden Sie unter Steuerung des Netzwerkverkehrs mit erweitertem Redshift-VPC-Routing. Hier wird die Erstellung eines VPC-Endpunkts, eines NAT-Gateways und anderer Netzwerkressourcen zum Umleiten des Datenverkehrs auf Ihre Amazon-S3-Buckets ausführlicher beschrieben.
Anmerkung
Amazon Redshift Serverless unterstützt Enhanced VPC Routing für Abfragen an externe Tabellen in Amazon S3. Weitere Informationen zur Konfiguration finden Sie unter Daten aus Amazon S3 laden im Amazon Redshift Serverless Getting Started Guide.
Konfiguration der Berechtigungsrichtlinien bei Verwendung von Amazon Redshift Spectrum
Beachten Sie bei der Verwendung von Redshift Spectrum Folgendes:
Amazon S3 S3-Bucket-Zugriffsrichtlinien und IAM-Rollen
Sie können den Zugriff auf Daten in Ihren Amazon S3 S3-Buckets kontrollieren, indem Sie eine an den Bucket angehängte Bucket-Richtlinie und eine IAM-Rolle verwenden, die einem bereitgestellten Cluster zugeordnet ist.
Redshift Spectrum auf bereitgestellten Clustern kann nicht auf Daten zugreifen, die in Amazon-S3-Buckets gespeichert sind, wenn diese eine Bucket-Richtlinie verwenden, die den Zugriff auf bestimmte VPC-Endpunkte beschränkt. Verwenden Sie stattdessen eine Bucket-Richtlinie, die den Zugriff nur auf bestimmte Prinzipale beschränkt, z. B. auf ein bestimmtes Konto oder bestimmte AWS Benutzer.
Verwenden Sie für die IAM-Rolle, die Zugriff auf den Bucket erhält, eine Vertrauensstellung, die die Annahme der Rolle nur durch den Amazon-Redshift-Service-Prinzipal erlaubt. Wenn die Rolle Ihrem Cluster angefügt ist, kann sie nur im Kontext von Amazon Redshift verwendet und nicht außerhalb des Clusters freigegeben werden. Weitere Informationen finden Sie unter Einschränken des Zugriffs auf IAM-Rollen. Es kann auch eine Service-Kontrollrichtlinie (SCP) verwendet werden, um die Rolle weiter einzuschränken. Weitere Informationen finden Sie unter Verhindern, dass IAM-Benutzer und -Rollen bestimmte Änderungen vornehmen, mit Ausnahme für eine angegebene Administratorrolle im AWS Organizations -Benutzerhandbuch.
Anmerkung
Um Redshift Spectrum verwenden zu URLs können, dürfen keine IAM-Richtlinien vorhanden sein, die die Verwendung von Amazon S3 vorsigniert blockieren. Die von Amazon Redshift Spectrum URLs vorsignierten Dateien sind 1 Stunde gültig, sodass Amazon Redshift genügend Zeit hat, um alle Dateien aus dem Amazon S3 S3-Bucket zu laden. Für jede von Redshift Spectrum gescannte Datei wird eine eindeutige vorsignierte URL generiert. Achten Sie bei Bucket-Richtlinien, die eine s3:signatureAge
Aktion beinhalten, darauf, den Wert auf mindestens 3.600.000 Millisekunden festzulegen.
Die folgende Beispiel-Bucket-Richtlinie erlaubt den Zugriff auf den angegebenen Bucket nur aus Datenverkehr, der von Redshift Spectrum stammt, das einem AWS Konto 123456789012
gehört.
{
"Version": "2012-10-17",
"Statement": [{
"Sid": "BucketPolicyForSpectrum",
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws:iam::123456789012:role/redshift"]
},
"Action": ["s3:GetObject", "s3:List*"],
"Resource": ["arn:aws:s3:::amzn-s3-demo-bucket/*"],
"Condition": {
"StringEquals": {
"aws:UserAgent": "AWS Redshift/Spectrum"
}
}
}]
}
Berechtigungen für die Übernahme der IAM-Rolle
Die Ihrem Cluster angefügte Rolle sollte über eine Vertrauensstellung verfügen, die die Annahme der Rolle nur dem Amazon-Redshift-Service erlaubt, wie nachfolgend gezeigt.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "redshift.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Sie können der Cluster-Rolle eine Richtlinie hinzufügen, die den COPY- und UNLOAD-Zugriff auf einen bestimmten Bucket COPY verhindert. Die folgende Richtlinie gestattet Datenverkehr zu dem angegebenen Bucket nur von Redshift Spectrum.
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": ["s3:Get*", "s3:List*"],
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*",
"Condition": {"StringEquals": {"aws:UserAgent": "AWS Redshift/Spectrum"}}
}]
}
Weitere Informationen finden Sie unter IAM-Richtlinien für Redshift Spectrum im Datenbankentwicklerhandbuch zu Amazon Redshift.
Protokollieren und Prüfen des Amazon-S3-Zugriffs
Ein Vorteil der Verwendung von Enhanced VPC Routing für Amazon Redshift ist, dass der gesamte COPY- und UNLOAD-Datenverkehr in den VPC-Flow-Protokollen protokolliert wird. Von Redshift Spectrum stammender Datenverkehr zu Amazon S3 wird nicht durch Ihre VPC geleitet und wird daher auch nicht in den VPC-Flow-Protokollen aufgezeichnet. Wenn Redshift Spectrum auf Daten in Amazon S3 zugreift, führt es diese Vorgänge im Kontext des AWS Kontos und der jeweiligen Rollenrechte aus. Sie können den Amazon-S3-Zugriff mithilfe von Serverzugriffsprotokollierung in AWS CloudTrail und Amazon S3 protokollieren und prüfen.
Stellen Sie sicher, dass die S3-IP-Bereiche zu Ihrer Zulassungsliste hinzugefügt werden. Weitere Informationen zu den erforderlichen S3-IP-Bereichen finden Sie unter Netzwerkisolierung.
AWS CloudTrail Protokolle
Um den gesamten Zugriff auf Objekte in Amazon S3, einschließlich des Redshift Spectrum-Zugriffs, nachzuverfolgen, aktivieren CloudTrail Sie die Protokollierung für Amazon S3 S3-Objekte.
Sie können CloudTrail damit Kontoaktivitäten in Ihrer gesamten AWS Infrastruktur anzeigen, suchen, herunterladen, archivieren, analysieren und darauf reagieren. Weitere Informationen finden Sie unter Erste Schritte mit CloudTrail.
Verfolgt standardmäßig nur CloudTrail Aktionen auf Bucket-Ebene. Um Aktionen auf Objektebene (z. B. GetObject
) zu verfolgen, aktivieren Sie Daten- und Verwaltungsereignisse für jeden protokollierten Bucket.
Amazon-S3-Server-Zugriffsprotokollierung
Die Server-Zugriffsprotokollierung bietet detaillierte Aufzeichnungen über die Anforderungen, die an einen Bucket gestellt wurden. Die Zugriffsprotokollinformationen können für Sicherheits- und Zugriffsüberprüfungen nützlich sein. Weitere Informationen finden Sie unter So aktivieren Sie die Server-Zugriffsprotokollierung im Benutzerhandbuch zu Amazon Simple Storage Service.
Weitere Informationen finden Sie im AWS Sicherheits-Blogbeitrag How to Use Bucket Policies and Apply Defense-in-Depth, um Ihre Amazon S3 S3-Daten zu schützen
Zugang zu AWS Glue oder Amazon Athena
Redshift Spectrum greift auf Ihren Datenkatalog in AWS Glue oder Athena zu. Eine weitere Option ist die Verwendung eines speziellen Hive-Metastores für Ihren Datenkatalog.
Um den Zugriff auf AWS Glue oder Athena zu aktivieren, konfigurieren Sie Ihre VPC mit einem Internet-Gateway oder NAT-Gateway. Konfigurieren Sie Ihre VPC-Sicherheitsgruppen so, dass ausgehender Datenverkehr zu den öffentlichen Endpunkten für AWS Glue und Athena zugelassen wird. Alternativ können Sie einen VPC-Schnittstellen-Endpunkt konfigurieren, für den AWS Glue Zugriff auf Ihren AWS Glue Data Catalog. Wenn Sie einen VPC-Schnittstellenendpunkt verwenden, AWS Glue erfolgt die Kommunikation zwischen Ihrer VPC und innerhalb des AWS Netzwerks. Weitere Informationen finden Sie unter Erstellen eines Schnittstellenendpunkts.
Sie können in Ihrer VPC die folgenden Pfade konfigurieren:
-
Internet-Gateway — Um eine Verbindung zu AWS Diensten außerhalb Ihrer VPC herzustellen, können Sie ein Internet-Gateway an Ihr VPC-Subnetz anschließen, wie im Amazon VPC-Benutzerhandbuch beschrieben. Um ein Internet-Gateway verwenden zu können, muss ein bereitgestellter Cluster über eine öffentliche IP-Adresse verfügen, damit andere Dienste mit ihm kommunizieren können.
-
NAT-Gateway — Um eine Verbindung zu einem Amazon S3 S3-Bucket in einer anderen AWS Region oder zu einem anderen Service innerhalb des AWS Netzwerks herzustellen, konfigurieren Sie ein Network Address Translation (NAT) -Gateway, wie im Amazon VPC-Benutzerhandbuch beschrieben. Sie können mit dieser Konfiguration auch auf eine Host-Instance außerhalb des AWS -Netzwerks zugreifen.
Weitere Informationen finden Sie unter Steuerung des Netzwerkverkehrs mit erweitertem Redshift-VPC-Routing.