Aracılığıyla paylaş


Veritabanı kullanıcısı oluşturma

Şunlar için geçerlidir:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalitik Platform Sistemi (PDW)Microsoft Fabric'te SQL veritabanı

Bu makalede, en yaygın veritabanı kullanıcı türlerinin nasıl oluşturulacağı açıklanır. 13 tür kullanıcı vardır. Listenin tamamı CREATE USER makalesinde verilmiştir. Tüm SQL Server türleri veritabanı kullanıcılarını destekler, ancak her tür kullanıcıyı desteklemez.

SQL Server Management Studio veya Transact-SQL kullanarak veritabanı kullanıcısı oluşturabilirsiniz.

Kullanıcı türlerini anlama

Management Studio, veritabanı kullanıcısı oluştururken altı seçenek sunar. Aşağıdaki diyagramda yeşil kutudaki altı seçenek gösterilir ve bunların neyi temsil ettikleri gösterilir.

Farklı kullanıcı türlerini açıklayan diyagram.

Kullanıcı türünü seçin

SQL Server'da yeniyseniz, oluşturmak istediğiniz kullanıcı türünü belirlemek zor olabilir. Önce kendinize sorun, veritabanına erişmesi gereken kişi veya grubun oturum açma bilgisi var mı?

Oturum açma bilgileriyle bir kullanıcı oluşturun

Veritabanındaki master oturum açma bilgileri, SQL Server'ı yöneten kişiler ve SQL Server örneğindeki veritabanının birçoğuna veya tümüne erişmesi gereken kişiler için yaygındır. Bu durum için oturum açma ile bir SQL kullanıcısı oluşturun. Veritabanı kullanıcısı, veritabanına bağlandığında oturum açma kimliğidir. Veritabanı kullanıcısı oturum açma adıyla aynı adı kullanabilir, ancak bu gerekli değildir. Bu makalede, SQL Server'da zaten bir oturum açma bilgisi olduğu varsayılır. Oturum açma oluşturma hakkında bilgi için bkz. Oturum açma oluşturma.

Oturum açma olmadan kullanıcı oluşturma

Veritabanına erişmesi gereken kişi veya grubun oturum açma bilgisi yoksa ve yalnızca bir veya birkaç veritabanına erişmesi gerekiyorsa, parolalı bir Windows kullanıcısı veya SQL kullanıcısı oluşturun. Kapsanan veritabanı kullanıcısı olarak da adlandırılır. Kapsamında bulunan veritabanı kullanıcısı, master veritabanında bir oturumla ilişkili değildir. Bu, veritabanınızı SQL Server örnekleri arasında kolayca taşıyabilmek istediğinizde mükemmel bir seçimdir. SQL Server'da bu seçeneği kullanmak için, bir yöneticinin önce SQL Server için kapsanan veritabanlarını etkinleştirmesi ve ardından veritabanının kapsanabilirlik için etkinleştirilmesi gerekir. Daha fazla bilgi için bkz. Veritabanınızı kapsanan veritabanlarını kullanarak taşınabilir hale getirme.

Important

Bağımsız veritabanı kullanıcısı olarak bağlanırken, bağlantı dizesinin bir parçası olarak veritabanının adını sağlamanız gerekir. VERITABANıNı SQL Server Management Studio'da (SSMS) belirtmek için Bağlan iletişim kutusunda Seçenekler'i ve ardından Bağlantı Özellikleri sekmesini seçin.

Bağlanan kişi Windows kimlik doğrulamasıyla kimlik doğrulaması yapamazsa, parolalı SQL kullanıcısı veya SQL Server kimlik doğrulaması oturum açma bilgilerini temel alan bir SQL kullanıcısı seçin. Bu durum, kuruluşunuzun dışındaki kişiler (örneğin müşteriler) SQL Server'ınıza bağlanırken sık karşılaşılan bir durumdur.

Tip

Kuruluşunuz içindeki kişiler için windows kimlik doğrulaması daha iyi bir seçenektir çünkü ek parola hatırlamak zorunda kalmazlar ve Windows kimlik doğrulaması Kerberos gibi ek güvenlik özellikleri sunar.

Background

Kullanıcı, veritabanı düzeyinde bir güvenlik sorumlusudur. Bir veritabanına bağlanmak için oturum açma bilgilerinin veritabanı kullanıcısına eşlenmesi gerekir. Oturum açma bilgileri farklı veritabanlarına farklı kullanıcılar olarak eşlenebilir ancak her veritabanında yalnızca bir kullanıcı olarak eşlenebilir. Kısmen kapsanan bir veritabanında, oturum açma bilgisi olmayan bir kullanıcı oluşturulabilir. Kapsanan veritabanı kullanıcıları hakkında daha fazla bilgi için bkz. CREATE USER. Veritabanındaki konuk kullanıcı etkinse, veritabanı kullanıcısına eşlenmemiş bir oturum açma, veritabanına konuk kullanıcı olarak erişim sağlayabilir.

SQL Server 2012 (11.x) sürümünden başlayarak SQL Server ve Azure SQL DB, 32 bit rastgele ve benzersiz tuz ile birlikte sha-512 karması kullandı. Bu yöntem, saldırganların parolaları çözmesini istatistiksel olarak mümkün hale getirdi.

SQL Server 2025 (17.x), parola tabanlı anahtar türetme işlevi (PBKDF) olarak da bilinen RFC2898 yinelemeli karma algoritmasını tanıtır. Bu algoritma hala SHA-512 kullanır ancak parolayı birden çok kez karma olarak kullanır (100.000 yineleme), deneme yanılma saldırılarını önemli ölçüde yavaşlatır. Bu değişiklik, gelişen güvenlik tehditlerine yanıt olarak parola korumasını geliştirir ve müşterilerin NIST SP 800-63b yönergelerine uymasına yardımcı olur. Bu güvenlik geliştirmesi, SQL Kimlik Doğrulaması oturum açma işlemleri için oturum açma süresini biraz artırabilen daha güçlü bir karma algoritması kullanır. Etki genellikle bağlantı havuzu olan ortamlarda daha düşüktür, ancak havuza alınmamış veya oturum açma gecikmesinin yakından izlendiği senaryolarda daha belirgin olabilir.

Important

Konuk kullanıcı normalde devre dışıdır. Gerekli olmadığı sürece konuk kullanıcıyı etkinleştirmeyin.

Güvenlik sorumlusu olarak kullanıcılara izinler verilebilir. Kullanıcının kapsamı veritabanıdır. SQL Server örneğindeki belirli bir veritabanına bağlanmak için, oturum açma bilgilerinin veritabanı kullanıcısına eşlenmesi gerekir. Veritabanı içindeki izinler, oturum açmaya değil, veritabanı kullanıcısına verilir veya reddedilir.

Permissions

Veritabanı üzerinde ALTER ANY USER izni gereklidir.

SSMS ile kullanıcı oluşturma

  1. Nesne Gezgini'da Veritabanları klasörünü genişletin.

  2. Yeni veritabanı kullanıcısının oluşturulacağı veritabanını genişletin.

  3. Güvenlik klasörüne sağ tıklayın, Yeni'nin üzerine gelin ve Kullanıcı... öğesini seçin.

  4. Veritabanı Kullanıcısı - Yeni iletişim kutusundaki Genel sayfasında, Kullanıcı türü listesinden aşağıdaki kullanıcı türlerinden birini seçin:

    • Oturum açma ile SQL kullanıcısı
    • Parolalı SQL kullanıcısı (kapsanan veritabanı etkinleştirildiğinde)
    • Oturum açma olmadan SQL kullanıcısı
    • Sertifikayla eşlenen kullanıcı
    • Asimetrik anahtara eşlenen kullanıcı
    • Windows kullanıcısı

    Veritabanı kullanıcıları için Microsoft Entra Id desteklenen tek kimlik doğrulama yöntemi olduğundan, Fabric SQL veritabanında WITH PASSWORD desteklenmez.

  5. Bir seçenek belirlediğinizde, iletişim kutusundaki diğer seçenekler değişebilir. Bazı seçenekler yalnızca belirli veritabanı kullanıcı türleri için geçerlidir. Bazı seçenekler boş bırakılabilir ve varsayılan bir değer kullanılabilir.

    • Kullanıcı adı

      Yeni kullanıcı için bir ad girin. Windows kullanıcısı'nı Kullanıcı türü listesinden seçtiyseniz, Kullanıcı veya Grup Seç iletişim kutusunu açmak için (...) üç noktasını da seçebilirsiniz.

    • Oturum açma adı

      Kullanıcının oturum açma bilgilerini girin. Alternatif olarak, Oturum Aç Seç iletişim kutusunu açmak için üç nokta (...) simgesine tıklayın. Kullanıcı türü listesinden oturum açan SQL kullanıcısı veya Windows kullanıcısı'nı seçerseniz oturum açma adı kullanılabilir.

    • Parola ve Parolayı onayla

      Veritabanında kimlik doğrulaması yapan kullanıcılar için bir parola girin.

    • Varsayılan dil

      Kullanıcının varsayılan dilini girin.

    • Varsayılan şema

      Bu kullanıcı tarafından oluşturulan nesnelerin sahibi olacak şemayı girin. Alternatif olarak, (...) üç noktasını seçerek Şema Seç iletişim kutusunu açın. Varsayılan şema, oturum açma özelliğine sahip SQL kullanıcısı, oturum açmabilgisi olmayan SQL kullanıcısı veya Kullanıcı türülistesinden Windows kullanıcısı'nı seçerseniz kullanılabilir.

    • Sertifika adı

      Veritabanı kullanıcısı için kullanılacak sertifikayı girin. (...) üç nokta simgesini seçin ve Sertifika Seç iletişim kutusunu açın. Alternatif olarak, diğer seçenekleri de değerlendirebilirsiniz. Sertifika adı, Kullanıcı türü listesinden bir sertifikayla eşleştirilmiş kullanıcı seçerseniz kullanılabilir.

    • Asimetrik anahtar adı

      Veritabanı kullanıcısı için kullanılacak anahtarı girin. Alternatif olarak, Asimetrik Anahtar Seç iletişim kutusunu açmak için üç noktaya (...) tıklayın. Asimetrik anahtar adı, Kullanıcı türü listesinden asimetrik anahtarla eşlenen kullanıcı'nın seçilmesi durumunda kullanılabilir.

  6. Tamam'ı seçin.

Ek seçenekler

Veritabanı Kullanıcısı - Yeni iletişim kutusu diğer dört sayfada da seçenekler sunar: Sahip Olunan Şemalar, Üyelik, Güvenliği Sağlanabilir Öğeler ve Genişletilmiş Özellikler.

  • Sahip Olunan Şemalar sayfası, yeni veritabanı kullanıcısının sahip olabileceği tüm olası şemaları listeler. Bir veritabanı kullanıcısına şema eklemek veya bunları veritabanından kaldırmak için, bu kullanıcıya ait şemalar'ın altında şemaların yanındaki onay kutularını seçin veya temizleyin.

  • Üyelik sayfasında, yeni veritabanı kullanıcısının sahip olabileceği tüm olası veritabanı üyeliği rolleri listelenir. Bir veritabanı kullanıcısına rol eklemek veya bunları veritabanından kaldırmak için , Veritabanı rolü üyeliği'nin altında rollerin yanındaki onay kutularını seçin veya temizleyin.

  • Securables sayfasında, oturum açma için verilebilecek tüm olası güvenlik unsurları ve bu unsurlar üzerindeki izinler listelenir.

  • Genişletilmiş özellikler sayfası, veritabanı kullanıcılarına özel özellikler eklemenize olanak tanır. Bu sayfada aşağıdaki seçenekler kullanılabilir.

    • Database

      Seçili veritabanının adını görüntüler. Bu alan salt okunurdur.

    • Collation

      Seçili veritabanı için kullanılan harmanlamayı görüntüler. Bu alan salt okunurdur.

    • Properties

      Nesnenin genişletilmiş özelliklerini görüntüleyin veya belirtin. Her genişletilmiş özellik, nesnesiyle ilişkilendirilmiş bir ad/değer meta veri çifti içerir.

    • Üç nokta (...)

      Genişletilmiş Özellik için Değer iletişim kutusunu açmak için Değer'in ardından üç noktayı (...) seçin. Bu büyük konumda genişletilmiş özelliğin değerini yazın veya görüntüleyin. Daha fazla bilgi için bkz. Genişletilmiş Özellik için Değer İletişim Kutusu.

    • Delete

      Seçili genişletilmiş özelliği kaldırır.

T-SQL kullanarak kullanıcı oluşturma

  1. Nesne Gezgini'nde Veritabanı Motoru'nun bir örneğine bağlanın.

  2. Standart çubuğunda Yeni Sorguseçeneğini seçin.

  3. Aşağıdaki örneği kopyalayıp sorgu penceresine yapıştırın ve Yürüt'e tıklayın.

    -- Creates the login AbolrousHazem with password '340$Uuxwp7Mcxo7Khy'.
    CREATE LOGIN AbolrousHazem
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';
    GO
    
    -- Creates a database user for the login created previously.
    CREATE USER AbolrousHazem
    FOR LOGIN AbolrousHazem;
    GO
    

Daha fazla bilgi için bkz. CREATE USER, daha birçok Transact-SQL örneği içerir.