Aracılığıyla paylaş


Databricks İşleri için kimlikleri, izinleri ve ayrıcalıkları yönetme

Bu makale, Databricks İşleri için kimlikleri, izinleri ve ayrıcalıkları yönetmeye yönelik öneriler ve yönergeler içerir.

Not

Gizli diziler , kümenin Spark sürücü günlüğünden stdout ve stderr akışlarından yeniden işlenmez. Hassas verileri korumak için Spark sürücü günlükleri varsayılan olarak yalnızca iş, tek kullanıcı erişim modu ve paylaşılan erişim modu kümeleri üzerinde YÖNETİLEMİş iznine sahip kullanıcılar tarafından görüntülenebilir. CAN ATTACH TO veya CAN RESTART iznine sahip kullanıcıların bu kümelerdeki günlükleri görüntülemesine izin vermek için, küme yapılandırmasında aşağıdaki Spark yapılandırma özelliğini ayarlayın: spark.databricks.acl.needAdminPermissionToViewLogs false.

Yalıtımsız Paylaşılan erişim modu kümelerinde Spark sürücü günlükleri, CAN ATTACH TO veya CAN MANAGE iznine sahip kullanıcılar tarafından görüntülenebilir. Günlükleri kimlerin okuyabileceğini yalnızca CAN MANAGE iznine sahip kullanıcılarla sınırlamak için trueolarak ayarlayınspark.databricks.acl.needAdminPermissionToViewLogs.

Spark özelliklerini bir küme yapılandırmasına nasıl ekleyeceğinizi öğrenmek için Spark yapılandırmasına göz atın.

İşler için varsayılan ayrıcalıklar

İşler varsayılan olarak aşağıdaki ayrıcalıklara sahiptir:

  • İşi oluşturana IS OWNER izni verilir.
  • Çalışma alanı yöneticilerine CAN MANAGE izni verilir.
  • İşin oluşturucusu Farklı çalıştır olarak ayarlanır.

İşler için yönetici izinleri

Varsayılan olarak, çalışma alanı yöneticileri iş sahibini veya Farklı çalıştır yapılandırmasını çalışma alanında herhangi bir kullanıcı veya hizmet sorumlusuyla değiştirebilir. Hesap yöneticileri bu davranışı değiştirmek için ayarı yapılandırabilir RestrictWorkspaceAdmins . Bkz. Çalışma alanı yöneticilerini kısıtlama.

İşler Unity Kataloğu izinleriyle nasıl etkileşim kurar?

İşler, Farklı çalıştır ayarında kullanıcının kimliği olarak çalıştırılır. Bu kimlik, aşağıdakiler için izin vermelerine karşı değerlendirilir:

  • Tablolar, birimler, modeller ve görünümler de dahil olmak üzere Unity Kataloğu tarafından yönetilen varlıklar.
  • Eski Hive meta veri deposunda kayıtlı varlıklar için eski tablo erişim denetim listeleri (ACL'ler).
  • İşlem, not defterleri, sorgular ve diğer çalışma alanı varlıkları için ACL'ler.
  • Databricks gizli dizileri. Bkz. Gizli dizi yönetimi.

Not

Unity Kataloğu izinleri ve eski tablo ACL'leri uyumlu işlem erişim modları gerektirir. Bkz . İşler için işlem yapılandırma.

SQL görevleri ve izinleri

Dosya görevi, Farklı çalıştır kimliğine tam olarak saygılı olan tek SQL görev türüdür.

SQL sorguları, uyarılar ve eski pano görevleri yapılandırılmış paylaşım ayarlarına uyar.

  • Sahip olarak çalıştır: Zamanlanmış SQL görevinin çalıştırmaları her zaman yapılandırılmış SQL varlığının sahibinin kimliğini kullanır.
  • Görüntüleyici olarak çalıştır: Zamanlanmış SQL görevinin çalıştırmaları her zaman farklı çalıştır alanında ayarlanan kimliği kullanır.

Sorgu paylaşımı ayarları hakkında daha fazla bilgi edinmek için bkz . Sorgu izinlerini yapılandırma.

Örnek

Aşağıdaki senaryoda SQL paylaşım ayarlarının etkileşimi ve farklı çalıştır işi ayarı gösterilmektedir:

  • A kullanıcısı adlı my_querySQL sorgusunun sahibidir.
  • Kullanıcı A, Sahip olarak çalıştır paylaşım ayarıyla yapılandırılırmy_query.
  • B kullanıcısı adlı my_jobbir işte görev olarak zamanlarmy_query.
  • B kullanıcısı adlı prod_spbir hizmet ilkesiyle çalışacak şekilde yapılandırıyormy_job.
  • çalıştırıldığında my_job , kullanıcı A'nın komutunu çalıştırması my_queryiçin kimliğini kullanır.

Şimdi Kullanıcı B'nin bu davranışı istemediğini varsayalım. Mevcut yapılandırmadan başlayarak aşağıdakiler gerçekleşir:

  • Kullanıcı A, paylaşım ayarını my_query Görüntüleyici olarak çalıştır olarak değiştirir.
  • Çalıştırıldığında my_job , öğesini tanımlar prod_sp.

İş çalıştırmaları için kimlik yapılandırma

Farklı çalıştır ayarını değiştirmek için, iş üzerinde YÖNETİLEBİlİR veya SAHİBİDIR iznine sahip olmanız gerekir.

Farklı çalıştır ayarını kendinize veya Hizmet Sorumlusu Kullanıcı yetkilendirmesine sahip olduğunuz çalışma alanında herhangi bir hizmet sorumlusuna ayarlayabilirsiniz.

Çalışma alanı kullanıcı arabirimindeki bir işin Farklı çalıştır ayarını yapılandırmak için aşağıdaki adımları kullanarak var olan bir işi seçin:

  1. Kenar çubuğunda İş Akışları'na tıklayın İş Akışları Simgesi .
  2. Ad sütununda iş adına tıklayın.
  3. İş ayrıntıları yan panelinde Farklı çalıştır alanının yanındaki kalem simgesine tıklayın.
  4. Bir kullanıcı veya hizmet sorumlusu arayın ve seçin.
  5. Kaydet'e tıklayın.

Hizmet sorumlularıyla çalışma hakkında daha fazla bilgi için aşağıdakilere bakın:

İş idaresi için en iyi yöntemler

Databricks, tüm üretim işleri için aşağıdakileri önerir:

  • Hizmet sorumlusuna iş sahipliği atama

    İş sahibi olan kullanıcı kuruluşunuzdan ayrılırsa iş başarısız olabilir. İşleri çalışan değişim sıklığına göre sağlam hale getirmek için hizmet sorumlularını kullanın.

    Varsayılan olarak, çalışma alanı yöneticileri iş izinlerini yönetebilir ve gerekirse sahipliği yeniden atayabilir.

  • Hizmet sorumlusu kullanarak üretim işlerini çalıştırma

    İşler varsayılan olarak iş sahibinin ayrıcalıklarını kullanarak çalışır. Bir hizmet sorumlusuna sahiplik atarsanız, iş çalıştırmaları hizmet sorumlusunun izinlerini kullanır.

    Üretim işleri için hizmet sorumlularını kullanmak, üretim verileri üzerinde yazma izinlerini kısıtlamanıza olanak tanır. İşleri bir kullanıcının izinlerini kullanarak çalıştırırsanız, bu kullanıcının işin gerektirdiği üretim verilerini düzenlemek için aynı izinlere sahip olması gerekir.

  • Unity Kataloğu ile uyumlu işlem yapılandırmalarını her zaman kullanın

    Unity Kataloğu veri idaresi için desteklenen bir işlem yapılandırması kullanmanız gerekir.

    İşler ve SQL ambarları için sunucusuz işlem her zaman Unity Kataloğu'nu kullanır.

    Databricks, klasik işlem içeren işler için desteklenen iş yükleri için paylaşılan erişim modu önerir. Gerektiğinde tek kullanıcı erişim modunu kullanın.

    Unity Kataloğu ile yapılandırılan Delta Live Tables işlem hatlarının bazı sınırlamaları vardır. Bkz. Sınırlamalar.

  • Üretim işlerinde izinleri kısıtlama

    İş çalıştırmalarını tetikleyen, durduran veya yeniden başlatan kullanıcıların Çalıştırmayı Yönetebilir iznine sahip olması gerekir.

    İş yapılandırmasını veya izleyici çalıştırmalarını görüntüleyen kullanıcıların Görüntüleyebilir iznine sahip olması gerekir.

    Üretim kodunu değiştirmek için güvenilen kullanıcılara yalnızca Yönetebilir veya SahibiDir ayrıcalıkları verin.

İşe erişimi denetleme

İş erişimi denetimi, iş sahiplerinin ve yöneticilerin işler üzerinde ayrıntılı izinler vermesine olanak tanır. Aşağıdaki izinler kullanılabilir:

Not

Her izin, aşağıdaki tabloda altındaki izinlerin verilmesini içerir.

İzin İzin ver
Sahip Varsayılan olarak Farklı çalıştır için kullanılan kimlik.
Yönetilebilir Kullanıcılar, izinler de dahil olmak üzere iş tanımını düzenleyebilir. Kullanıcılar bir zamanlamayı duraklatabilir ve sürdürebilir.
Çalıştırmayı Yönetebilir Kullanıcılar iş çalıştırmalarını tetikleyebilir ve iptal edebilir.
Görüntüleyebilir Kullanıcılar iş çalıştırma sonuçlarını görüntüleyebilir.

İş izin düzeyleri hakkında bilgi için bkz . İş ACL'leri.

İş izinlerini yapılandırma

Çalışma alanı kullanıcı arabirimindeki bir işin izinlerini yapılandırmak için aşağıdaki adımları kullanarak var olan bir işi seçin:

  1. Kenar çubuğunda İş Akışları'na tıklayın İş Akışları Simgesi .
  2. Ad sütununda iş adına tıklayın.
  3. İş ayrıntıları panelinde İzinleri düzenle'ye tıklayın. İzin Ayarları iletişim kutusu görüntülenir.
  4. Kullanıcı, Grup veya Hizmet Sorumlusu Seç... alanına tıklayın ve bir kullanıcı, grup veya hizmet sorumlusu yazmaya başlayın. alanı, çalışma alanındaki tüm kullanılabilir kimlikleri arar.
  5. Ekle'yi tıklatın.
  6. Kaydet'e tıklayın.

İş sahibini yönetme

İş sahibini yalnızca çalışma alanı yöneticileri düzenleyebilir. Tam olarak bir iş sahibi atanmalıdır. İş sahipleri kullanıcılar veya hizmet sorumluları olabilir.