Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Endpoint specifici del servizio
Nota
Per informazioni sulla comprensione del layout delle pagine delle impostazioni o sull'interpretazione della tabella Support by AWS SDKs and tools riportata di seguito, vedereInformazioni sulle pagine delle impostazioni di questa guida.
La configurazione degli endpoint specifica del servizio offre la possibilità di utilizzare un endpoint di propria scelta per le richieste API e di mantenere tale scelta. Queste impostazioni offrono la flessibilità necessaria per supportare endpoint locali, endpoint VPC e ambienti di sviluppo locale di terze parti AWS . È possibile utilizzare endpoint diversi per ambienti di test e produzione. È possibile specificare un URL di endpoint per singoli utenti. Servizi AWS
Configura questa funzionalità utilizzando quanto segue:
endpoint_url- impostazione dei AWSconfigfile condivisiAWS_ENDPOINT_URL- variabile d'ambienteaws.endpointUrl- Proprietà del sistema JVM: solo Java/Kotlin-
Se specificata direttamente all'interno di un profilo o come variabile di ambiente, questa impostazione specifica l'endpoint utilizzato per tutte le richieste di servizio. Questo endpoint viene sovrascritto da qualsiasi endpoint configurato specifico del servizio.
È inoltre possibile utilizzare questa impostazione all'interno di una
servicessezione di un AWSconfigfile condiviso per impostare un endpoint personalizzato per un servizio specifico. Per un elenco di tutte le chiavi identificative del servizio da utilizzare per le sottosezioni all'interno dellaservicessezione, vedere. Identificatori per endpoint specifici del servizioValore predefinito:
noneValori validi: un URL che include lo schema e l'host per l'endpoint. L'URL può facoltativamente contenere un componente del percorso che contiene uno o più segmenti di percorso.
AWS_ENDPOINT_URL_<SERVICE>- variabile di ambienteaws.endpointUrl<ServiceName>- Proprietà del sistema JVM: solo Java/Kotlin-
AWS_ENDPOINT_URL_<SERVICE>,<SERVICE>dov'è l' Servizio AWS identificatore, imposta un endpoint personalizzato per un servizio specifico. Per un elenco di tutte le variabili di ambiente specifiche del servizio, vedere. Identificatori per endpoint specifici del servizioQuesto endpoint specifico del servizio sostituisce qualsiasi endpoint globale impostato.
AWS_ENDPOINT_URLValore predefinito:
noneValori validi: un URL che include lo schema e l'host per l'endpoint. L'URL può facoltativamente contenere un componente del percorso che contiene uno o più segmenti di percorso.
ignore_configured_endpoint_urls- impostazione condivisa AWSconfigdei fileAWS_IGNORE_CONFIGURED_ENDPOINT_URLS- variabile d'ambienteaws.ignoreConfiguredEndpointUrls- Proprietà del sistema JVM: solo Java/Kotlin-
Questa impostazione viene utilizzata per ignorare tutte le configurazioni personalizzate degli endpoint.
Tieni presente che qualsiasi endpoint esplicito impostato nel codice o su uno stesso client di servizio viene utilizzato indipendentemente da questa impostazione. Ad esempio, l'inclusione del parametro della riga di
--endpoint-urlcomando con un AWS CLI comando o il passaggio di un URL di endpoint a un costruttore del client avrà sempre effetto.Valore predefinito:
falseValori validi:
-
true— L'SDK o lo strumento non leggono alcuna opzione di configurazione personalizzata dalconfigfile condiviso o dalle variabili di ambiente per l'impostazione di un URL dell'endpoint. -
false— L'SDK o lo strumento utilizza tutti gli endpoint disponibili forniti dall'utente dalconfigfile condiviso o dalle variabili di ambiente.
-
Configura gli endpoint utilizzando variabili di ambiente
Per indirizzare le richieste di tutti i servizi a un URL endpoint personalizzato, imposta la variabile di ambiente AWS_ENDPOINT_URL globale.
export AWS_ENDPOINT_URL=http://localhost:4567
Per indirizzare le richieste per un URL di endpoint specifico Servizio AWS a un URL di endpoint personalizzato, utilizza la variabile di AWS_ENDPOINT_URL_<SERVICE> ambiente. Amazon DynamoDB ha unserviceId. DynamoDBAWS_ENDPOINT_URL_DYNAMODB. Questo endpoint ha la precedenza sull'endpoint globale impostato per questo servizio. AWS_ENDPOINT_URL
export AWS_ENDPOINT_URL_DYNAMODB=http://localhost:5678
Come altro esempio, AWS Elastic Beanstalk ha un di. serviceId Elastic BeanstalkserviceId sostituendo tutti gli spazi con caratteri di sottolineatura e tutte le lettere maiuscole. Per impostare l'endpoint per questo servizio, la variabile di ambiente corrispondente è. AWS_ENDPOINT_URL_ELASTIC_BEANSTALK Per un elenco di tutte le variabili di ambiente specifiche del servizio, vedere. Identificatori per endpoint specifici del servizio
export AWS_ENDPOINT_URL_ELASTIC_BEANSTALK=http://localhost:5567
Configurare gli endpoint utilizzando il file condiviso config
Nel config file condiviso, endpoint_url viene utilizzato in luoghi diversi per funzionalità diverse.
-
endpoint_urlspecificato direttamente all'interno di aprofilerende quell'endpoint l'endpoint globale. -
endpoint_urlannidato sotto una chiave identificativa del servizio all'interno di unaservicessezione fa sì che l'endpoint si applichi alle richieste fatte solo a quel servizio. Per i dettagli sulla definizione di unaservicessezione nelconfigfile condiviso, consulta. Formato del file di configurazione
L'esempio seguente utilizza una services definizione per configurare un URL di endpoint specifico del servizio da utilizzare per Amazon S3 e un endpoint globale personalizzato da utilizzare per tutti gli altri servizi:
[profiledev-s3-specific-and-global] endpoint_url =http://localhost:1234services =s3-specific[servicess3-specific] s3 = endpoint_url =https://play.min.io:9000
Un singolo profilo può configurare gli endpoint per più servizi. Questo esempio mostra come impostare l'endpoint specifico del servizio per Amazon URLs S3 e AWS Elastic Beanstalk
nello stesso profilo. AWS Elastic Beanstalk ha un. serviceId Elastic BeanstalkserviceId sostituendo tutti gli spazi con caratteri di sottolineatura e tutte le lettere minuscole. Pertanto, la chiave identificativa del servizio diventa elastic_beanstalk e le impostazioni per questo servizio iniziano sulla linea. elastic_beanstalk = Per un elenco di tutte le chiavi identificative del servizio da utilizzare nella services sezione, vedere. Identificatori per endpoint specifici del servizio
[servicestesting-s3-and-eb] s3 = endpoint_url =http://localhost:4567elastic_beanstalk = endpoint_url =http://localhost:8000[profiledev] services =testing-s3-and-eb
La sezione di configurazione del servizio può essere utilizzata da più profili. Ad esempio, due profili possono utilizzare la stessa services definizione modificando altre proprietà del profilo:
[servicestesting-s3] s3 = endpoint_url =https://localhost:4567[profiletesting-json] output = json services =testing-s3[profiletesting-text] output = text services =testing-s3
Configura gli endpoint nei profili utilizzando credenziali basate sui ruoli
Se il tuo profilo ha credenziali basate sui ruoli configurate tramite un source_profile parametro per IAM Assume Role Functionality, l'SDK utilizza solo le configurazioni di servizio per il profilo specificato. Non utilizza profili concatenati a ruoli. Ad esempio, utilizzando il seguente config file condiviso:
[profileA] credential_source =Ec2InstanceMetadataendpoint_url =https://profile-a-endpoint.aws/[profileB] source_profile =Arole_arn =arn:aws:iam::123456789012:role/roleBservices =profileB[servicesprofileB] ec2 = endpoint_url =https://profile-b-ec2-endpoint.aws
Se usi il profilo B ed effettui una chiamata nel tuo codice verso Amazon EC2, l'endpoint si risolve come. https://profile-b-ec2-endpoint.aws Se il codice invia una richiesta a qualsiasi altro servizio, la risoluzione dell'endpoint non seguirà alcuna logica personalizzata. L'endpoint non si risolve nell'endpoint globale definito nel profilo. A Affinché un endpoint globale abbia effetto sul profiloB, è necessario endpoint_url impostarlo direttamente all'interno del profilo. B Per ulteriori informazioni in merito all'impostazione source_profile, consulta Assumi il ruolo di fornitore di credenziali.
Precedenza delle impostazioni
Le impostazioni di questa funzionalità possono essere utilizzate contemporaneamente, ma solo un valore avrà la priorità per servizio. Per le chiamate API effettuate verso un determinato valore Servizio AWS, viene utilizzato il seguente ordine per selezionare un valore:
-
Qualsiasi impostazione esplicita impostata nel codice o su un client di servizio stesso ha la precedenza su qualsiasi altra cosa.
-
Per il AWS CLI, questo è il valore fornito dal parametro della
--endpoint-urlriga di comando. Per un SDK, le assegnazioni esplicite possono assumere la forma di un parametro impostato quando si crea un'istanza di un client o di un Servizio AWS oggetto di configurazione.
-
-
Il valore fornito da una variabile di ambiente specifica del servizio, ad esempio.
AWS_ENDPOINT_URL_DYNAMODB -
Il valore fornito dalla variabile di ambiente
AWS_ENDPOINT_URLglobale dell'endpoint. -
Il valore fornito dall'
endpoint_urlimpostazione annidata in una chiave di identificazione del servizio all'interno di unaservicessezione del file condiviso.config -
Il valore fornito dall'
endpoint_urlimpostazione specificato direttamente all'internoprofiledi uno dei file condivisiconfig. -
Qualsiasi URL di endpoint predefinito per il rispettivo Servizio AWS viene utilizzato per ultimo.
Support by AWS SDKs and tools
Di seguito sono SDKs supportate le funzionalità e le impostazioni descritte in questo argomento. Vengono annotate eventuali eccezioni parziali. Tutte le impostazioni delle proprietà del sistema JVM sono supportate solo da AWS SDK per Java and the. AWS SDK per Kotlin
| SDK | Supportato | Note o ulteriori informazioni |
|---|---|---|
| AWS CLI v2 | Sì | |
| SDK per C++ | No | |
| SDK per Go V2 (1.x) |
Sì | |
| SDK per Go 1.x (V1) | No | |
| SDK per Java 2.x | Sì | |
| SDK per Java 1.x | No | |
| SDK per 3.x JavaScript | Sì | |
| SDK per 2.x JavaScript | No | |
| SDK per Kotlin | Sì | |
| SDK per.NET 4.x | Sì | |
| SDK per.NET 3.x | Sì | |
| SDK per PHP 3.x | Sì | |
| SDK per Python (Boto3) |
Sì | |
| SDK per Ruby 3.x | Sì | |
| SDK per Rust | Sì | |
| SDK per Swift | Sì | |
| Strumenti per V5 PowerShell | Sì | |
| Strumenti per PowerShell V4 | Sì |