Boto3 usa credenciales antiguas
estoy usandotkinter
para crear una aplicación gui que devuelva los grupos de seguridad. Actualmente, si desea cambiar sus credenciales (por ejemplo, si ingresó accidentalmente las incorrectas), de lo contrario, deberá reiniciar la aplicaciónboto3
continuaría usando las viejas credenciales.
No estoy seguro de por qué sigue usando las credenciales anteriores porque estoy ejecutando todo nuevamente usando las credenciales ingresadas actualmente.
Este es un fragmento del código que establece las variables de entorno y se inicia.boto3
. Funciona perfectamente bien si ingresa las credenciales correctas la primera vez.
os.environ['AWS_ACCESS_KEY_ID'] = self.accessKey
os.environ['AWS_SECRET_ACCESS_KEY'] = self.secretKey
self.sts_client = boto3.client('sts')
self.assumedRoleObject = self.sts_client.assume_role(
RoleArn=self.role,
RoleSessionName="AssumeRoleSession1"
)
self.credentials = self.assumedRoleObject['Credentials']
self.ec2 = boto3.resource(
'ec2',
region_name=self.region,
aws_access_key_id=credentials['AccessKeyId'],
aws_secret_access_key=credentials['SecretAccessKey'],
aws_session_token=credentials['SessionToken'],
)
Las variables de credenciales se establecen usando:
self.accessKey = str(self.AWS_ACCESS_KEY_ID_Form.get())
self.secretKey = str(self.AWS_SECRET_ACCESS_KEY_Form.get())
self.role = str(self.AWS_ROLE_ARN_Form.get())
self.region = str(self.AWS_REGION_Form.get())
self.instanceID = str(self.AWS_INSTANCE_ID_Form.get())
¿Hay alguna manera de usar diferentes credenciales enboto3
sin reiniciar el programa?