Verbinden mit Amazon Redshift Serverless - Amazon Redshift

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.

Verbinden mit Amazon Redshift Serverless

Sobald Sie Ihre Amazon-Redshift-Serverless-Instance eingerichtet haben, können Sie eine Verbindung mit verschiedenen Methoden herstellen. Diese sind unten beschrieben. Wenn Sie mehrere Teams oder Projekte haben und die Kosten separat verwalten möchten, können Sie separate AWS-Konten verwenden.

Eine Liste, AWS-Regionen wo Amazon Redshift Serverless verfügbar ist, finden Sie in den Endpunkten, die für die Redshift Serverless API aufgeführt sind. Allgemeine Amazon Web Services-Referenz

Amazon Redshift Serverless stellt eine Verbindung zur serverlosen Umgebung AWS-Konto in Ihrer aktuellen Umgebung her. AWS-Region Amazon Redshift Serverless wird in einer VPC innerhalb der Portbereiche 5431–5455 und 8191–8215 ausgeführt. Der Standardwert ist 5439. Derzeit können Sie Ports nur mit der API-Operation UpdateWorkgroup und der Operation ändern. AWS CLI update-workgroup

Verbinden mit Amazon Redshift Serverless

Sie können eine Verbindung mit einer Datenbank (namens dev) in Amazon Redshift Serverless mit der folgenden Syntax herstellen.

workgroup-name.account-number.aws-region.redshift-serverless.amazonaws.com:port/dev

Die folgende Verbindungszeichenfolge gibt beispielsweise die Region us-east-1 an.

default.123456789012.us-east-1.redshift-serverless.amazonaws.com:5439/dev

Verbinden mit Amazon Redshift Serverless über JDBC-Treiber

Sie können eine der folgenden Methoden verwenden, um mit dem von Amazon RedShift bereitgestellten JDBC-Treiber Version 2 eine Verbindung mit Amazon Redshift Serverless mit Ihrem bevorzugten SQL-Client herzustellen.

Verwenden Sie die folgende Syntax, um eine Verbindung mit Anmeldeinformationen für die Datenbankauthentifizierung unter Verwendung des JDBC-Treibers Version 2.1.x oder höher herzustellen. Die Portnummer ist optional; falls nicht enthalten, verwendet Amazon Redshift Serverless standardmäßig die Portnummer 5439. Sie können zu einem anderen Port aus dem Portbereich 5431–5455 oder 8191–8215 wechseln. Um den Standardport für einen serverlosen Endpunkt zu ändern, verwenden Sie die AWS CLI Amazon Redshift Redshift-API.

jdbc:redshift://workgroup-name.account-number.aws-region.redshift-serverless.amazonaws.com:5439/dev

Die folgende Verbindungszeichenfolge gibt beispielsweise die Arbeitsgruppen-Standardeinstellung, die Konto-ID 123456789012 und die Region us-east-2 an.

jdbc:redshift://default.123456789012.us-east-2.redshift-serverless.amazonaws.com:5439/dev

Verwenden Sie die folgende Syntax, um eine Verbindung mit IAM über den JDBC-Treiber Version 2.1.x oder höher herzustellen. Die Portnummer ist optional; falls nicht enthalten, verwendet Amazon Redshift Serverless standardmäßig die Portnummer 5439. Sie können zu einem anderen Port aus dem Portbereich 5431–5455 oder 8191–8215 wechseln. Um den Standardport für einen serverlosen Endpunkt zu ändern, verwenden Sie die AWS CLI Amazon Redshift Redshift-API.

jdbc:redshift:iam://workgroup-name.account-number.aws-region.redshift-serverless.amazonaws.com:5439/dev

Die folgende Verbindungszeichenfolge gibt beispielsweise die Arbeitsgruppen-Standardeinstellung, die Konto-ID 123456789012 und die Region us-east-2 an.

jdbc:redshift:iam://default.123456789012.us-east-2.redshift-serverless.amazonaws.com:5439/dev

Verwenden Sie die folgende Syntax für ODBC.

Driver={Amazon Redshift (x64)}; Server=workgroup-name.account-number.aws-region.redshift-serverless.amazonaws.com; Database=dev

Wenn Sie eine ältere JDBC-Treiberversion verwenden als 2.1.0.9 und eine Verbindung mit IAM herstellen, müssen Sie die folgende Syntax verwenden.

jdbc:redshift:iam://redshift-serverless-<name>:aws-region/database-name

Die folgende Verbindungszeichenfolge gibt beispielsweise den Workgroup-Standard und den Wert AWS-Region us-east-1 an.

jdbc:redshift:iam://redshift-serverless-default:us-east-1/dev

Weitere Informationen zu Treibern finden Sie unter Konfigurieren von Verbindungen in Amazon Redshift.

So finden Sie die JDBC- und die ODBC-Verbindungszeichenfolge

Sie benötigen die JDBC- oder ODBC-Verbindungszeichenfolge, um mit Ihrem SQL-Client-Tool eine Verbindung zu Ihrer Arbeitsgruppe herzustellen. Sie finden die Verbindungszeichenfolge in der Amazon-Redshift-Serverless-Konsole auf der Detailseite einer Arbeitsgruppe.

So finden Sie die Verbindungszeichenfolge für eine Arbeitsgruppe
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon Redshift Redshift-Konsole unter https://console.aws.amazon.com/redshiftv2/.

  2. Wählen Sie im Navigationsmenü Redshift Serverless aus.

  3. Wählen Sie im Navigationsmenü Arbeitsgruppenkonfiguration und dann den Namen der Arbeitsgruppe in der Liste aus, um die zugehörigen Details anzuzeigen.

  4. Die JDBC-URL- und ODBC-URL-Verbindungszeichenfolgen finden Sie zusammen mit zusätzlichen Details im Abschnitt Allgemeine Informationen. Jede Zeichenfolge basiert auf der AWS Region, in der die Arbeitsgruppe ausgeführt wird. Wählen Sie das Symbol neben der entsprechenden Verbindungszeichenfolge aus, um die Verbindungszeichenfolge zu kopieren.

Verbinden mit Amazon Redshift Serverless über die Daten-API

Sie können die Amazon-Redshift-Daten-API auch verwenden, um eine Verbindung mit Amazon Redshift Serverless herzustellen. Verwenden Sie in Ihren AWS CLI Aufrufen den workgroup-name Parameter anstelle des cluster-identifier Parameters.

Weitere Informationen zur Daten-API finden Sie unter Verwenden der Amazon Redshift Data API. Beispielcode, der die Daten-API in Python aufruft, und andere Beispiele finden Sie unter Erste Schritte mit der Redshift Data API und in den use-cases Ordnern quick-start und unter. GitHub

Verbinden mit Amazon Redshift Serverless über SSL

Konfigurieren einer sicheren Verbindung zu Amazon Redshift Serverless

Um SSL-Verbindungen zu unterstützen, erstellt und installiert Redshift Serverless für jede Arbeitsgruppe ein AWS Certificate Manager (ACM) ausgestelltes SSL-Zertifikat. ACM-Zertifikaten wird von den meisten Betriebssystemen, Webbrowsern und Clients öffentlich vertraut. Möglicherweise müssen Sie ein Zertifikatspaket herunterladen, wenn Ihre SQL-Clients oder -Anwendungen über SSL eine Verbindung zu Redshift Serverless herstellen und die sslmode Verbindungsoption auf requireverify-ca, oder gesetzt ist. verify-full Wenn Ihr Client ein Zertifikat benötigt, stellt Redshift Serverless ein Bundle-Zertifikat wie folgt bereit:

Wichtig

Redshift Serverless hat die Art und Weise geändert, wie SSL-Zertifikate verwaltet werden. Möglicherweise müssen Sie Ihre aktuellen Trust-Root-CA-Zertifikate aktualisieren, um weiterhin über SSL eine Verbindung zu Ihren Arbeitsgruppen herstellen zu können. Weitere Informationen zu ACM-Zertifikaten für SSL-Verbindungen finden Sie unter. Umstellung auf ACM-Zertifikate für SSL-Verbindungen

Standardmäßig akzeptieren Arbeitsgruppendatenbanken eine Verbindung, unabhängig davon, ob sie SSL verwendet oder nicht.

Um eine neue Arbeitsgruppe zu erstellen, die nur SSL-Verbindungen akzeptiert, verwenden Sie den create-workgroup Befehl und setzen Sie den require_ssl Parameter auf. true Um das folgende Beispiel zu verwenden, yourNamespaceName ersetzen Sie es durch den Namen Ihres Namespace und yourWorkgroupName durch den Namen Ihrer Arbeitsgruppe.

aws redshift-serverless create-workgroup \ --namespace-name yourNamespaceName \ --workgroup-name yourWorkgroupName \ --config-parameters parameterKey=require_ssl,parameterValue=true

Um eine bestehende Arbeitsgruppe so zu aktualisieren, dass sie nur SSL-Verbindungen akzeptiert, verwenden Sie den update-workgroup Befehl und setzen Sie den require_ssl Parameter auf. true Beachten Sie, dass Redshift Serverless Ihre Arbeitsgruppe neu startet, wenn Sie den Parameter aktualisieren. require_ssl Um das folgende Beispiel zu verwenden, yourWorkgroupName ersetzen Sie es durch den Namen Ihrer Arbeitsgruppe.

aws redshift-serverless update-workgroup \ --workgroup-name yourWorkgroupName \ --config-parameters parameterKey=require_ssl,parameterValue=true

Amazon Redshift unterstützt das Elliptic Curve Diffie–Hellman Ephemeral (ECDHE) Key Agreement-Protokoll. Mit ECDHE besitzen sowohl der Client als auch der Server ein öffentlich-privates Elliptic Curve-Schlüsselpaar, das verwendet wird, um ein gemeinsames Geheimnis über einen nicht sicheren Kanal einzurichten. Sie müssen nichts in Amazon Redshift konfigurieren, um ECDHE zu aktivieren. Wenn Sie sich von einem SQL-Client-Tool aus verbinden, das ECDHE verwendet, um die Kommunikation zwischen dem Client und dem Server zu verschlüsseln, verwendet Amazon Redshift die angegebene Verschlüsselungsliste, um die entsprechende Verbindung herzustellen. Weitere Informationen finden Sie unter Diffie-Hellman-Schlüsselaustausch auf Wikipedia und Ciphers (Verschlüsselungsverfahren) auf der OpenSSL-Website.

Konfiguration einer FIPS-konformen SSL-Verbindung zu Amazon Redshift Serverless

Um eine neue Arbeitsgruppe zu erstellen, die eine FIPS-konforme SSL-Verbindung verwendet, verwenden Sie den Befehl und setzen Sie den Parameter auf. create-workgroup use_fips_ssl true Um das folgende Beispiel zu verwenden, yourNamespaceName ersetzen Sie es durch den Namen Ihres Namespaces und yourWorkgroupName ersetzen Sie es durch den Namen Ihrer Arbeitsgruppe.

aws redshift-serverless create-workgroup \ --namespace-name yourNamespaceName \ --workgroup-name yourWorkgroupName \ --config-parameters parameterKey=use_fips_ssl,parameterValue=true

Um eine bestehende Arbeitsgruppe so zu aktualisieren, dass sie eine FIPS-konforme SSL-Verbindung verwendet, verwenden Sie den update-workgroup Befehl und setzen Sie den Parameter auf. use_fips_ssl true Beachten Sie, dass Redshift Serverless Ihre Arbeitsgruppe neu startet, wenn Sie den Parameter aktualisieren. use_fips_ssl Um das folgende Beispiel zu verwenden, yourWorkgroupName ersetzen Sie es durch den Namen Ihrer Arbeitsgruppe.

aws redshift-serverless update-workgroup \ --workgroup-name yourWorkgroupName \ --config-parameters parameterKey=use_fips_ssl,parameterValue=true

Weitere Informationen zur Konfiguration von Redshift Serverless für die Verwendung von FIPS-kompatiblen Verbindungen finden Sie unter use_fips_ssl im Amazon Redshift Database Developer Guide.

Herstellen einer Verbindung mit Amazon Redshift Serverless von einem von Amazon Redshift verwalteten VPC-Endpunkt aus

Verbinden mit Amazon Redshift Serverless von anderen VPC-Endpunkten

Informationen zur Einrichtung oder Konfiguration eines verwalteten VPC-Endpoints für eine Amazon Redshift Serverless-Arbeitsgruppe finden Sie unter Arbeiten mit von Redshift verwalteten VPC-Endpunkten.

Informationen zum Herstellen einer Verbindung mit Amazon Redshift Serverless über einen VPC-Endpunkt (AWS PrivateLink) mit einer Schnittstelle finden Sie unter. VPC-Schnittstellenendpunkte

Verbinden mit Amazon Redshift Serverless über einen Redshift-VPC-Endpunkt in einem anderen Konto oder einer anderen Region

Verbinden mit Amazon Redshift Serverless über einen VPC-Kreuzendpunkt

Amazon Redshift Serverless wird in einer VPC bereitgestellt. Sie können den Zugriff auf eine VPC in einem anderen Konto gewähren, um in Ihrem Konto auf Amazon Redshift Serverless zuzugreifen. Dies ist einer Verbindung über einen verwalteten VPC-Endpunkt vergleichbar. In diesem Fall stammt die Verbindung jedoch beispielsweise aus einem Datenbank-Client in einem anderen Konto. Es gibt einige Operationen, die Sie ausführen können:

  • Ein Datenbankbesitzer kann einem anderen Konto in derselben Region Zugriff auf eine VPC gewähren, die Amazon Redshift Serverless enthält.

  • Ein Datenbankbesitzer kann den Zugriff auf Amazon Redshift Serverless widerrufen.

Der Hauptvorteil des kontoübergreifenden Zugriffs liegt in einer einfacheren Datenbankzusammenarbeit. Benutzer müssen nicht in dem Konto bereitgestellt werden, das die Datenbank enthält, um auf sie zugreifen zu können. Dies reduziert die Zahl der Konfigurationsschritte und spart Zeit.

Erforderliche Berechtigungen für die Gewährung des Zugriffs auf eine VPC in einem anderen Konto

Um Zugriff zu gewähren oder den gewährten Zugriff zu ändern, benötigt die gewährende Person eine zugewiesene Berechtigungsrichtlinie mit den folgenden Berechtigungen:

  • redshift-serverlos: PutResourcePolicy

  • redshift-serverlos: GetResourcePolicy

  • redshift-serverlos: DeleteResourcePolicy

  • ec2: CreateVpcEndpoint

  • ec2: ModifyVpcEndpoint

Möglicherweise benötigen Sie weitere Berechtigungen, die in der AWS verwalteten Richtlinie AmazonRedshiftFullAccessangegeben sind. Weitere Informationen finden Sie unter Gewähren von Berechtigungen für Amazon Redshift Serverless.

Der Gewährungsempfänger benötigt eine zugewiesene Berechtigungsrichtlinie mit den folgenden Berechtigungen:

  • redshift-serverlos: ListWorkgroups

  • redshift-serverlos: CreateEndpointAccess

  • redshift-serverlos: UpdateEndpointAccess

  • redshift-serverlos: GetEndpointAccess

  • redshift-serverlos: ListEndpointAccess

  • redshift-serverlos: DeleteEndpointAccess

Als bewährte Methode empfehlen wir, einer IAM-Rolle Berechtigungsrichtlinien anzufügen und sie dann nach Bedarf Benutzern und Gruppen zuzuweisen. Weitere Informationen finden Sie unter Identity and Access Management in Amazon Redshift.

Dies ist ein Beispiel für eine Ressourcenrichtlinie zur Konfiguration eines VPC-übergreifenden Zugriffs:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CrossAccountCrossVPCAccess", "Effect": "Allow", "Principal": { "AWS": [ "123456789012", "234567890123" ] }, "Action": [ "redshift-serverless:CreateEndpointAccess", "redshift-serverless:UpdateEndpointAccess", "redshift-serverless:DeleteEndpointAccess", "redshift-serverless:GetEndpointAccess" ], "Condition": { "ArnLike": { "redshift-serverless:AuthorizedVpc": [ "arn:aws:ec2:us-east-1:123456789012:vpc/*", "arn:aws:ec2:us-east-1:234567890123:vpc/vpc-456", "arn:aws:ec2:us-east-1:234567890123:vpc/vpc-987" ] } } } } ] }

Die Verfahren in diesem Abschnitt setzen voraus, dass der ausführende Benutzer die entsprechenden zugewiesenen Berechtigungen besitzt, z. B. über eine zugewiesene IAM-Rolle, die diese Berechtigungen auflistet. Die Verfahren setzen auch voraus, dass der Arbeitsgruppe eine IAM-Rolle mit entsprechenden Ressourcenberechtigungen angefügt ist.

Gewährung des VPC-Zugriffs auf andere Konten über die Konsole

Dieses Verfahren zeigt die Schritte für die Konfiguration des Datenbankzugriffs, wenn Sie der Datenbankbesitzer sind und Zugriff auf die Datenbank gewähren möchten.

Gewährung des Zugriffs über das Besitzerkonto
  1. In den Eigenschaften für die Amazon-Redshift-Serverless-Arbeitsgruppe finden Sie auf der Registerkarte Datenzugriff eine Liste mit dem Namen Gewährte Konten. Es zeigt Konten und VPCs gewährt Zugriff auf die Arbeitsgruppe. Suchen Sie die Liste und wählen Sie Zugriff gewähren aus, um der Liste ein Konto hinzuzufügen.

  2. Anschließend wird ein Fenster angezeigt, in das Sie Informationen zum Gewährungsempfänger eingeben können. Geben Sie die AWS -Konto-ID ein. Dies ist die 12-stellige ID des Kontos, auf das Sie Zugriff gewähren möchten.

  3. Gewähren Sie dem VPCs Stipendiaten Zugriff auf alle oder nur auf bestimmte. VPCs Wenn Sie nur bestimmten Personen Zugriff gewähren VPCs, können Sie die IDs für diese hinzufügen, indem Sie jeden einzelnen eingeben und VPC hinzufügen auswählen.

  4. Wenn Sie fertig sind, wählen Sie Änderungen speichern aus.

Wenn Sie die Änderungen speichern, wird das Konto in der Liste Gewährte Konten angezeigt. Der Eintrag zeigt die Konto-ID und die Liste der VPCs gewährten Zugriffe.

Der Datenbankbesitzer kann den Zugriff auf ein Konto auch widerrufen. Der Besitzer kann den Zugriff jederzeit widerrufen.

Widerrufen des Zugriffs auf ein Konto
  1. Sie können mit der Liste der gewährten Konten beginnen. Wählen Sie zunächst ein oder mehrere Konten aus.

  2. Wählen Sie Zugriff widerrufen aus.

Nach der Gewährung des Zugriffs kann ein Datenbankadministrator des Gewährungsempfängers in der Konsole überprüfen, ob der Zugriff vorhanden ist.

Überprüfen über die Konsole, ob Ihnen Zugriff auf ein anderes Konto gewährt wurde
  1. In den Eigenschaften für die Amazon-Redshift-Serverless-Arbeitsgruppe finden Sie auf der Registerkarte Datenzugriff eine Liste mit dem Namen Autorisierte Konten. Anschließend werden die Konten angezeigt, auf die der Zugriff über diese Arbeitsgruppe möglich ist. Der Gewährungsempfänger kann die Endpunkt-URL der Arbeitsgruppe nicht verwenden, um direkt auf die Arbeitsgruppe zuzugreifen. Um auf die Arbeitsgruppe zuzugreifen, wechseln Sie als Gewährungsempfänger zum Abschnitt Endpunkt und wählen Endpunkt erstellen aus.

  2. Anschließend geben Sie als Gewährungsempfänger einen Endpunktnamen und eine VPC für den Zugriff auf die Arbeitsgruppe an.

  3. Nach erfolgreicher Erstellung des Endpunkts wird er im Abschnitt Endpunkt angezeigt und erhält eine Endpunkt-URL. Über diese Endpunkt-URL können Sie auf die Arbeitsgruppe zuzugreifen.

Gewähren von Zugriff auf andere Konten über CLI-Befehle

Das Konto, das den Zugriff gewährt, muss zunächst den Zugriff auf ein anderes Konto gewähren, um eine Verbindung über put-resource-policy herzustellen. Der Datenbankbesitzer kann put-resource-policy aufrufen, um ein anderes Konto zur Erstellung von Verbindungen mit der Arbeitsgruppe zu autorisieren. Das Konto des Empfängers kann dann verwendet werdencreate-endpoint-authorization, um Verbindungen zur Arbeitsgruppe über die zulässigen Verbindungen herzustellen. VPCs

Im Folgenden werden die Eigenschaften für put-resource-policy gezeigt, die Sie aufrufen können, um den Zugriff auf ein bestimmtes Konto und eine bestimmte VPC zuzulassen.

aws redshift-serverless put-resource-policy --resource-arn <value> --policy <value>

Nachdem Sie den Befehl aufgerufen haben, können Sie unter Angabe von aufrufenget-resource-policy, welche Konten auf die Ressource zugreifen VPCs dürfen. resource-arn

Der folgende Aufruf kann vom Gewährungsempfänger ausgeführt werden. Anschließend werden Informationen zum gewährten Zugriff angezeigt. Insbesondere wird eine Liste zurückgegeben, die den VPCs gewährten Zugriff enthält.

aws redshift-serverless list-workgroups --owner-account <value>

So kann der Gewährungsempfänger Informationen zu Endpunktautorisierungen aus dem gewährenden Konto erhalten. Das owner-account ist das teilende Konto. Wenn Sie dies ausführen, gibt es CrossAccountVpcs für jede Arbeitsgruppe die zurück, was eine Liste der erlaubten VPCs ist. Zur Referenz werden im Folgenden alle Eigenschaften aufgeführt, die für eine Arbeitsgruppe verfügbar sind:

Output: workgroup (Object) workgroupId String, workgroupArn String, workgroupName String, status: String, namespaceName: String, baseCapacity: Integer, (Not-applicable) enhancedVpcRouting: Boolean, configParameters: List, securityGroupIds: List, subnetIds: List, endpoint: String, publiclyAccessible: Boolean, creationDate: Timestamp, port: Integer, CrossAccountVpcs: List
Anmerkung

Zur Erinnerung: Die Cluster-Verlagerung ist keine Voraussetzung für die Konfiguration zusätzlicher Redshift-Netzwerkfunktionen. Sie ist außerdem für Folgendes nicht erforderlich:

  • Verbindung von einer konto- oder regionsübergreifenden VPC zu Redshift herstellen — Sie können eine Verbindung von einer AWS Virtual Private Cloud (VPC) zu einer anderen herstellen, die eine Redshift-Datenbank enthält, wie in diesem Abschnitt beschrieben.

  • Einrichtung eines benutzerdefinierten Domain-Namens – Sie können für Ihren Amazon-Redshift-Cluster oder Ihre Amazon-Redshift-Serverless-Arbeitsgruppe einen benutzerdefinierten Domain-Namen (auch als benutzerdefinierte URL bezeichnet) erstellen, um den Endpunktnamen einprägsamer und einfacher zu gestalten. Weitere Informationen finden Sie unter Verwendung eines benutzerdefinierten Domain-Namens für Client-Verbindungen.

Weitere Ressourcen

Anweisungen zum Einrichten Ihrer Einstellungen für den Netzwerkverkehr finden Sie unter Öffentlicher Zugriff mit standardmäßiger oder benutzerdefinierter Sicherheitsgruppenkonfiguration. Dies schließt einen Anwendungsfall ein, bei dem der Cluster öffentlich zugänglich ist.

Anweisungen zum Einrichten der Einstellungen für den Netzwerkverkehr finden Sie unter Privater Zugriff mit standardmäßiger oder benutzerdefinierter Sicherheitsgruppenkonfiguration. Dies schließt einen Anwendungsfall ein, bei dem der Cluster nicht für das Internet verfügbar ist.

Weitere Informationen zu sicheren Verbindungen mit Amazon Redshift Serverless, einschließlich der Erteilung von Berechtigungen, der Autorisierung des Zugriffs auf zusätzliche Services und der Erstellung von IAM-Rollen, finden Sie unter Identity and Access Management in Amazon Redshift Serverless.