Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Unity Kataloğu'ndaki sırları, her uygulamanın yalnızca kendi sırlarına erişebilmesi, çoğu kimliğin bir sırrı değerini okumadan kullanabilmesi ve değerleri şifreleyen anahtarı sizin kontrol etmeniz için organize edin. Sırların nasıl oluşturulacağı, erişim verileceği ve okunacağı için Unity Kataloğundaki Sırlar'a bakınız.
Sırları kimlerin ihtiyaç duyduğuna göre gruplayın
Her uygulama, ortam veya ekip için bir şema oluşturun ve ayrıcalıkları katalog yerine şema üzerinde değil, şema için CREATE SECRET verin. Bir şema 1.000'e kadar gizli bilgi tutarken, bir metastore 10.000'e kadar gizli bilgi tutar.
-
Tek bir secret üzerinde izin: Bir şema üzerindeki grant, sonradan eklenen secret'lar da dahil olmak üzere içindeki her secret için geçerlidir. Bir sorumlu yalnızca bir sırra ihtiyaç duyduğunda,
READ SECRETiznini şeması yerine o sır üzerinde verin. - Gerektiğinde üretim sırları için ayrı bir katalog kullanın: Çalışma alanı bağlaması ve müşteri tarafından yönetilen anahtarlar tüm kataloga uygulanır. Üretim gizli bilgilerini geliştirme çalışma alanlarından uzak tutmak veya kendi anahtarlarıyla şifrelemek için ayrı bir kataloga koyun. Workspace-catalog binding ve Encrypt Azure Databricks-managed secrets with your own key bölümlerine bakınız.
Emirler uygulamasına kendi şemasını vermek ve bir raporlama işi sadece sırlarından birini okumak için aşağıdakini çalıştırın:
-- The application's service principal reads every secret in its schema
CREATE SCHEMA main.orders_app;
GRANT USE CATALOG ON CATALOG main TO `orders-service-principal`;
GRANT USE SCHEMA, READ SECRET ON SCHEMA main.orders_app TO `orders-service-principal`;
-- The reporting job reads only the warehouse password
GRANT USE CATALOG ON CATALOG main TO `reporting-service-principal`;
GRANT USE SCHEMA ON SCHEMA main.orders_app TO `reporting-service-principal`;
GRANT READ SECRET ON SECRET main.orders_app.warehouse_password TO `reporting-service-principal`;
Azure Key Vault tarafından desteklenen sırlar için, her şema için kendi hizmet kimlik bilgisi ve bağlantısı olan bir Key Vault kullanın. Key Vault bağlantıları etiket filtrelerini desteklemez, bu yüzden kasa sınırdır. Bir kasa 1.000'den fazla sır barındırırsa, Unity Catalog önce en eski sırrı içe aktarır ve geri kalanını atlar.
Birçok uygulamanın erişebildiği bir şemayı tek bir paylaşılan Key Vault ile desteklemeyin.
Sırları ayrı ayrı keşfetme, döndürme ve okuma izinlerini yönetin
Bunların her biri ayrı bir ayrıcalıktır; dolayısıyla bir sırrı güncelleyen veya onu Catalog Explorer'da bulan bir sorumlunun sırrın değerini görmesi gerekmez:
| Bir yetkiliye izin vermek | Grant | Değeri döndürür |
|---|---|---|
| Sırları bulun ve erişim talep edin |
BROWSE katalogda yer alır. Her sırrın adı, sahibi ve son kullanma tarihi gibi meta verilerini gösterir. |
No |
| Bir sırrı değerini güncelleyerek yenilemek | WRITE SECRET |
No |
Değeri okuyun, örneğin bir job içinde dbutils.secrets |
READ SECRET |
Yes |
Ayrıcalıkların tam listesi için Sırlara erişim izni verme bölümüne bakın.
Herkesin sırları bulup erişim talep etmesini ve bir rotasyon işinin warehouse şifresini okumadan güncellemesini sağlamak için aşağıdakileri çalıştırın:
GRANT BROWSE ON CATALOG main TO `account users`;
GRANT USE CATALOG ON CATALOG main TO `rotation-service-principal`;
GRANT USE SCHEMA ON SCHEMA main.orders_app TO `rotation-service-principal`;
GRANT WRITE SECRET ON SECRET main.orders_app.warehouse_password TO `rotation-service-principal`;
BROWSE ona sahip olan herkes için yorumları gösterir. Bir sırrın yorumunu kullanarak sahibinin kim olduğunu ve nasıl erişim talep edileceğini söyleyin. Asla bir yorum satırına bir değer ya da onunla ilgili bir ipucu koyma.
Azure Databricks tarafından yönetilen sırları kendi anahtarınızla şifreleyin
Bir katalogdaki müşteri tarafından yönetilen anahtar (CMK) ayarları, içindeki Azure Databricks tarafından yönetilen her gizli diziye uygulanır. Üretim sırlarını ayrı bir anahtarla şifrelemek için kendi kataloğuna koyabilirsiniz. CMK'nin gizli verilere nasıl uygulandığını öğrenmek için bkz. Müşteri tarafından yönetilen anahtarlarla gizli değerleri şifreleme.
Gizli anahtarları kaynağında yenileyin
Azure Key Vault tarafından desteklenen sırlar için, Azure Key Vault'ta değerleri döndürün, örneğin Key Vault rotasyon politikası ile. Değerlerini Azure Databricks tarafından yönetilen sırlara kopyalamayın, çünkü her kopya döndürülmesi gereken başka bir değerdir.
Azure Databricks tarafından yönetilen sırlar için, değeri Catalog Explorer veya REST API ile güncelleyin. Sırrın süresi dolduğunda Catalog Explorer'ın bir uyarı göstermesi için bir son kullanma tarihi ayarlayın.
Zaten bir değeri olan kod, sırrı tekrar okuyana kadar onu saklar. Uzun süreli görevlerde, sadece başlangıçta değil, her bağlantı açtığınızda sırrı okuyun.
İş yüklerinin sırları okumadan kullanmasına izin verin
Bir sırra güvenen çoğu kullanıcı onun değerini görmek zorunda kalmaz. Bir sır bildiren Unity Catalog UDF'si, sırrı sahibinin izinleriyle okur; bu nedenle çağıranların yalnızca UDF üzerinde EXECUTE iznine sahip olması yeterlidir; örneğin kişisel verileri maskelemek veya karmalamak için. Buna karşılık, bir çalışma alanı gizli kapsamında secret() çağıran bir SQL işlevini çalıştıran herkesin, kapsam üzerinde READ iznine sahip olması gerekir; bu da içindeki tüm sırları açığa çıkarır. Bkz. UDF'lerde sırlar kullanın.
-
READ SECRETYalnızca işleri yürüten hizmet sorumlularına, sırrı bildiren UDF sahiplerine ve sırlara sahip olan küçük gruba verin. - Gizli bilgi tanımlayan her UDF'nin sahibi olarak bir grup veya hizmet sorumlusu yap, böylece biri ayrıldığında UDF başarısız olmaz.
- Oturum kapsamındaki UDF'leri yalnızca her çağıran sırrı zaten okuyabildiğinde kullanın. Arayan kişinin izinleriyle gizli bilgileri okurlar.
Warning
Bir UDF'den asla gizli bir değer geri verme. Veri maskeleme, UDF kodunun sorgu sonuçlarında bir değer döndürmesini engellemez.
Bir model sağlayıcı hizmeti ayrıca sağlayıcı kimlik bilgisi olarak Unity Catalog secret'ını kullanabilir, böylece arayanlar anahtarı görmeden modeli sorgular. Bkz. Bir sağlayıcı kimlik bilgisini Unity Catalog gizli anahtarıyla destekleme.
Kimin erişim verebileceğini kontrol edin ve bunu denetleyin
- Sırların ve şemalarının sahipliğini bireye değil, bir gruba verin.
-
MANAGEiznine sahip olan Metastore yöneticileri ve sorumlular bir değeri okuyamaz, ama kendilerineREAD SECRETverebilirler.MANAGEöğesini küçük bir grupla sınırlı tutun. - Sistem tablosunda
system.access.auditgizli okumaları ve izinleri inceleyin. Bkz. Gizli erişimi denetle.
Ek kaynaklar
| Resource | Description |
|---|---|
| Unity Catalog'da Gizli Anahtarlar | Unity Kataloğu sırlarını oluşturun, izin verin ve okuyun. |
| Gizlilik yönetimi | Unity Kataloğu sırlarını çalışma alanı gizli kapsamlarıyla karşılaştırın ve her birini nerede kullanabileceğinizi görün. |