pyathenajdbc.connect()を使用してAthenaに接続しようとしています。マルチファクタ認証を使用してAWS認証情報を設定しています。接続文字列にAWSトークンを含めないと、次のエラーが発生します。pyathenajdbc.connect()でAWSセッショントークンを渡すときにPython 2.7からAWS Athenaにクエリできません
athena_conn = connect(access_key=AWS_KEY_ID, secret_key=AWS_SECRET, s3_staging_dir='s3://abc-pqr-xyz/processed/athena-outputs/',region_name=REGION)
EROR: pyathenajdbc.error.DatabaseError: The security token included in the request is invalid. (Service: AmazonAthena; Status Code: 400; Error Code: UnrecognizedClientException; Request ID: 0d488c0b-1eed-11e7-bad8-711e54af6b73)
私は、接続文字列でAWSトークンが含まれている場合、私は次のエラーを取得 - >
athena_conn = connect(access_key=AWS_KEY_ID, secret_key=AWS_SECRET, token=AWS_SESSION_TOKEN, s3_staging_dir='s3://abc-pqr-xyz/processed/athena-outputs/',region_name=REGION)
ERROR: pyathenajdbc.error.DatabaseError: The security token included in the request is invalid. (Service: AmazonAthena; Status Code: 400; Error Code: UnrecognizedClientException; Request ID: 91751051-1eed-11e7-8347-153dfe3d84a6)
を誰もがここで間違っているものを知っています?
ここに私のコード全体があります。
from pyathenajdbc import connect
from pyathenajdbc.util import as_pandas
from boto3 import Session
import jpype
jvm_path = jpype.getDefaultJVMPath()
_current_credentials = Session().get_credentials()
AWS_KEY_ID = _current_credentials.access_key
AWS_SECRET = _current_credentials.secret_key
AWS_SESSION_TOKEN = _current_credentials.token
REGION = "us-east-2"
#athena_conn = connect(access_key=AWS_KEY_ID, secret_key=AWS_SECRET, s3_staging_dir='s3://abc-pqr-xyz/processed/athena-outputs/',region_name=REGION)
athena_conn = connect(access_key=AWS_KEY_ID, secret_key=AWS_SECRET, token=AWS_SESSION_TOKEN, s3_staging_dir='s3://abc-pqr-xyz/processed/athena-outputs/',region_name=REGION)
cursor = athena_conn.cursor();
query = 'SELECT * FROM xyz.ABC limit 1;'
cursor.execute(query)
df = as_pandas(cursor)
print(df)
こんにちは、ご回答いただきありがとうございます。ここにoutput-'jdbc:awsathena:// athena。{region} .amazonaws.com:443 /ハイブ/ {schema}/ com.amazonaws.athena.jdbc.AthenaDriver https://s3.amazonaws.comがあります。 /athena-downloads/drivers/AthenaJDBC41-1.0.0.jar AthenaJDBC41-1.0.0.jar' – Guddi
また、キーが有効であることを確認しました – Guddi
です。私はそれがAWS Athenaのあなたの許可と関係があると思います。同じ資格情報を使用してAthenaコンソールにアクセスできるかどうかを確認してください –