Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Support 'external_id' for temporary credentials

Abierto
#109 3 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
38/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
aws, python

Línea de trabajo

Comienza con el ejemplo de redshift_connector.connect y sigue cómo se obtienen las credenciales de role_arn. Revisa el flujo solicitado de boto3.Session y AssumeRole, incluidos external_id y la actualización de credenciales al reconectarse. Se considera completado cuando el conector acepta external_id para credenciales temporales y funciona el flujo de reproducción documentado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

Driver version

v2.0.907 Latest

Redshift version

N/A

Client Operating System

N/A

Python version

N/A

Table schema

N/A

Problem description

  1. Expected behaviour: Library is able to use EKS IRSA / AWS SSO to discovery credential, then use AssumeRole with role_arn and external_id to receive current one.
  2. Actual behaviour: No support for external_id.
  3. Error message/stack trace: N/A
  4. Any other details that can be helpful:

Partner Hosted Foundational Technical Review requires "CAA-002 - Use external ID with cross-account roles to access customer accounts."

Credential management is already supported. In my opinion, AWS SDK (in this scenario boto3) defines the credentials standard for IAM that is adopted for language in AWS. In my opinion, this library should only receive instance boto3.Session to build proper IAM credentials on its own. It allows use aws-assume-role-lib ( https://github.com/benkehoe/aws-assume-role-lib ) to automatically refresh credentials when reconnection happens (The fact that it is an external library is a separate problem in boto3 because JavaScript / Java ( https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/STSAssumeRoleSessionCredentialsProvider.html ) has the appropriate built-in credential provider.). Then a large amount of code - repeated in relation to boto3 - regarding the use of credential management will become redundant.

Python Driver trace logs

Reproduction code

import redshift_connector

# Connects to Redshift cluster using AWS credentials
conn = redshift_connector.connect(
    host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
    database='dev',
    user='awsuser',
    role_arn='aws:...',
    external_id='...'
 )

CC: @podpio

Lenguaje dominante
Python
Estrellas
220
Forks
86
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de aws/amazon-redshift-python-driver

Todos los issues de aws/amazon-redshift-python-driver

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.