88from databricks .sdk .service .iam import CurrentUserAPI
99from shiny import App , Inputs , Outputs , Session , render , ui
1010
11- from posit .connect .external .databricks import PositCredentialsStrategy
11+ from posit .connect .external .databricks import (
12+ PositCredentialsStrategy ,
13+ PositConnectCredentialsStrategy ,
14+ PositWorkbenchCredentialsStrategy ,
15+ )
1216
1317DATABRICKS_HOST = os .getenv ("DATABRICKS_HOST" )
1418DATABRICKS_HOST_URL = f"https://{ DATABRICKS_HOST } "
@@ -25,12 +29,11 @@ def server(i: Inputs, o: Outputs, session: Session):
2529 session_token = session .http_conn .headers .get ("Posit-Connect-User-Session-Token" )
2630 posit_strategy = PositCredentialsStrategy (
2731 local_strategy = databricks_cli ,
28- user_session_token = session_token ,
32+ workbench_strategy = PositWorkbenchCredentialsStrategy (Config (profile = "workbench" )),
33+ connect_strategy = PositConnectCredentialsStrategy (user_session_token = session_token ),
2934 )
3035 cfg = Config (
31- host = DATABRICKS_HOST_URL ,
32- # uses Posit's custom credential_strategy if running on Connect,
33- # otherwise falls back to the strategy defined by local_strategy
36+ host = DATABRICKS_HOST_URL , # required by databricks_cli
3437 credentials_strategy = posit_strategy ,
3538 )
3639
0 commit comments