Configurer les régions et les connexions S3

Les réglages de connexion indiquent à S3Client quel service contacter et comment adresser et signer ses requêtes. Vous pouvez définir un endpoint et une région de signature pour un bucket sans modifier la connexion des autres buckets du compte.

Une région associe un nom local, une région de signature et un endpoint S3. Le compte contient une liste de régions et une Default region pour les requêtes qui n’ont pas de région plus précise. Le protocole et le port sont communs au compte ; chaque région possède ses propres options de signature et d’adressage.

Préparez le nom d’hôte, la région de signature, le port et les options acceptées par votre service. Le préréglage de fournisseur renseigne ces valeurs à la création du compte ; vous pouvez ensuite les modifier. Les identifiants se règlent séparément dans Credentials.

Ouvrir les réglages du compte

  1. Dans la fenêtre principale, choisissez File > Accounts….
  2. Sélectionnez le compte et cliquez sur Edit….
  3. Dans Account, ouvrez Regions.
  4. Sélectionnez une région et cliquez sur Edit, ou double-cliquez dessus. Pour en ajouter une, cliquez sur Add.

Le dialogue s’appelle Edit region, y compris lors d’un ajout. Il sépare les réglages de connexion dans General et les routes de contrôle dans S3 Control. Ses modifications ne sont enregistrées dans le compte qu’après OK dans ce dialogue puis OK dans Account.

Renseigner une région

Champ dans Edit regionValeur et effet
NameNom local non vide affiché dans les listes. Il n’est pas envoyé comme région de signature.
RegionCode non vide utilisé pour signer les requêtes, par exemple eu-west-3. Utilisez celui indiqué par le service, même si le nom local diffère.
EndpointNom d’hôte seul, par exemple s3.eu-west-3.amazonaws.com ou s3.example.com. N’ajoutez ni https://, ni port, ni chemin, ni nom de bucket pour un endpoint de base.
Server-side copy domainIdentifiant local du domaine de copie côté serveur. Vide, il utilise celui du compte ; sinon, il le remplace pour cette région.
Signature versionAWS Signature v4 pour Amazon S3 et les services qui l’exigent ; AWS Signature v2 seulement pour un service qui accepte encore cette version. Les écritures conditionnelles exigent v4.
Access styleChoix d’adressage décrit ci-dessous.
Account Regional bucket namespace availableDéclare que cette région accepte la création dans l’espace de noms régional du compte. Cette option ne suffit pas seule : la capacité de création et Account ID sont aussi nécessaires.

Name, Region et Endpoint sont obligatoires. La liste refuse deux régions ayant le même nom, code de région ou endpoint, sans tenir compte de la casse. This region already exists !, This region name already exists ! ou This endpoint already exists ! indique le champ en conflit.

Le compte accepte au maximum 100 régions et doit conserver une région par défaut. Les noms, codes de région et domaines de copie sont limités à 4 096 caractères ; un endpoint est limité à 253 caractères dans sa forme normalisée. Une configuration dépassant ces limites ne peut pas être enregistrée.

Endpoint accepte aussi une adresse IPv4 ou IPv6, par exemple 192.0.2.10 ou [2001:db8::10]. Un endpoint IP exige Path-style ; sinon, l’enregistrement est refusé avec IP literals require path-style addressing.

S3-compatible storage commence avec le nom local Default region, le code us-east-1 et l’endpoint localhost. Remplacez l’endpoint et le code selon votre service. Un ajout manuel commence avec AWS Signature v2, Hosted-style, Account Regional bucket namespace available coché et les routes S3 Control désactivées. Choisissez explicitement les valeurs adaptées : elles ne sont pas déduites du nom d’hôte.

Choisir l’adressage

Access styleExemple pour le bucket exemple, l’endpoint s3.example.com et la clé image.png
Hosted-styleL’hôte est exemple.s3.example.com et le chemin /image.png. La résolution DNS et le certificat TLS doivent accepter cet hôte.
Hosted-style with path fallbackMême adressage, sauf sous HTTPS lorsque le nom du bucket contient un point : S3Client utilise alors le style chemin. Ce choix n’effectue pas un nouvel essai automatique après une erreur réseau ou S3.
Path-styleL’hôte reste s3.example.com et le chemin devient /exemple/image.png.

Sélectionnez le style accepté par le service. Le repli pour les noms avec points doit lui aussi être pris en charge par ce service.

Port, TLS et région par défaut

  1. Cliquez sur OK dans Edit region.
  2. Ouvrez l’onglet Account.
  3. Sélectionnez Default region dans la liste des régions configurées.
  4. Renseignez Port, de 1 à 65535.
  5. Cochez Connect using SSL/TLS pour HTTPS, ou décochez-le pour HTTP si le service l’exige.
  6. Utilisez Test connection, puis OK pour enregistrer.

Les deux préréglages intégrés utilisent HTTPS sur le port 443. Changer TLS ne change pas automatiquement le port. HTTP ne chiffre pas les échanges.

Le Server-side copy domain de l’onglet Account est utilisé si la région n’en fournit pas. Sans domaine explicite, le domaine est propre à ce compte S3Client. Avant d’attribuer le même domaine à plusieurs comptes, vérifiez qu’ils partagent réellement l’espace de noms des buckets côté serveur : une mauvaise déclaration peut faire lire un autre objet portant le même nom. Une copie directe entre comptes nécessite aussi Allow direct copies with other accounts sur les deux comptes. Voir Copier entre comptes S3.

Supprimer ou restaurer des régions

Avant de modifier, supprimer ou restaurer une région, vérifiez les connexions de buckets qui l’utilisent. Un changement de code, d’endpoint, de signature, d’adressage, de port ou de TLS peut rendre une connexion enregistrée incompatible. Le message The saved bucket connection no longer matches the account settings. Configure the bucket connection again. demande de rouvrir Bucket connection…, vérifier les champs et enregistrer avec Save. Renommer seulement le compte ou le nom local d’une région ne change pas sa connexion réseau.

Vérifiez aussi les affectations sous Capabilities > Encryption policies, Storage classes, Lifecycle et Static website hosting, dans Assignments. Elles utilisent le code Region location ou l’Endpoint, pas le nom local. Changer une région ne réécrit pas leurs critères : une affectation qui ne correspond plus peut laisser une autre affectation, ou la politique par défaut, s’appliquer. Adaptez ces critères avant d’enregistrer le compte. Voir Configurer les capacités du compte.

Dans Regions, sélectionnez une région et cliquez sur Remove, puis confirmez avec Yes. Cela retire son réglage local, sans supprimer de région ni de bucket sur le service. Vérifiez ensuite Default region : une région par défaut supprimée ou renommée peut nécessiter une nouvelle sélection.

Restore Defaults remplace toute la liste de régions de l’éditeur par les valeurs du préréglage associé lorsqu’il est disponible. Si le préréglage personnalisé n’est plus disponible, S3Client utilise les régions actuelles du compte comme base. Cette action ne restaure ni les identifiants ni toutes les capacités. Vérifiez la liste et la région par défaut avant de cliquer sur OK dans Account ; Cancel permet d’abandonner les modifications.

Régler la connexion d’un bucket

Une connexion locale associe un bucket à une région de signature et à un endpoint autorisé par le compte. Elle est commune à ce bucket et à tous ses favoris dans ce compte. Elle ne déplace pas le bucket et ne change pas sa région côté service.

  1. Dans un panneau du navigateur S3, hors mode Preview, affichez le bucket ou un de ses dossiers, avec le compte concerné. Attendez la fin d’une ouverture ou d’une actualisation en cours.
  2. Cliquez sur le bouton à icône de compte à côté du champ Address, dont l’infobulle est Account and connection…, puis choisissez Bucket connection….
  3. Dans Bucket connection, sélectionnez Signing region, ou saisissez le code attendu. Choisir une région de la liste remplit aussi son endpoint.
  4. Vérifiez Endpoint. Cet hôte doit déjà figurer dans les régions du compte. Si nécessaire, cliquez sur Account settings…, configurez-le dans Regions et enregistrez le compte.
  5. Cliquez sur Save pour enregistrer la connexion, ou sur Cancel pour abandonner.
  6. Ouvrez de nouveau l’emplacement S3 pour vérifier son accès.

Si le code de signature est connu du compte, ses options de signature et d’adressage sont utilisées ; sinon, celles de la région par défaut sont utilisées avec le code saisi. Le port et TLS restent ceux du compte. Configure this endpoint in the account settings before using it for the bucket. demande d’ajouter l’hôte au compte ; Enter a valid signing region for the bucket. demande un code valide.

Reload connection abandonne les saisies et recharge la connexion selon cet ordre : une indication de région de l’emplacement ou du favori, sinon la connexion enregistrée, sinon la région par défaut. Le retour de Account settings… recharge aussi les champs, même si vous avez annulé l’éditeur de compte. Après un changement de configuration ou une modification concurrente, vérifiez ces valeurs avant de les sauvegarder à nouveau. Vous pouvez aussi ouvrir Bucket connection… depuis l’éditeur d’un favori S3.

Une réponse du service peut indiquer une autre région ou une redirection permanente. S3Client peut alors corriger et enregistrer la connexion du bucket, même si vous l’aviez configurée manuellement. Une redirection temporaire ne modifie pas la connexion enregistrée. La cible doit être autorisée par les endpoints du compte ou l’hôte courant ; le port est conservé et une connexion HTTPS ne passe pas en HTTP.

Configurer S3 Control et l’identifiant de compte

Les opérations de balisage utilisant S3 Control resource tagging ont besoin d’une route de contrôle distincte du point d’accès aux données S3. Dans Edit region, l’onglet S3 Control contient deux groupes indépendants : General purpose buckets et Directory buckets. Leur disponibilité dans le compte ne signifie pas que tous les types de buckets sont utilisables par toutes les fonctionnalités.

Avant de lire ou modifier les balises avec S3 Control, renseignez dans Account > Account le champ Account ID avec les douze chiffres du compte de service et choisissez S3 Control resource tagging dans Capabilities > Bucket tags > Tag editing API. Ce numéro n’est pas une clé d’accès.

  1. Dans Account > Regions, ouvrez Edit sur la région concernée.
  2. Ouvrez l’onglet S3 Control.
  3. Dans General purpose buckets ou Directory buckets, cochez Enable control route.
  4. Renseignez les champs ci-dessous selon le service.
  5. Cliquez sur OK, puis sur OK dans Account pour enregistrer.
Champ de routeRègles
Host templateHôte seul, distinct de l’endpoint de données. Pour les buckets à usage général, il doit commencer par {accountId}. et contenir cette substitution exactement une fois, par exemple {accountId}.s3-control.eu-west-3.amazonaws.com. Pour les buckets de répertoire, aucune substitution n’est acceptée, par exemple s3express-control.eu-west-3.amazonaws.com.
ProtocolHTTPS ou HTTP, initialement HTTPS, indépendamment du protocole du compte.
PortDe 1 à 65535, initialement 443. Modifier le protocole ne change pas le port.
Signing regionLecture seule, identique au champ Region de cette région.
Signing serviceLecture seule : s3 pour les buckets à usage général, s3express pour les buckets de répertoire.
ARN partitionIdentifiant en minuscules composé de lettres, chiffres ou tirets, au plus 64 caractères. La valeur initiale est aws ; utilisez la partition du service. Les deux routes d’une même région doivent avoir la même partition.

Saisissez le modèle d’hôte en minuscules, sans point final, protocole, port ni chemin. Sa longueur après substitution est limitée à 253 caractères. {accountId} est la seule variable acceptée, uniquement pour les buckets à usage général ; {region} et toute autre substitution sont refusés. Si l’hôte fourni par le service contient un code de région, saisissez sa valeur réelle au lieu de {region}. Après un clic sur OK, une route invalide ouvre le message Invalid S3 Control routing et sélectionne l’onglet S3 Control. Corrigez la cause indiquée, puis cliquez de nouveau sur OK.

Décochez Enable control route pour supprimer cette route des réglages sauvegardés. Les autres champs du groupe deviennent indisponibles. S3Client ne fabrique pas un endpoint de contrôle à partir d’un endpoint personnalisé manquant.

Sans Account ID, la politique S3 Control peut être enregistrée, mais la lecture et la modification des balises de buckets restent indisponibles. Une route absente ou invalide empêche aussi les opérations de contrôle concernées. Test connection vérifie une lecture S3, pas la route S3 Control ni les permissions d’écriture de balises. Après enregistrement, vérifiez ces fonctions dans les propriétés du bucket concerné.

Le balisage via S3 Control exige aussi un bucket non externe, une région du bucket configurée dans le compte et un ARN correspondant au nom, au type et à la partition du bucket. Pour un bucket de répertoire, l’ARN doit aussi correspondre à la région et au compte propriétaire. Un ARN absent n’est reconstruit que si Capabilities > General > Standard S3 resource identifiers (ARNs) est activé. Le code S3ControlConfigurationIncomplete indique un prérequis manquant ou incohérent ; consultez ses détails avant de corriger l’identifiant, la route ou l’ARN. Les requêtes de contrôle utilisent toujours la signature v4 et ne suivent pas les redirections HTTP.

Vérifier le résultat

Une connexion valide exige aussi une source d’identifiants complète et un nom de compte. Test connection utilise les réglages de l’éditeur et ne les enregistre pas. Consultez son périmètre et ses erreurs, puis enregistrez avec OK. Les erreurs de proxy et de réseau se règlent dans les options réseau.