Problème:
J'essaye d'obtenir la région de l'utilisateur authentifié de boto3.
Cas d'utilisation:
Je travaille sur l'ajout de cache à https://github.com/pmazurek/aws-fuzzy-Finder . Je préférerais mettre en cache le résultat sur par région .
Ce package utilise boto pour obtenir les données d'authentification des utilisateurs (clés et région). Le problème est que la région n'est jamais passée explicitement par l'utilisateur, elle est prise dans l'un des nombreux endroits troubles que boto lit, donc je n'ai pas vraiment de moyen de l'obtenir.
J'ai essayé de rechercher dans l'API boto3 et de googler, mais je n'ai rien trouvé de semblable à un get_region
ou get_user_data
méthode. C'est possible?
Vous devriez pouvoir lire le region_name
de l'objet session.Session
Comme
my_session = boto3.session.Session()
my_region = my_session.region_name
region_name
Est fondamentalement défini comme session.get_config_variable('region')
Une autre option, si vous travaillez avec un client boto3, est:
import boto3
client = boto3.client('s3') # example client, could be any
client.meta.region_name