Select to view content in your preferred language

Accessing Snowflake with SSO

2889
4
Jump to solution
10-12-2022 03:52 AM
Labels (1)
SBark_CBRE
New Contributor II

I am trying to create a database connection in ArcGIS Pro to Snowflake using SSO. I have successfully created an OLE DB connection to view my tables, but I'm unable to view their spatial component.

The solution would be to create a database connection and then a query layer, but within the settings to create a db connection under 'Authentication Type' it is only possible to select 'User' - which requires a username and login (not possible via SSO). 

This is confirmed on Esri's help page - "Only user authentication is supported when you connect to Snowflake from ArcGIS."

Is there a possible workaround to accessing my snowflake data through the database connection option? If not, how can I view the spatial component of my tables that have geography fields? 

Info: ArcGIS Pro (v3.0), Enterprise (10.9.1)

0 Kudos
1 Solution

Accepted Solutions
NanaDei
Esri Contributor

Hi @SBark_CBRE . Please test connecting with the following information for us to determine if works at your end.

-for ‘Server’, provide the name without https://

eg. my_account.snowflakecomputing.com

 

-for ‘User Name’ and ‘Password’, provide your account and a password

   eg. testuser@myorganization.com

 

-for the ‘Advanced Options’, use authenticator=externalbrowser without quotes (typo in the earlier response)

Keep the browser opened after establishing the connection

View solution in original post

0 Kudos
4 Replies
NanaDei
Esri Contributor

Hi @SBark_CBRE . We’ll work on enhancing the user experience when connecting via other authentication types. However, you can connect by adding the authenticator to the ‘Advanced Options’ field.

Review step 10 from the following link:

https://pro.arcgis.com/en/pro-app/latest/help/data/databases/connect-snowflake.htm

Hence, for a native SSO (OKTA only) connection, you can provide your username and password, and include the authenticator in the ‘Advanced Options”

eg.

authenticator= https://<okta_account_name>.okta.com

For a browser based SSO connection, provide the authenticator as

authenticator='externalbrowser'

More information here:

https://docs.snowflake.com/en/user-guide/admin-security-fed-auth-use.html

SBark_CBRE
New Contributor II

Thanks @NanaDei for the quick response. I have followed the browser based SSO connection instructions and ensured the advanced options read authenticator='externalbrowser'. I am still facing some errors however, namely "Underlying DBMS error [Snowflake] ... CURLerror (curl_easy_perform() failed) - code=6 msg='Couldn't resolve host name'."

This (I believe) narrows it down to the server url, which in the Windows ODBC administrator I'm only successful connecting when dropping the https:// from my snowflake server url. Contrastingly in ArcGIS Pro's database connection, I get an immediate error without the https:// and when I add it in, it spends a minute trying to connect before the above error (which is the furthest along the process I have got). This feels like they need to be aligned but I am slightly lost as to why this is happening.

Further to the above, would you mind clarifying whether or not I need to insert my username and password on the Database Connection page (in Pro), or leave it blank and await the browser based SSO to use my details? I presumed leave it blank but without any information, the 'OK' button is greyed out so I cannot progress.

Tags (1)
0 Kudos
NanaDei
Esri Contributor

Hi @SBark_CBRE . Please test connecting with the following information for us to determine if works at your end.

-for ‘Server’, provide the name without https://

eg. my_account.snowflakecomputing.com

 

-for ‘User Name’ and ‘Password’, provide your account and a password

   eg. testuser@myorganization.com

 

-for the ‘Advanced Options’, use authenticator=externalbrowser without quotes (typo in the earlier response)

Keep the browser opened after establishing the connection

0 Kudos
SBark_CBRE
New Contributor II

@NanaDei - amazing, that worked! Thanks so much

 

0 Kudos