Cloud Storage
Mit dem Google Cloud Storage-Connector können Sie eine Verbindung zu einem Google Cloud Storage herstellen und Dateiübertragungsvorgänge ausführen.
Hinweis
Führen Sie vor der Verwendung des Cloud Storage-Connectors die folgenden Aufgaben aus:
- In Ihrem Google Cloud-Projekt:
- Weisen Sie dem Nutzer die IAM-Rolle roles/connectors.admin zu. Connector konfigurieren.
- Weisen Sie dem Dienstkonto, das Sie für den Connector verwenden möchten, die folgenden IAM-Rollen zu:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
roles/storage.admin
Ein Dienstkonto ist eine spezielle Art von Google-Konto, das einen nicht menschlichen Nutzer repräsentiert. Es muss authentifiziert und autorisiert werden, um Zugriff auf Daten in Google APIs zu erhalten. Wenn Sie kein Dienstkonto haben, müssen Sie eins erstellen. Weitere Informationen finden Sie unter Dienstkonto erstellen.
- Aktivieren Sie die folgenden Dienste:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(Connectors API)
Informationen zum Aktivieren von Diensten finden Sie unter Dienste aktivieren.
Wenn diese Dienste oder Berechtigungen für Ihr Projekt zuvor nicht aktiviert wurden, werden Sie aufgefordert, sie beim Konfigurieren des Connectors zu aktivieren.
Connector konfigurieren
Für die Konfiguration des Connectors müssen Sie eine Verbindung zu Ihrer Datenquelle (Backend-System) erstellen. Eine Verbindung ist für eine Datenquelle spezifisch. Wenn Sie also viele Datenquellen haben, müssen Sie für jede Datenquelle eine separate Verbindung erstellen. So erstellen Sie eine Verbindung:
- Rufen Sie in der Cloud Console die Seite Integration Connectors > Verbindungen auf und wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines.
- Klicken Sie auf + NEU ERSTELLEN, um die Seite Verbindung erstellen zu öffnen.
- Wählen Sie im Abschnitt Standort den Standort für die Verbindung aus.
- Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.
Eine Liste aller unterstützten Regionen finden Sie unter Standorte.
- Tippen Sie auf Weiter.
- Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.
- Führen Sie im Abschnitt Verbindungsdetails folgende Schritte aus:
- Connector: Wählen Sie in der Drop-down-Liste der verfügbaren Connectors Cloud Storage aus.
- Connector-Version: Wählen Sie die Connector-Version aus der Drop-down-Liste der verfügbaren Versionen aus.
- Geben Sie im Feld Verbindungsname einen Namen für die Verbindungsinstanz ein.
Verbindungsnamen müssen die folgenden Kriterien erfüllen:
- Verbindungsnamen können Buchstaben, Ziffern oder Bindestriche enthalten.
- Buchstaben müssen Kleinbuchstaben sein.
- Verbindungsnamen müssen mit einem Buchstaben beginnen und mit einem Buchstaben oder einer Ziffer enden.
- Verbindungsnamen dürfen maximal 49 Zeichen haben.
- Geben Sie optional unter Beschreibung eine Beschreibung für die Verbindungsinstanz ein.
- Aktivieren Sie optional Cloud Logging.
und wählen Sie dann eine Logebene aus. Standardmäßig ist die Logebene auf
Error
festgelegt. - Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
- Optional: Konfigurieren Sie die Verbindungsknoteneinstellungen:
- Mindestanzahl von Knoten: Geben Sie die Mindestanzahl von Verbindungsknoten ein.
- Maximale Anzahl von Knoten: Geben Sie die maximale Anzahl von Verbindungsknoten ein.
Ein Knoten ist eine Einheit (oder ein Replikat) einer Verbindung, die Transaktionen verarbeitet. Zur Verarbeitung von mehr Transaktionen für eine Verbindung sind mehr Knoten erforderlich. Umgekehrt sind weniger Knoten erforderlich, um weniger Transaktionen zu verarbeiten. Informationen zu den Auswirkungen der Knoten auf Ihre Connector-Preise finden Sie unter Preise für Verbindungsknoten. Wenn Sie keine Werte eingeben, ist die Mindestanzahl von Knoten standardmäßig auf 2 (für eine bessere Verfügbarkeit) und die maximale Knotenzahl auf 50 gesetzt.
- Projekt-ID: Die ID des Google Cloud-Projekts, in dem sich die Daten befinden.
- Klicken Sie optional auf + LABEL HINZUFÜGEN, um der Verbindung ein Label in Form eines Schlüssel/Wert-Paars hinzuzufügen.
- Tippen Sie auf Weiter.
- Überprüfen: Prüfen Sie Ihre Verbindung.
- Klicken Sie auf Erstellen.
Entitäten, Vorgänge und Aktionen
Alle Integration Connectors bieten eine Abstraktionsebene für die Objekte der verbundenen Anwendung. Sie können nur über diese Abstraktion auf die Objekte einer Anwendung zugreifen. Die Abstraktion wird Ihnen als Entitäten, Vorgänge und Aktionen zur Verfügung gestellt.
- Entität: Eine Entität kann als Objekt oder Sammlung von Attributen in der verbundenen Anwendung oder im verbundenen Dienst verstanden werden. Die Definition einer Entität unterscheidet sich von Connector zu Connector. Beispiel: In einem Datenbank-Connector sind Tabellen die Entitäten, in einem Dateiserver-Connector sind Ordner die Entitäten und in einem Nachrichtensystem-Connector sind Warteschlangen die Entitäten.
Es ist jedoch möglich, dass ein Connector keine Entitäten unterstützt oder keine Entitäten enthält. In diesem Fall ist die Liste
Entities
leer. - Vorgang: Ein Vorgang ist die Aktivität, die Sie für eine Entität ausführen können. Sie können einen der folgenden Vorgänge für eine Entität ausführen:
Durch Auswahl einer Entität aus der verfügbaren Liste wird eine Liste der Vorgänge generiert, die für die Entität verfügbar sind. Eine detaillierte Beschreibung der Vorgänge finden Sie in den Entitätsvorgängen der Connectors-Aufgabe. Unterstützt ein Connector jedoch keine Entitätsvorgänge, Vorgänge sind nicht in der
Operations
-Liste aufgeführt. - Aktion: Eine Aktion ist eine Funktion erster Klasse, die über die Connector-Benutzeroberfläche für die Integration verfügbar gemacht wird. Mit einer Aktion können Sie Änderungen an einer oder mehreren Entitäten vornehmen, die von Connector zu Connector unterschiedlich sind. Normalerweise hat eine Aktion einige Eingabeparameter und einen Ausgabeparameter. Es ist jedoch möglich, dass ein Connector keine Aktionen unterstützt. In diesem Fall ist die
Actions
-Liste leer.
Systemeinschränkungen
Der Google Cloud Storage-Connector kann pro Knoten maximal 10 Transaktionen pro Sekunde verarbeiten und drosselt alle Transaktionen, die über dieses Limit hinausgehen. Standardmäßig weist Integration Connectors einer Verbindung 2 Knoten zu (für bessere Verfügbarkeit).
Informationen zu den Limits für Integration Connectors finden Sie unter Limits.
Aktionen
Die Google Cloud Storage-Verbindung unterstützt die folgenden Aktionen:
DownloadObject-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion DownloadObject
beschrieben.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
Bucket | Ja | String | Name des Buckets, in dem sich das herunterzuladende Objekt befindet. |
ObjectFilePath | Nein | String | Name des Objekts, das heruntergeladen werden soll. Wenn nicht angegeben, werden alle Objekte aus dem angegebenen Bucket heruntergeladen.
Wenn sich das herunterzuladende Objekt in einem untergeordneten Ordner eines Buckets befindet, müssen Sie den vollständigen Pfad eines solchen Objekts angeben. Wenn Sie beispielsweise |
HasBytes | Nein | Boolesch | Gibt an, ob Inhalte als Bytes heruntergeladen werden sollen. Gültige Werte sind true und false .
Wenn true festgelegt ist, wird der Inhalt als Base64 -codierter String heruntergeladen.
Standardmäßig ist das Feld |
UpdatedEndDate | Nein | Datum | Das Enddatum für den Download von Objekten. Wenn nicht angegeben, werden Objekte aus dem angegebenen UpdatedStartDate bis zum aktuellen Tag heruntergeladen. |
UpdatedStartDate | Nein | Datum | Der Beginn des Zeitraums, für den Objekte heruntergeladen werden sollen. Wenn nicht angegeben, werden Objekte vom Beginn des Zeitraums bis zum UpdatedEndDate heruntergeladen. |
Beispiele für die Konfiguration der Aktion DownloadObject
finden Sie unter Beispiele.
UploadObject-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion UploadObject
beschrieben.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
Bucket | Ja | String | Bucket-Name, in den das Objekt hochgeladen wird. |
FolderPath | Nein | String | Der Pfad zu dem Ordner, in den das Objekt hochgeladen werden soll. |
ContentBytes | Nein | String | Inhalte, die als Byte hochgeladen werden sollen (Base64-codierter String). |
HasBytes | Nein | Boolesch | Gibt an, ob Inhalte in Byte hochgeladen werden sollen. Gültige Werte: true oder false .
Wenn true festgelegt ist, sollte der hochzuladende Inhalt ein Base64-codierter String sein.
Standardmäßig ist das Feld |
Inhalt | Ja | String | Der Inhalt, der hochgeladen werden soll. |
ObjectName | Nein | String | Name des Objekts, das hochgeladen wird. |
Beispiele zum Konfigurieren der Aktion UploadObject
finden Sie unter Beispiele.
CopyObject-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion CopyObject
beschrieben.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
BucketSource | Ja | String | Name des Buckets, aus dem Sie das Objekt kopieren möchten. |
ObjectSource | Ja | String | Vollständiger Pfad des Ordners, in dem Sie das Objekt kopieren möchten. |
BucketDestination | Ja | String | Name des Buckets, in den Sie das Objekt kopieren möchten. |
ObjectDestination | Nein | String | Vollständiger Pfad des Ziels, einschließlich Objektname. Wenn Sie keinen Objektnamen angeben, wird der Name des Quellobjekts beibehalten. |
Beispiele zum Konfigurieren der Aktion CopyObject
finden Sie unter Beispiele.
MoveObject-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion „MoveObject“ beschrieben.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
BucketSource | Ja | String | Name des Buckets, aus dem Sie das Objekt verschieben möchten. |
ObjectSource | Ja | String | Vollständiger Pfad des Ordners, in den Sie das Objekt verschieben möchten. |
BucketDestination | Ja | String | Name des Buckets, in den Sie das Objekt verschieben möchten. |
ObjectDestination | Nein | String | Vollständiger Pfad zum Ziel einschließlich des Objektnamens. Wenn Sie keinen Objektnamen angeben, wird der Name des Quellobjekts beibehalten. |
DeleteObject-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion DeleteObject
beschrieben.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
BucketSource | Ja | String | Name des Buckets, in dem sich das zu löschende Objekt befindet. |
ObjectSource | Ja | String | Name des Objekts, das Sie löschen möchten. |
Generation | Nein | Doppelt | Version des zu löschenden Objekts. Falls vorhanden, wird die angegebene Version des Objekts endgültig gelöscht, im Gegensatz zur neuesten Version, was das Standardverhalten ist. |
IfGenerationMatch | Nein | Doppelt | Macht den Löschvorgang abhängig davon, ob die aktuelle Generation des Objekts mit dem angegebenen Wert übereinstimmt. Wenn Sie diesen Wert auf |
IfGenerationNotMatch | Nein | Doppelt | Macht den Löschvorgang abhängig davon, ob die aktuelle Generation des Objekts nicht mit dem angegebenen Wert übereinstimmt. Wenn kein Liveobjekt vorhanden ist, schlägt die Voraussetzung fehl. Wenn Sie diesen Wert auf 0 festlegen, ist der Vorgang nur dann erfolgreich, wenn eine Live-Version des Objekts vorhanden ist. |
IfMetagenerationMatch | Nein | Doppelt | Macht den Löschvorgang abhängig davon, ob die aktuelle Metageneration des Objekts mit dem angegebenen Wert übereinstimmt. |
IfMetagenerationNotMatch | Nein | Doppelt | Macht den Löschvorgang abhängig davon, ob die aktuelle Metageneration des Objekts nicht mit dem angegebenen Wert übereinstimmt. |
SignURL-Aktion
In der folgenden Tabelle werden die Eingabeparameter der Aktion SignURL
beschrieben, die eine signierte URL für das angegebene Objekt erstellt.
Parametername | Erforderlich | Datentyp | Beschreibung |
---|---|---|---|
Bucket | Ja | String | Der Bucket-Name, in dem sich das Objekt befindet. |
Objekt | Ja | String | Der Name des Objekts, für das die SignedURL generiert werden soll. |
RequestMethod | Nein | String | Die von der signierten Anfrage verwendete Methode. Der Standardwert ist GET . |
Standort | Nein | String | Speicherort des angegebenen Buckets. Der Standardwert ist auto . |
ActiveDateTime | Nein | String | Die DateTime, ab der die SignedURL aktiv wird. Wenn nicht angegeben, wird die aktuelle dateTime verwendet. |
Abfrage | Nein | String | Der Abfragestring, der bei Verwendung der SignedURL enthalten sein muss. Wenn keine Angabe erfolgt, wird kein Abfragestring verwendet. |
CustomHeaders | Nein | String | Eine durch Kommas getrennte Liste von name=value der Header, die mit der SignedURL verwendet werden sollen. Wenn keine Angabe erfolgt, werden keine benutzerdefinierten Header verwendet. |
ExpiresIn | Ja | String | Die Ablaufzeit für die SignedURL, die sie haben sollte, im Format: 1d2h3m4s . Der Höchstwert ist 7d0h0m0s . |
HmacAccessKey | Nein | String | Der HMAC-Zugriffsschlüssel. Weitere Informationen finden Sie unter HMAC-Schlüssel. |
HmacSecret | Nein | String | Das HMAC-Secret. |
Beispiele
In den Beispielen in diesem Abschnitt werden die folgenden Vorgänge beschrieben:
- Alle Objekte auflisten
- Alle Objekte in einem Bucket auflisten
- Alle Buckets auflisten
- Objekt herunterladen
- Binäres Objekt herunterladen
- Binäres Objekt in einen Bucket hochladen
- Objekt in einen Bucket hochladen
- Objekt in einen Ordner hochladen
- Objekt kopieren
- Objekt verschieben
- Objekt löschen
- Signierte URL für ein Objekt erstellen
In der folgenden Tabelle sind die Beispielszenarien und die entsprechende Konfiguration in der Connectors-Aufgabe aufgeführt:
Aufgabe | Konfiguration |
---|---|
Alle Objekte auflisten |
Daraufhin werden alle Objekte in allen Buckets aufgelistet. Die Objekte sind im Antwortparameter |
Alle Objekte in einem Bucket auflisten |
|
Alle Buckets auflisten |
|
Objekt herunterladen |
In diesem Beispiel wird die Datei |
Binäres Objekt herunterladen |
Die Schritte zum Herunterladen eines binären Objekts sind die gleichen wie beim Herunterladen eines regulären Objekts
beschrieben. Außerdem müssen Sie { "Bucket": "bucket-test-01", "ObjectFilePath": "image01.png", "HasBytes" : true } Wenn der Download erfolgreich war, sieht die Ausgabe im Feld { "Success": "true", "ContentBytes": "SGVsbG8gdGVzdCE\u003d" } Das Feld Wenn die Datei Sonderzeichen wie ä, Ø, Thành enthält, gehen Sie wie folgt vor:
|
Binäres Objekt in einen Bucket hochladen |
In diesem Beispiel wird die Datei |
Objekt in einen Bucket hochladen |
In diesem Beispiel wird die Datei |
Objekt in einen Ordner hochladen |
In diesem Beispiel wird die Datei |
Objekt kopieren |
In diesem Beispiel wird die Datei Wenn der Kopiervorgang erfolgreich ist, sieht die Ausgabe im Feld { "Success": "true" } |
Objekt verschieben |
In diesem Beispiel wird die Datei Wenn der Kopiervorgang erfolgreich ist, sieht die Ausgabe im Feld { "Success": "true" } |
Objekt löschen |
In diesem Beispiel wird die Datei Wenn der Kopiervorgang erfolgreich ist, sieht die Ausgabe im Feld { "Success": "true" } |
Signierte URL für ein Objekt erstellen |
In diesem Beispiel wird eine signierte URL für die Datei { "Success": "true", "SignURL": "https://storage.googleapis.com/example-bucket/cat.jpeg?X-Goog-Algorithm= GOOG4-RSA-SHA256&X-Goog-Credential=example%40example-project.iam.gserviceaccount.com %2F20181026%2Fus-central1%2Fstorage%2Fgoog4_request&X-Goog-Date=20181026T18 1309Z&X-Goog-Expires=900&X-Goog-SignedHeaders=host&X-Goog-Signature=247a2aa45f16 9edf4d187d54e7cc46e4731b1e6273242c4f4c39a1d2507a0e58706e25e3a85a7dbb891d62afa849 6def8e260c1db863d9ace85ff0a184b894b117fe46d1225c82f2aa19efd52cf21d3e2022b3b868dc c1aca2741951ed5bf3bb25a34f5e9316a2841e8ff4c530b22ceaa1c5ce09c7cbb5732631510c2058 0e61723f5594de3aea497f195456a2ff2bdd0d13bad47289d8611b6f9cfeef0c46c91a455b94e90a 66924f722292d21e24d31dcfb38ce0c0f353ffa5a9756fc2a9f2b40bc2113206a81e324fc4fd6823 a29163fa845c8ae7eca1fcf6e5bb48b3200983c56c5ca81fffb151cca7402beddfc4a76b13344703 2ea7abedc098d2eb14a7" } |
Hinweise
- Ein herunterladbares Objekt darf maximal 10 MB groß sein.
- Mit der Aktion
UploadObject
können Sie keine mehrere Dateien hochladen. Sie können jeweils nur eine Datei hochladen.
Verbindungen mit Terraform erstellen
Mit dem Terraform-Code Ressource, um eine neue Verbindung zu erstellen.Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Eine Beispiel-Terraform-Vorlage für die Verbindungserstellung finden Sie unter Beispielvorlage.
Wenn Sie diese Verbindung mithilfe von Terraform erstellen, müssen Sie in der Terraform-Konfigurationsdatei die folgenden Variablen festlegen:
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
project_id | STRING | Wahr | Die ID des Google Cloud-Projekts, in dem sich die Daten befinden. |
Cloud Storage-Verbindung in einer Integration verwenden
Nachdem Sie die Verbindung erstellt haben, ist sie sowohl in Apigee Integration als auch in Application Integration verfügbar. Sie können die Verbindung über die Connectors-Aufgabe in einer Integration verwenden.
- Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Apigee Integration finden Sie unter Connectors-Aufgabe.
- Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Application Integration finden Sie unter Tasks für Connectors.
Hilfe von der Google Cloud-Community erhalten
Sie können Ihre Fragen und Anregungen zu diesem Connector in der Google Cloud-Community unter Cloud-Foren posten.Nächste Schritte
- Informationen zum Anhalten und Fortsetzen einer Verbindung
- Informationen zum Überwachen der Connector-Nutzung
- Weitere Informationen zum Aufrufen von Connector-Logs