Reputation: 1
Hi, I am trying to connect to snowflake from R Workbench. This is the error received while connecting with okta.
con <- dbConnect(jdbcDriver, "jdbc:snowflake://company.snowflakecomputing.com/?authenticator=https://company.okta.com/", '[email protected]', 'pass')
Sep 16, 2021 10:07:42 PM net.snowflake.client.core.SessionUtil handleFederatedFlowError SEVERE: IOException when authenticating with https://company.okta.com/ java.net.MalformedURLException: no protocol: /login/cert at java.net.URL.(URL.java:611) at java.net.URL.(URL.java:508) at java.net.URL.(URL.java:457) at net.snowflake.client.core.SessionUtil.isPrefixEqual(SessionUtil.java:1218) at net.snowflake.client.core.SessionUtil.federatedFlowStep4(SessionUtil.java:999) at net.snowflake.client.core.SessionUtil.getSamlResponseUsingOkta(SessionUtil.java:1206) at net.snowflake.client.core.SessionUtil.newSession(SessionUtil.java:378) at net.snowflake.client.core.SessionUtil.openSession(SessionUtil.java:284) at net.snowflake.client.core.SFSession.open(SFSession.java:446) at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initialize(DefaultSFConnectionHandler.java:104) at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initializeConnection(DefaultSFConnectionHandler.java:79) at net.snowflake.client.jdbc.SnowflakeConnectionV1.initConnectionWithImpl(SnowflakeConnectionV1.java:116) at net.snowflake.client.jdbc.SnowflakeConnectionV1.(SnowflakeConnectionV1.java:96) at net.snowflake.client.jdbc.SnowflakeDriver.connect(SnowflakeDriver.java:164) at java.sql.DriverManager.getConnection(DriverManager.java:664) at java.sql.DriverManager.getConnection(DriverManager.java:247)
Sep 16, 2021 10:07:43 PM net.snowflake.client.core.SessionUtil handleFederatedFlowError SEVERE: IOException when authenticating with https://company.okta.com/ java.net.MalformedURLException: no protocol: /login/cert at java.net.URL.(URL.java:611) at java.net.URL.(URL.java:508) at java.net.URL.(URL.java:457) at net.snowflake.client.core.SessionUtil.isPrefixEqual(SessionUtil.java:1218) at net.snowflake.client.core.SessionUtil.federatedFlowStep4(SessionUtil.java:999) at net.snowflake.client.core.SessionUtil.getSamlResponseUsingOkta(SessionUtil.java:1206) at net.snowflake.client.core.SessionUtil.newSession(SessionUtil.java:378) at net.snowflake.client.core.SessionUtil.openSession(SessionUtil.java:284) at net.snowflake.client.core.SFSession.open(SFSession.java:446) at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initialize(DefaultSFConnectionHandler.java:104) at net.snowflake.client.jdbc.DefaultSFConnectionHandler.initializeConnection(DefaultSFConnectionHandler.java:79) at net.snowflake.client.jdbc.SnowflakeConnectionV1.initConnectionWithImpl(SnowflakeConnectionV1.java:116) at net.snowflake.client.jdbc.SnowflakeConnectionV1.(SnowflakeConnectionV1.java:96) at net.snowflake.client.jdbc.SnowflakeDriver.connect(SnowflakeDriver.java:164)
Error in .jcall(drv@jdrv, "Ljava/sql/Connection;", "connect", as.character(url)[1], : net.snowflake.client.jdbc.SnowflakeSQLException: JDBC driver encountered communication error. Message: Exception encountered when opening connection: no protocol: /login/cert.
Upvotes: 0
Views: 743
Reputation: 1650
I presume that Okta is set up with MFA. If so, the error is because of that since Snowflake drivers does not support Native authentication for Okta with MFA enabled.
You need to use externalbrowser as the authenticator option if the requirement is to use Okta + MFA.
Upvotes: 0