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.
Şunlar için geçerlidir:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitik Platform Sistemi (PDW)
Microsoft Fabric'te SQL veritabanı
sqlcmd, yüklediğiniz sürüme bağlı olarak çeşitli Microsoft Entra kimlik doğrulama modellerini destekler.
Note
Microsoft Entra ID, Azure Active Directory (Azure AD) içinyeni ad olsa da, mevcut ortamların kesintiye uğramasını önlemek için Azure AD yine de kullanıcı arabirimi alanları, bağlantı sağlayıcıları, hata kodları ve cmdlet'ler gibi sabit kodlanmış bazı öğelerde kalır. Bu makalede, iki ad birbirinin yerine kullanılabilir.
Sisteminizde hangi sqlcmd değişkeninin ve sürümünün yüklü olduğunu öğrenmek için bkz. Sqlcmd yardımcı programının yüklü sürümünü denetleme. sqlcmd'yi alma hakkında bilgi için bkz. sqlcmd yardımcı programını indirme ve yükleme.
sqlcmd (Go), azidentity paketini temel alan daha fazla Microsoft Entra kimlik doğrulama modelini destekler. Uygulama, go-sqlcmd sürücüsündebir Microsoft Entra bağlayıcısına dayanır.
Komut satırı bağımsız değişkenleri
Microsoft Entra kimlik doğrulamasını kullanmak için iki komut satırı anahtarından birini kullanabilirsiniz.
-G (çoğunlukla) sqlcmd (ODBC) içindeki kullanımıyla uyumludur. Bir kullanıcı adı ve parola sağlanırsa, Microsoft Entra parola kimlik doğrulaması kullanılarak kimlik doğrulaması yapılır. Bir kullanıcı adı sağlanırsa, bir web tarayıcısı görüntüleyebilen Microsoft Entra etkileşimli kimlik doğrulamasını kullanır. Kullanıcı adı veya parola sağlanmamışsa, çeşitli mekanizmalar aracılığıyla kimlik doğrulaması yapmaya çalışan bir DefaultAzureCredentialkullanır.
--authentication-method= aşağıdaki kimlik doğrulama türlerinden birini belirtmek için kullanılabilir.
ActiveDirectoryDefault
- Bu modun kullandığı kimlik doğrulaması türlerine genel bakış için bkz. Varsayılan Azure Kimlik Bilgileri.
- Veritabanı otomasyon betiklerinizin hem yerel geliştirme ortamlarında hem de Azure'daki bir üretim dağıtımında çalıştırılması amaçlanıyorsa bu yöntemi seçin. Geliştirme ortamınızda bir istemci sırrı veya Azure CLI oturum açma kullanabilirsiniz. Betiği geliştirme ortamından değiştirmeden, üretim dağıtımınızda yönetilen kimlik veya istemci sır bilgisi kullanabilirsiniz.
-
AZURE_TENANT_IDortam yapılandırmasını denetlemeye başlaması ve kimlik doğrulaması için aşağıdaki ek ortam değişkenlerinden birini araması için ortam değişkenleriniAZURE_CLIENT_IDveDefaultAzureCredentialayarlamak gerekir:-
AZURE_CLIENT_SECRETortam değişkeninin ayarlanması,DefaultAzureCredential'inClientSecretCredential'yi seçmesini yapılandırır. -
AZURE_CLIENT_CERTIFICATE_PATHortam değişkeninin ayarlanması,DefaultAzureCredentialayarlanmadıysaClientCertificateCredential'yi seçmek içinAZURE_CLIENT_SECRET'i yapılandırır.
-
- Ortam değişkeni AZURE_USERNAME ayarlandığında,
DefaultAzureCredentialveUsernamePasswordCredentialayarlanmamışsaAZURE_CLIENT_SECRETseçmek içinAZURE_CLIENT_CERTIFICATE_PATHyapılandırılır.
ActiveDirectoryIntegrated
Bu yöntem şu anda uygulanmamıştır ve ActiveDirectoryDefault'a geri dönmektedir.
ActiveDirectoryPassword
Bu yöntem, kullanıcı adı ve parola kullanarak kimlik doğrulaması yapar. MFA gerekliyse çalışmaz.
Her zamanki komut satırı anahtarlarını veya
SQLCMDortam değişkenlerini kullanarak kullanıcı adını ve parolayı sağlarsınız.kullanıcının varsayılan kiracısını kullanmıyorsanız
AZURE_TENANT_IDortam değişkenini sunucunun kiracı kimliğine ayarlayın.
ActiveDirectoryInteractive
Bu yöntem, kullanıcının kimliğini doğrulamak için bir web tarayıcısı başlatır.
ActiveDirectoryManagedIdentity
** Sistem tarafından veya kullanıcı tarafından atanan yönetilen kimliğe sahip bir Azure VM'de sqlcmd (Go) çalıştırırken bu yöntemi kullanın. Kullanıcı tarafından atanan bir yönetilen kimlik kullanıyorsanız, kullanıcı adını yönetilen kimliğin İstemci Kimliği olarak ayarlayın. Sistem tarafından atanan bir kimlik kullanıyorsanız, kullanıcı adını boş bırakın.
Bu örnek, Hizmet Tarafından Atanan Yönetilen Kimlik (SAMI) kullanarak bağlanmayı gösterir:
sqlcmd -S testsrv.database.windows.net -d Target_DB_or_DW --authentication-method ActiveDirectoryManagedIdentity
Bu örnekte, kullanıcı tarafından atanan yönetilen kimliğin İstemci Kimliğini ekleyerek Kullanıcı Tarafından Atanan Yönetilen Kimlik (UAMI) ile nasıl bağlandığınız gösterilmektedir:
sqlcmd -S testsrv.database.windows.net -d Target_DB_or_DW --authentication-method ActiveDirectoryManagedIdentity -U <user-assigned-managed-identity-client-id>
ActiveDirectoryServicePrincipal
Bu yöntem, hizmet sorumlusu kimliği olarak sağlanan kullanıcı adını ve hizmet sorumlusu için istemci gizli anahtarı olarak parolayı doğrular.
<application (client) ID>biçiminde bir kullanıcı adı sağlayın.
SQLCMDPASSWORD değişkenini istemci sırrına ayarlayın. İstemci gizli dizisi yerine sertifika kullanıyorsanız, AZURE_CLIENT_CERTIFICATE_PATH ortam değişkenini sertifika dosyasının yoluna ayarlayın.
sqlcmd -S testsrv.database.windows.net -d Target_DB_or_DW --authentication-method ActiveDirectoryServicePrincipal -U <Application (client) ID> -P <client secret>
Microsoft Entra kimlik doğrulaması için ortam değişkenleri
Bazı Microsoft Entra kimlik doğrulama ayarları komut satırı girişlerine sahip değildir ve bazı ortam değişkenleri doğrudan azidentity (Go) tarafından kullanılan paketi tarafından kullanılır.
Bu ortam değişkenleri, Microsoft Entra kimlik doğrulamasının bazı yönlerini yapılandıracak ve varsayılan davranışları atlayacak şekilde ayarlanabilir. Daha önce listelenen değişkenlere ek olarak, aşağıdakiler sqlcmd (Go) özgü olup birden çok yönteme uygulanır.
SQLCMDCLIENTID
Bu ortam değişkenini, Azure SQL Veritabanı'nda kimlik doğrulaması yetkisi olan Microsoft Entra'da kayıtlı bir uygulamanın tanımlayıcısına ayarlayın.
ActiveDirectoryInteractive ve ActiveDirectoryPassword yöntemleri için geçerlidir.