SFTP
Il connettore SFTP ti consente di connetterti a un server SFTP ed eseguire operazioni di trasferimento file.
Prima di iniziare
Prima di utilizzare il connettore SFTP, svolgi le seguenti attività:
- Nel tuo progetto Google Cloud:
- Assicurati che la connettività di rete sia configurata. Per informazioni sui pattern di rete, consulta Connettività di rete.
- Concedi il ruolo IAM roles/connectors.admin all'utente che configura il connettore.
- Concedi i seguenti ruoli IAM all'account di servizio che vuoi utilizzare per il connettore:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Un account di servizio è un tipo speciale di Account Google destinato a rappresentare un utente "non umano" che deve eseguire l'autenticazione ed essere autorizzato ad accedere ai dati nelle API Google. Se non hai un account di servizio, devi crearne uno. Per maggiori informazioni, consulta Creare un account di servizio.
- Attiva i seguenti servizi:
secretmanager.googleapis.com
(API Secret Manager)connectors.googleapis.com
(API Connectors)
Per scoprire come attivare i servizi, consulta Abilitazione dei servizi.
Se questi servizi o autorizzazioni non sono stati attivati in precedenza per il tuo progetto, ti verrà chiesto di attivarli durante la configurazione del connettore.
Configura il connettore
Per configurare il connettore devi creare una connessione all'origine dati (sistema di backend). Una connessione è specifica per un'origine dati. Ciò significa che se hai molte origini dati, devi creare una connessione distinta per ciascuna. Per creare una connessione:
- Nella console Cloud, vai alla pagina Connettori di integrazione > Connessioni, quindi seleziona o crea un progetto Google Cloud.
- Fai clic su + Crea nuovo per aprire la pagina Crea connessione.
- Nella sezione Località, scegli la località della connessione.
- Regione: seleziona una località dall'elenco a discesa.
Per l'elenco di tutte le regioni supportate, consulta Località.
- Fai clic su Avanti.
- Regione: seleziona una località dall'elenco a discesa.
- Nella sezione Dettagli connessione, completa quanto segue:
- Connettore: seleziona SFTP dall'elenco a discesa dei connettori disponibili.
- Versione del connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
- Nel campo Nome connessione, inserisci un nome per l'istanza di connessione.
I nomi delle connessioni devono soddisfare i seguenti criteri:
- I nomi delle connessioni possono contenere lettere, numeri o trattini.
- Le lettere devono essere minuscole.
- I nomi delle connessioni devono iniziare con una lettera e terminare con una lettera o un numero.
- I nomi delle connessioni non possono contenere più di 49 caratteri.
- (Facoltativo) Inserisci una Descrizione per l'istanza di connessione.
- Se vuoi, attiva Cloud Logging e poi seleziona un livello di log. Per impostazione predefinita, il livello di log è impostato su
Error
. - Account di servizio: seleziona un account di servizio con i ruoli richiesti.
- (Facoltativo) Configura le impostazioni del nodo di connessione:
- Numero minimo di nodi: inserisci il numero minimo di nodi di connessione.
- Numero massimo di nodi: inserisci il numero massimo di nodi di connessione.
Un nodo è un'unità (o una replica) di una connessione che elabora le transazioni. Sono necessari più nodi per elaborare più transazioni per una connessione e, al contrario, sono necessari meno nodi per elaborare meno transazioni. Per capire in che modo i nodi influiscono sui prezzi dei connettori, consulta Prezzi per i nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita il numero minimo di nodi è impostato su 2 (per una maggiore disponibilità) e il numero massimo di nodi è impostato su 50.
-
Percorso remoto: percorso della cartella nel server SFTP.
Valuta la possibilità di impostare questo campo solo se vuoi eseguire una delle operazioni sulle entità come
List
,Create
,Update
oDelete
.Se accedi a entità (file o cartelle) nella cartella principale o nelle immediate cartelle secondarie della cartella principale, non è necessario impostare alcun valore per questo campo. Tuttavia, se vuoi accedere a entità nidificate presenti a una profondità di almeno 2 livelli dalla cartella principale, devi impostare il valore di questo campo sul percorso di base della cartella contenente le entità a cui vuoi accedere. Ad esempio, se vuoi accedere al file
/folder_A/folder_B/folder_C/test.png
, devi impostare il percorso remoto su/folder_A/folder_B/folder_C
. - Se vuoi, fai clic su + Aggiungi etichetta per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
- Fai clic su Avanti.
- Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
- Tipo di destinazione: seleziona un Tipo di destinazione.
- Seleziona Indirizzo host dall'elenco per specificare il nome host o l'indirizzo IP della destinazione.
- Se vuoi stabilire una connessione privata ai tuoi sistemi di backend, seleziona Allegato endpoint dall'elenco, quindi seleziona l'allegato endpoint richiesto dall'elenco Allegato endpoint.
Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con una maggiore sicurezza, puoi prendere in considerazione la configurazione di indirizzi IP statici in uscita per le tue connessioni, quindi configurare le regole del firewall in modo da inserire nella lista consentita solo gli indirizzi IP statici specifici.
Per inserire altre destinazioni, fai clic su + Aggiungi destinazione.
- Fai clic su Avanti.
- Tipo di destinazione: seleziona un Tipo di destinazione.
-
Nella sezione Autenticazione, inserisci i dettagli di autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
La connessione SFTP supporta i seguenti tipi di autenticazione:
- Nome utente e password
- SSH_PUBLIC_KEY
- Fai clic su Avanti.
Per capire come configurare questi tipi di autenticazione, consulta Configurare l'autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
- Rivedi: controlla i dettagli di connessione e autenticazione.
- Fai clic su Crea.
Configura autenticazione
Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.
-
Nome utente e password
- Nome utente: il nome utente SFTP da utilizzare per la connessione.
- Password: il segreto di Secret Manager contenente la password associata al nome utente SFTP.
-
SSH_PUBLIC_KEY
- Nome utente: l'account utente SFTP utilizzato per l'autenticazione.
- Chiave privata SSH: chiave privata per l'autenticazione SSH.
- Password chiave privata SSH: passphrase/password che protegge la chiave privata, se presente.
- Tipo di chiave privata SSH: formato della chiave privata.
Entità, operazioni e azioni
Tutti gli Integration Connectors forniscono un livello di astrazione per gli oggetti dell'applicazione collegata. Puoi accedere agli oggetti di un'applicazione solo tramite questa astrazione. L'astrazione viene mostrata come entità, operazioni e azioni.
- Entità : un'entità può essere considerata un oggetto o una raccolta di proprietà nell'applicazione o nel servizio collegato. La definizione di un'entità varia da un connettore all'altro. Ad esempio, in un connettore di database le tabelle sono le entità, in un connettore di file server le cartelle sono le entità e in un connettore di sistema di messaggistica le code sono le entità.
Tuttavia, è possibile che un connettore non supporti o non abbia entità, nel qual caso l'elenco
Entities
sarà vuoto. - Operazione: un'operazione è l'attività che puoi eseguire su un'entità. Puoi eseguire su un'entità una delle seguenti operazioni:
La selezione di un'entità dall'elenco disponibile genera un elenco di operazioni disponibili per l'entità. Per una descrizione dettagliata delle operazioni, consulta le operazioni sulle entità dell'attività Connettori. Tuttavia, se un connettore non supporta nessuna delle operazioni sulle entità, queste operazioni non supportate non sono elencate nell'elenco
Operations
. - Azione : un'azione è una funzione di prima classe resa disponibile all'integrazione tramite l'interfaccia del connettore. Un'azione ti consente di apportare modifiche a una o più entità e varia da un connettore all'altro. In genere, un'azione avrà alcuni parametri di input e un parametro di output. Tuttavia, è possibile
che un connettore non supporti alcuna azione, nel qual caso l'elenco
Actions
sarà vuoto.
Limitazioni del sistema
Il connettore SFTP può elaborare una transazione al secondo per nodo e limita le transazioni oltre questo limite. Per impostazione predefinita, Integration Connectors alloca 2 nodi (per una maggiore disponibilità) per una connessione.
Per informazioni sui limiti applicabili a Integration Connectors, vedi Limiti.
Azioni
Questa sezione elenca alcune delle azioni supportate dal connettore. Per capire come configurare le azioni, consulta Esempi di azioni.
Azione di caricamento
La tabella seguente descrive i parametri di input dell'azione Upload
.
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
Contenuti | Stringa | No | Contenuti da caricare come file. |
ContentBytes | Stringa | No | Contenuti in byte (come stringa Base64) da caricare come file. Utilizzalo per caricare dati binari. |
HasBytes | Booleano | No | Specifica se i contenuti devono essere caricati come byte. Il valore predefinito è false . |
RemoteFile | Stringa | Sì | Il nome del file sull'host remoto. |
Sovrascrivi | Booleano | No | Specifica se il file remoto deve essere sovrascritto. Il valore predefinito è false . |
Per esempi su come configurare l'azione Upload
, consulta Esempi.
Azione di download
La tabella seguente descrive i parametri di input dell'azione Download
.
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
RemoteFile | Stringa | Sì | Il nome del file sull'host remoto. |
HasBytes | Booleano | No | Specifica se i contenuti devono essere scaricati come byte. Il valore predefinito è false . |
Per esempi su come configurare l'azione Download
, consulta Esempi.
Azione MoveFile
La tabella seguente descrive i parametri di input dell'azione MoveFile
.
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
RemoteFile | Stringa | Sì | Il percorso del file remoto da spostare. |
DestinationPath | Stringa | Sì | Il nuovo percorso in cui vuoi spostare il file. |
Per esempi su come configurare l'azione MoveFile
, consulta Esempi.
Azione RenameFile
La tabella seguente descrive i parametri di input dell'azione RenameFile
.
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
RemoteFile | Stringa | Sì | Percorso e nome del file remoto da rinominare. |
NewFileName | Stringa | Sì | Nuovo nome del file remoto. |
Per esempi su come configurare l'azione RenameFile
, consulta Esempi.
Esempi
Questa sezione descrive come eseguire alcune delle operazioni e delle azioni relative alle entità in questo connettore. Gli esempi descrivono le seguenti operazioni:
- Elenca tutti i file nella directory principale
- Elenca i file che corrispondono a un pattern in una directory
- Spostare un file
- Rinominare un file
- Eliminazione di un file
- Carica un file di testo ASCII
- Carica un file binario
- Scaricare un file di testo ASCII
- Scaricare un file binario
La tabella seguente elenca gli scenari di esempio e la configurazione corrispondente nell'attività Connettori:
Attività | Comando di esempio | Configurazione |
---|---|---|
Elenca tutti i file nella directory principale | ls / |
|
Elenca i file .csv in una directory |
ls /tmp/*.csv |
|
Spostare un file | mv /tmp/dir_A/hello_world.txt /dir_B/dir_C/ |
Questo esempio sposta il file [{ "Success":"true" }] |
Rinominare un file | mv /tmp/hello_world.txt /tmp/hello_world_new.txt |
In questo esempio, il file [{ "Success":"true" }] |
Eliminazione di un file | rm /tmp/myfile.csv |
|
Carica un file di testo ASCII | put file_1.txt /tmp/file_1.txt |
Questo esempio crea il file L'impostazione dell'attributo |
Carica un file binario | put image_1.png /tmp/image_1.png |
Per caricare contenuti binari, devi prima codificarli
nel formato Base64. Puoi scegliere lo strumento che preferisci per codificare i contenuti. I passaggi per la codifica dei contenuti non rientrano nell'ambito di questo documento. Dopo aver ottenuto i contenuti come
una stringa Base64, svolgi i seguenti passaggi:
Questo esempio crea il file L'impostazione dell'attributo |
Scaricare un file di testo ASCII | get /tmp/myfile.txt |
I contenuti del file scaricato sono disponibili come stringa
nel campo |
Scaricare un file binario | get /tmp/myfile.png |
I contenuti del file scaricato sono disponibili come stringa codificata Base64
nel campo |
Schema JSON per il payload
Tutti gli oggetti entità in una connessione SFTP hanno uno schema JSON predefinito. Una buona conoscenza dello schema ti consente di configurare facilmente i valori del payload di input o di output. Gli oggetti entità in una connessione SFTP utilizzano lo schema JSON seguente:
{ "type": "object", "properties": { "FilePath": { "type": "string", "readOnly": false }, "Filename": { "type": [ "string", "null" ], "readOnly": false, "description": "The name of the file or directory." }, "FileSize": { "type": [ "number", "null" ], "readOnly": false, "description": "The size of the file." }, "LastModified": { "type": [ "string", "null" ], "readOnly": false }, "IsDirectory": { "type": [ "boolean", "null" ], "readOnly": false }, "Permissions": { "type": [ "string", "null" ], "readOnly": false }, "Owner": { "type": [ "string", "null" ], "readOnly": false }, "OwnerId": { "type": [ "string", "null" ], "readOnly": false }, "Group": { "type": [ "string", "null" ], "readOnly": false }, "GroupId": { "type": [ "string", "null" ], "readOnly": false } } }
Configurazione dinamica di filterClause
Per le operazioni List, Update ed Delete, puoi impostare il valore della variabile di input
filterClasue dinamicamente in fase di esecuzione utilizzando l'attività
Mappatura dei dati
nell'integrazione. Ad esempio, potresti voler inviare il valore della clausola di filtro
quando richiami l'attivatore API
nell'integrazione. L'immagine seguente mostra una mappatura di esempio per la variabile filterClause
nell'editor di mappatura dei dati dell'attività di mappatura dei dati:
Utilizzare Terraform per creare connessioni
Puoi utilizzare la risorsa Terraform per creare una nuova connessione.Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Per visualizzare un modello Terraform di esempio per la creazione di una connessione, consulta il modello di esempio.
Quando crei questa connessione utilizzando Terraform, devi impostare le seguenti variabili nel file di configurazione Terraform:
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
remote_path | STRING | Falso | Il percorso corrente nel server SFTP. |
Utilizzare la connessione SFTP in un'integrazione
Una volta creata, la connessione diventa disponibile sia nell'Apigee Integration sia nell'Application Integration. Puoi utilizzare la connessione in un'integrazione tramite l'attività Connettori.
- Per informazioni su come creare e utilizzare l'attività Connectors in Apigee Integration, consulta Attività Connectors.
- Per informazioni su come creare e utilizzare l'attività Connettori in Application Integration, consulta Attività Connettori.
Ricevere assistenza dalla community Google Cloud
Puoi pubblicare le tue domande e discutere di questo connettore nella community Google Cloud ai forum di Cloud.Passaggi successivi
- Scopri come sospendere e riprendere una connessione.
- Scopri come monitorare l'utilizzo dei connettori.
- Scopri come visualizzare i log del connettore.