SFTP
Il connettore SFTP ti consente di connetterti a un server SFTP ed eseguire operazioni di trasferimento file.
Prima di iniziare
Nel tuo progetto Google Cloud, esegui le seguenti attività:
- Assicurati che la connettività di rete sia configurata. Per informazioni, consulta Connettività di rete.
- Concedi all'utente il ruolo IAM roles/connectors.admin che configura il connettore.
- Concedi i ruoli IAM
roles/secretmanager.viewereroles/secretmanager.secretAccessoral service account che vuoi utilizzare per il connettore. Se non hai un account di servizio, devi crearne uno. Il connettore e il account di servizio devono appartenere allo stesso progetto. - Abilita
secretmanager.googleapis.com(API Secret Manager) econnectors.googleapis.com(API Connectors). Per saperne di più, consulta Attivazione dei servizi.
Creare una connessione SFTP
Una connessione è specifica per un'origine dati. Ciò significa che se hai molte origini dati, devi creare una connessione separata per ciascuna origine dati. Per creare una connessione:
- Nella console Cloud, vai alla pagina Integration Connectors > Connections e poi seleziona o crea un progetto Google Cloud.
- Fai clic su + Crea nuovo per aprire la pagina Crea connessione.
- Nella sezione Località, seleziona una località dall'elenco Regione e poi fai clic su Avanti.
Per l'elenco di tutte le regioni supportate, consulta Località.
- Nella sezione Dettagli connessione, completa quanto segue:
- Nel campo Connettore, seleziona SFTP.
- Nel campo Versione del connettore, seleziona la versione che preferisci.
- Nel campo Nome connessione, inserisci un nome per l'istanza di connessione. Il nome della connessione può contenere lettere minuscole, numeri o trattini. Il nome deve iniziare con una lettera e terminare con una lettera o un numero e non deve superare i 49 caratteri.
- (Facoltativo) Inserisci una descrizione per l'istanza di connessione.
- (Facoltativo) Abilita Cloud Logging,
quindi seleziona un livello di log. Per impostazione predefinita, il livello di log è impostato su
Error. - Nel campo Service account, seleziona un account 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.
- (Facoltativo) Nel campo Percorso remoto, inserisci il percorso della cartella nel server SFTP per eseguire le operazioni sull'entità,
ad esempio
List,Create,UpdateoDelete. - (Facoltativo) Fai clic su + Aggiungi etichetta per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
- Fai clic su Avanti.
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, viceversa, sono necessari meno nodi per elaborare meno transazioni. Per capire in che modo i nodi influiscono sui prezzi del connettore, consulta la sezione Prezzi dei nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita i nodi minimi sono impostati su 2 (per una migliore disponibilità) e i nodi massimi sono impostati su 50.
Se accedi a entità (file o cartelle) nella cartella principale o nelle cartelle secondarie immediate della cartella principale, non devi impostare alcun valore per questo campo. Tuttavia, se vuoi accedere a entità nidificate presenti a una profondità di 2 livelli o più dalla cartella principale, devi impostare il valore di questo campo sul percorso di base della cartella che contiene 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. - Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti e fai clic su Avanti.
- Per specificare il nome host o l'indirizzo IP di destinazione, seleziona Indirizzo host e inserisci l'indirizzo nel campo Host 1.
- Per stabilire una connessione privata, seleziona Indirizzo host e aggiungi il collegamento dell'endpoint creato per SAP Gateway utilizzando il protocollo HTTPS.
-
Nella sezione Autenticazione, seleziona un Tipo di autenticazione
e inserisci i dettagli pertinenti, poi fai clic su Avanti.
La connessione SFTP supporta i seguenti tipi di autenticazione:
- Nome utente e password
- SSH_PUBLIC_KEY
Per capire come configurare questi tipi di autenticazione, consulta Configurare l'autenticazione.
- Esamina i dettagli della connessione e dell'autenticazione, poi fai clic su Crea.
Nel campo Tipo di destinazione, seleziona il tipo che preferisci:
Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con una sicurezza aggiuntiva, puoi valutare la possibilità di configurare indirizzi IP statici in uscita per le tue connessioni e poi configurare le regole firewall per consentire solo gli indirizzi IP statici specifici.
Configura l'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: secret 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.
Utilizzare la connessione SFTP in un'integrazione
Una volta creata, la connessione diventa disponibile sia in Apigee Integration che in Application Integration. Puoi utilizzare la connessione in un'integrazione tramite l'attività Connettori.
- Per capire come creare e utilizzare l'attività Connettori in Apigee Integration, consulta Attività Connettori.
- Per capire come creare e utilizzare l'attività Connettori in Application Integration, consulta Attività Connettori.
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. Utilizza questo campo 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ì | Il 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 sulle 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
- Caricare un file binario
- Scaricare un file di testo ASCII
- Scaricare un file binario
- Scaricare più file
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 |
Questo esempio rinomina 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 |
| Caricare un file binario | put image_1.png /tmp/image_1.png |
Per caricare un contenuto binario, devi prima codificarlo
nel formato Base64. Puoi scegliere uno strumento a tua scelta per
codificare i contenuti. I passaggi per la codifica dei contenuti non rientrano
nell'ambito di questo documento. Dopo aver ottenuto i contenuti come
stringa Base64, segui questi passaggi:
Questo esempio crea il file L'impostazione dell'attributo |
| Scaricare un file di testo ASCII | get /tmp/myfile.txt |
Il contenuto del file scaricato è disponibile come stringa
nel campo |
| Scaricare un file binario | get /tmp/myfile.png |
Il contenuto del file scaricato è disponibile come stringa con codifica Base64
nel campo |
| Scaricare più file | |
|
Limitazioni di sistema
Il connettore SFTP può elaborare 1 transazione al secondo, per nodo, e limita qualsiasi transazione oltre questo limite. Per impostazione predefinita, Integration Connectors alloca due nodi (per una migliore disponibilità) per una connessione.
Per informazioni sui limiti applicabili a Integration Connectors, consulta Limiti.
Creare connessioni utilizzando Terraform
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 template Terraform di esempio per la creazione di connessioni, consulta template 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 attuale nel server SFTP. |
Schema JSON per il payload
Tutti gli oggetti entità in una connessione SFTP hanno uno schema JSON predefinito. Gli oggetti entità in una connessione SFTP utilizzano il seguente schema JSON:
{ "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 } } }
Ricevere assistenza dalla community di Google Cloud
Puoi pubblicare le tue domande e discutere di questo connettore nella community di Google Cloud nei forum di Cloud.
Passaggi successivi
- Scopri come sospendere e ripristinare una connessione.
- Scopri come monitorare l'utilizzo dei connettori.
- Scopri come visualizzare i log dei connettori.