Przykład przepływu pracy wpisu tajnego

W tym przykładzie przepływu pracy używamy wpisów tajnych do konfigurowania poświadczeń JDBC na potrzeby nawiązywania połączenia z usługą Azure Data Lake Store.

Tworzenie zakresu wpisów tajnych

Utwórz zakres wpisu tajnego o nazwie jdbc.

Aby utworzyć zakres wpisów tajnych opartych na usłudze Databricks:

databricks secrets create-scope jdbc

Aby utworzyć zakres wpisów tajnych opartych na usłudze Azure Key Vault, postępuj zgodnie z instrukcjami w artykule Tworzenie zakresu wpisów tajnych opartych na usłudze Azure Key Vault.

Uwaga

Jeśli Twoje konto nie ma planu Premium, musisz utworzyć zakres z uprawnieniami udzielonymi MANAGE wszystkim użytkownikom ("użytkownicy"). Przykład:

databricks secrets create-scope jdbc --initial-manage-principal users

Tworzenie wpisów tajnych

Metoda tworzenia wpisów tajnych zależy od tego, czy używasz zakresu opartego na usłudze Azure Key Vault, czy zakresu opartego na usłudze Databricks.

Tworzenie wpisów tajnych w zakresie opartym na usłudze Azure Key Vault

Dodaj wpisy tajne i password użyj interfejsu API REST zestawu wpisów tajnych platformy username Azure lub interfejsu użytkownika witryny Azure Portal:

Add secrets to Azure Key Vault

Tworzenie wpisów tajnych w zakresie opartym na usłudze Databricks

Dodaj wpisy username tajne i password. Uruchom następujące polecenia i wprowadź wartości wpisów tajnych w otwartym edytorze.

databricks secrets put-secret jdbc username
databricks secrets put-secret jdbc password

Używanie wpisów tajnych w notesie

W notesie przeczytaj wpisy tajne przechowywane w zakresie jdbc wpisów tajnych, aby skonfigurować łącznik JDBC:

val driverClass = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
val connectionProperties = new java.util.Properties()
connectionProperties.setProperty("Driver", driverClass)

val jdbcUsername = dbutils.secrets.get(scope = "jdbc", key = "username")
val jdbcPassword = dbutils.secrets.get(scope = "jdbc", key = "password")
connectionProperties.put("user", s"${jdbcUsername}")
connectionProperties.put("password", s"${jdbcPassword}")

Teraz możesz ich ConnectionProperties używać z łącznikiem JDBC, aby komunikować się ze źródłem danych. Wartości pobrane z zakresu nigdy nie są wyświetlane w notesie (zobacz Redaction Secret ).

Udzielanie dostępu innej grupie

Uwaga

Ten krok wymaga, aby Twoje konto miało plan Premium.

Po upewnieniu się, że poświadczenia zostały prawidłowo skonfigurowane, udostępnij te poświadczenia datascience grupie do użycia na potrzeby analizy, udzielając im uprawnień do odczytu zakresu wpisu tajnego i wyświetlania listy dostępnych wpisów tajnych .

datascience Udziel grupie uprawnienia ODCZYT do tych poświadczeń, wysyłając następujące żądanie:

databricks secrets put-acl jdbc datascience READ

Aby uzyskać więcej informacji na temat kontroli dostępu wpisów tajnych, zobacz Kontrola dostępu wpisów tajnych.