Aracılığıyla paylaş


Uygulama rolü oluşturma

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen Örneği

Bu makalede, SQL Server Management Studio veya Transact-SQL kullanarak SQL Server'da uygulama rolünün nasıl oluşturulacağı açıklanır. Uygulama rolleri, belirli uygulamalar dışında veritabanına kullanıcı erişimini kısıtlar. Uygulama rollerinin kullanıcısı olmadığından, Uygulama rolü seçildiğinde Rol Üyeleri listesi görüntülenmez.

Önemli

Uygulama rolü parolaları ayarlandığında parola karmaşıklığı denetlenir. Uygulama rollerini çağıran uygulamaların parolalarını depolaması gerekir. Uygulama rolü parolaları her zaman şifrelenmiş olarak depolanmalıdır.

Arka plan

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.

SQL Server Management Studio'yu kullanma

  1. Nesne Gezgini'nde, uygulama rolü oluşturmak istediğiniz veritabanını genişletin.

  2. Güvenlik klasörünü genişletin.

  3. Roller klasörünü genişletin.

  4. Uygulama Rolleri klasörüne sağ tıklayın ve Yeni Uygulama Rolü... seçin.

  5. Uygulama Rolü - Yeni iletişim kutusunda, Genel SayfaRolü adı kutusuna yeni uygulama rolünün yeni adını girin.

  6. Varsayılan Şema kutusunda, nesne adlarını girerek bu rol tarafından oluşturulan nesnelerin sahibi olacak şemayı belirtin. Alternatif olarak, (...) üç noktasını seçin Şemayı Bul iletişim kutusunu açmak için.

  7. parola kutusuna yeni rol için bir parola girin. Bu parolayı Parolayı Onayla kutusuna yeniden girin.

  8. bu role ait şemalaraltında, bu role ait olacak şemaları seçin veya görüntüleyin. Şema yalnızca bir şemaya veya role sahip olabilir.

  9. tamamseçin.

Ek seçenekler

Uygulama Rolü - Yeni iletişim kutusu iki ek sayfada da seçenekler sunar: Securables ve Genişletilmiş Özellikler.

  • 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.

transact-SQL kullanma

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

  2. Standart araç çubuğunda, Yeni Sorgu'yu seçin.

  3. Aşağıdaki örneği kopyalayıp sorgu penceresine yapıştırın ve Yürüt'e tıklayın. Bu kod, parolası olan ve weekly_receipts varsayılan şeması olarak adlı Sales bir uygulama rolü oluşturur. değerini güçlü bir parolayla değiştirin <password> .

    -- 
    
    CREATE APPLICATION ROLE weekly_receipts
        WITH PASSWORD = '<password>'
        , DEFAULT_SCHEMA = Sales;
    GO
    

İzinler

Veritabanı üzerinde ALTER ANY APPLICATION ROLE izni gereklidir.