Azure Databricks kaynaklarına erişimin kimliğini doğrulama
Databricks CLI veya REST API'leri ile bir Azure Databricks kaynağına erişmek için istemcilerin kaynağa erişmek için gerekli yetkilendirmeye sahip bir Azure Databricks hesabı kullanarak kimlik doğrulaması yapması gerekir. Bir Databricks CLI komutunu güvenli bir şekilde çalıştırmak veya bir hesaba veya çalışma alanına yetkili erişim gerektiren bir Databricks API isteği çağırmak için geçerli Azure Databricks hesabı kimlik bilgilerini temel alan bir erişim belirteci sağlamanız gerekir. Bu makale, bu kimlik bilgilerini sağlamaya ve bir Azure Databricks çalışma alanı veya hesabına erişim yetkisi vermeye yönelik kimlik doğrulama seçeneklerini kapsar.
Aşağıdaki tabloda Azure Databricks hesabınız için kullanılabilen kimlik doğrulama yöntemleri gösterilmektedir.
Azure Databricks kimlik doğrulama yöntemleri
Azure Databricks araçları ve SDK'ları desteklenen bir veya daha fazla Azure Databricks kimlik doğrulama yöntemiyle çalıştığından, kullanım örneğiniz için en iyi kimlik doğrulama yöntemini seçebilirsiniz. Ayrıntılar için Geliştirici araçları araç veya SDK belgelerine bakın.
Metot | Açıklama | Kullanım örneği |
---|---|---|
Hizmet sorumluları için OAuth (OAuth M2M) | Hizmet sorumluları için kısa süreli OAuth belirteçleri. | Tam otomatik ve CI/CD iş akışları gibi katılımsız kimlik doğrulama senaryoları. |
Kullanıcılar için OAuth (OAuth U2M) | Kullanıcılar için kısa süreli OAuth belirteçleri. | İstendiğinde Azure Databricks ile gerçek zamanlı olarak kimlik doğrulaması yapmak için web tarayıcınızı kullandığınız, katılımlı kimlik doğrulama senaryoları. |
Kişisel erişim belirteçleri (PAT) | Kullanıcılar veya hizmet sorumluları için kısa süreli veya uzun ömürlü belirteçler. | Hedef aracınızın OAuth'u desteklemediği senaryolar. |
Azure yönetilen kimlikleri kimlik doğrulaması | Azure tarafından yönetilen kimlikler için Microsoft Entra Id belirteçleri. | Yalnızca Azure sanal makineleri gibi yönetilen kimlikleri destekleyen Azure kaynaklarıyla kullanın. |
Microsoft Entra ID hizmet sorumlusu kimlik doğrulaması | Microsoft Entra Id hizmet sorumluları için Microsoft Entra Id belirteçleri. | Yalnızca Microsoft Entra Id belirteçlerini destekleyen ve Azure DevOps gibi yönetilen kimlikleri desteklemeyen Azure kaynaklarıyla kullanın. |
Azure CLI kimlik doğrulaması | Kullanıcılar veya Microsoft Entra Id hizmet sorumluları için Microsoft Entra Id belirteçleri. | Azure CLI kullanarak Azure kaynaklarına ve Azure Databricks'e erişimin kimliğini doğrulamak için kullanın. |
Microsoft Entra Id kullanıcı kimlik doğrulaması | Kullanıcılar için Microsoft Entra Id belirteçleri. | Yalnızca Microsoft Entra Id belirteçlerini destekleyen Azure kaynaklarıyla kullanın. Databricks, Azure Databricks kullanıcıları için Microsoft Entra ID belirteçlerini el ile oluşturmanızı önermez. |
Hangi kimlik doğrulama yaklaşımını seçmeliyim?
Azure Databricks kaynaklarınıza erişim için Databricks CLI komutunun veya API çağrısının kimliğini doğrulamak için iki seçeneğiniz vardır:
- Azure Databricks kullanıcı hesabı ("kullanıcıdan makineye" kimlik doğrulaması veya U2M olarak adlandırılır) kullanın. Bunu yalnızca yerel istemci ortamınızdan bir Azure Databricks CLI komutu çalıştırırken veya yalnızca sahip olduğunuz ve çalıştırdığınız koddan bir Azure Databricks API isteği çağırırken seçin.
- Azure Databricks hizmet sorumlusu ("makineden makineye" kimlik doğrulaması veya M2M olarak adlandırılır) kullanın. Kodunuzu başkaları çalıştırıyorsa (özellikle bir uygulama söz konusuysa) veya Azure Databricks CLI komutlarını veya API isteklerini çağıracak bir otomasyon oluşturuyorsanız bunu seçin.
- Azure Databricks kullanıyorsanız, Azure Databricks hesabınıza veya çalışma alanınıza erişimin kimliğini doğrulamak için MS Entra hizmet sorumlusunu da kullanabilirsiniz. Ancak Databricks, MS Entra hizmet sorumlusu kimlik doğrulaması üzerinden sağlanan OAuth kimlik doğrulamamızla databricks hizmet sorumlusu kullanmanızı önerir. Bunun nedeni Databricks kimlik doğrulamasının yalnızca Azure Databricks ile kimlik doğrulaması yaparken daha güçlü olan OAuth erişim belirteçlerini kullanmasıdır.
Databricks kaynaklarına erişmek için MS Entra hizmet sorumlusu kullanma hakkında daha fazla bilgi için bkz . MS Entra hizmet sorumlusu kimlik doğrulaması.
Databricks API'sini çağırmak için kullanacağınız hesaba bağlı bir erişim belirtecine de sahip olmanız gerekir. Bu belirteç bir OAuth 2.0 erişim belirteci veya kişisel erişim belirteci (PAT) olabilir. Ancak Azure Databricks, OAuth belirteçleri varsayılan olarak otomatik olarak yenilendiğinden ve erişim belirtecinin doğrudan yönetilmesini gerektirmediğinden yetkilendirme için PAT'ler üzerinden OAuth kullanmanızı kesinlikle önerir ve belirteç ele geçirme ve istenmeyen erişime karşı güvenliğinizi artırır. OAuth sizin için erişim belirtecini oluşturup yönettiğinden, doğrudan bir belirteç dizesi sağlamak yerine bir OAuth belirteç uç noktası URL'si, istemci kimliği ve Azure Databricks çalışma alanınızdan oluşturduğunuz bir gizli dizi sağlarsınız. PAT'ler, düzenli olarak denetlenmedikleri, döndürülmedikleri veya iptal edilmedikleri veya belirteç dizeleri ile parolaların geliştirme ortamınız için güvenli bir şekilde yönetilmediği takdirde çıkış fırsatları sağlayan uzun süreli belirteçler riskini ortaya çıkarır.
Azure Databricks ile kimlik doğrulaması yapmak için OAuth Nasıl yaparım??
Azure Databricks, belirli kimlik bilgileri değerlerine ayarlayabileceğiniz varsayılan ortam değişkenleri kümesini kullanarak kimlik doğrulamasında size yardımcı olacak birleşik istemci kimlik doğrulaması sağlar. Bu ortam değişkenleri, Azure Databricks CLI komutlarını çalıştıracak veya Azure Databricks API'lerini çağıracak ortama özgü olduğundan, bu daha kolay ve güvenli bir şekilde çalışmanıza yardımcı olur.
- Kullanıcı hesabı (kullanıcıdan makineye) kimlik doğrulaması için Azure Databricks OAuth, araçlar ve SDK'lar standart olarak uygulandığı sürece Databricks istemci birleşik kimlik doğrulaması ile sizin için işlenir. Aksi takdirde, doğrudan Azure Databricks CLI komutlarınızda ve API isteklerinizde kullanmak üzere el ile bir OAuth kod doğrulayıcı ve sınama çifti oluşturabilirsiniz. Bkz . 1. Adım: OAuth kod doğrulayıcı ve kod sınama çifti oluşturma.
- Hizmet sorumlusu (makineden makineye) kimlik doğrulaması için Azure Databricks OAuth, çağıranın istemci kimlik bilgilerini ve isteğin yetkilendirilebileceği bir belirteç uç noktası URL'si sağlamasını gerektirir. (Databricks birleşik istemci kimlik doğrulamasını destekleyen Azure Databricks araçlarını ve SDK'larını kullanıyorsanız bu sizin için işlenir.) Kimlik bilgileri benzersiz bir istemci kimliği ve istemci gizli dizisi içerir. Kodunuzu çalıştıracak Databricks hizmet sorumlusu olan istemcinin Databricks çalışma alanlarına atanması gerekir. Hizmet sorumlusunu erişeceği çalışma alanlarına atadıktan sonra, size belirli ortam değişkenleriyle ayarlayacağınız bir istemci kimliği ve bir istemci gizli dizisi sağlanır.
Bu ortam değişkenleri şunlardır:
DATABRICKS_HOST
: Bu ortam değişkeni, Azure Databricks hesap konsolunuzun (http://accounts.cloud.databricks.com
) veya Azure Databricks çalışma alanı URL'nizin (https://{workspace-id}.cloud.databricks.com
) URL'sine ayarlanır. Kodunuzda gerçekleştirdiğiniz işlemlerin türüne göre bir konak URL türü seçin. Özellikle, Azure Databricks hesap düzeyi CLI komutlarını veya REST API isteklerini kullanıyorsanız, bu değişkeni Azure Databricks hesabı URL'niz olarak ayarlayın. Azure Databricks çalışma alanı düzeyinde CLI komutlarını veya REST API isteklerini kullanıyorsanız Azure Databricks çalışma alanı URL'nizi kullanın.DATABRICKS_ACCOUNT_ID
: Azure Databricks hesap işlemleri için kullanılır. Bu, Azure Databricks hesap kimliğinizdir. Bunu almak için bkz . Hesap kimliğinizi bulma.DATABRICKS_CLIENT_ID
: (Yalnızca M2M OAuth) Hizmet sorumlunuzu oluştururken size atanan istemci kimliği.DATABRICKS_CLIENT_SECRET
: (Yalnızca M2M OAuth) Hizmet sorumlunuzu oluştururken oluşturduğunuz istemci gizli dizisi.
Bunları doğrudan veya istemci makinenizde databricks yapılandırma profili (.databrickscfg
) kullanarak ayarlayabilirsiniz.
OAuth erişim belirtecini kullanmak için Azure Databricks çalışma alanınızın veya hesap yöneticinizin kullanıcı hesabınıza veya hizmet sorumlunuza kodunuzun CAN USE
erişeceği hesap ve çalışma alanı özellikleri için ayrıcalık vermiş olması gerekir.
İstemciniz için OAuth yetkilendirmesini yapılandırma ve bulut sağlayıcısına özgü yetkilendirme seçeneklerini gözden geçirme hakkında daha fazla bilgi için bkz . Birleşik istemci kimlik doğrulaması.
Üçüncü taraf hizmetler ve araçlar için kimlik doğrulaması
Üçüncü taraf hizmetlere, araçlara veya SDK'lara erişen bir kod yazıyorsanız, üçüncü taraf tarafından sağlanan kimlik doğrulama ve yetkilendirme mekanizmalarını kullanmanız gerekir. Ancak Azure Databricks hesabınıza veya çalışma alanı kaynaklarınıza üçüncü taraf bir araç, SDK veya hizmet erişimi vermeniz gerekiyorsa Databricks aşağıdaki desteği sağlar:
Databricks Terraform Sağlayıcısı: Bu araç, Azure Databricks kullanıcı hesabınızı kullanarak Sizin adınıza Terraform'dan Azure Databricks API'lerine erişebilir. Diğer ayrıntılar için bkz . Terraform kullanarak hizmet sorumlusu sağlama.
GitHub, GitLab ve Bitbucket gibi Git sağlayıcıları Databricks hizmet sorumlusu kullanarak Azure Databricks API'lerine erişebilir. Daha fazla ayrıntı için bkz . CI/CD için hizmet sorumluları.
Jenkins, Databricks hizmet sorumlusu kullanarak Azure Databricks API'lerine erişebilir. Daha fazla ayrıntı için bkz . Azure Databricks üzerinde Jenkins ile CI/CD.
Azure DevOps, MS Entra hizmet sorumlusu ve kimliği kullanarak Azure Databricks API'lerine erişebilir. Diğer ayrıntılar için bkz . Databricks üzerinde Azure DevOps ile kimlik doğrulaması.
Azure Databricks yapılandırma profilleri
Azure Databricks yapılandırma profili, Azure Databricks'in kimlik doğrulaması için ihtiyaç duyduğu ayarları ve diğer bilgileri içerir. Azure Databricks yapılandırma profilleri, araçlarınız, SDK'larınız, betikleriniz ve kullanacağınız uygulamalar için yerel istemci dosyalarında depolanır. Standart yapılandırma profili dosyası olarak adlandırılır .databrickscfg
. Daha fazla bilgi için bkz . Azure Databricks yapılandırma profilleri.