How do I tell isql
to use AWS_IAM authentication for Snowflake?
I created a snowflake security integration:
CREATE SECURITY INTEGRATION testing_ecs_iam_auth
TYPE = API_AUTHENTICATION
AUTH_TYPE = AWS_IAM
AWS_ROLE_ARN = 'my_ecs_task_role_arn'
ENABLED = TRUE
COMMENT = 'Testing password less and key less authentication using security integration for service user'
I have created a service user in Snowflake - MY_SERIVCE_USER.
CREATE OR REPLACE USER TEST_SERVICE_USER
TYPE = SERVICE
DEFAULT_ROLE = 'MY_SERVICE_USER_ROLE'
DEFAULT_WAREHOUSE = 'MY_WH';
I want to connect to Snowflake using ODBC client from ECS Container.
I have this in my odbc.ini file:
[snowflake]
Description=SnowflakeDB
Driver=SnowflakeDSIIDriver
Locale=en-US
Server=mydomain.snowflakecomputing
uid=TEST_SERVICE_USER
role=MY_SERVICE_USER_ROLE
warehouse=MY_WH
When I try to connect from ECS terminal, I am getting this error:
root@ip-x-x-x-x:/# isql -v "Snowflake"
[28000][unixODBC][Snowflake][DSI] (20032) Required setting 'PWD' is not present in the connection settings.
[ISQL]ERROR: Could not SQLConnect