Aracılığıyla paylaş


sp_addapprole (Transact-SQL)

Şunlar için geçerlidir: SQL Server

Geçerli veritabanına bir uygulama rolü ekler.

Önemli

Bu özellik, SQL Server'ın gelecek bir sürümünde kaldırılacaktır. Bu özelliği yeni geliştirme çalışmalarında kullanmaktan kaçının ve şu anda bu özelliği kullanan uygulamaları değiştirmeyi planlayın. Bunun yerine CREATE APPLICATION ROLE kullanın .

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_addapprole
    [ @rolename = ] N'rolename'
    , [ @password = ] N'password'
[ ; ]

Tartışmalar

[ @rolename = ] N'rolename'

Yeni uygulama rolünün adı. @rolenamesysname'dir ve varsayılan değer yoktur. @rolename geçerli bir tanımlayıcı olmalıdır ve geçerli veritabanında mevcut olamaz.

Uygulama rolü adları harfler, simgeler ve sayılar da dahil olmak üzere 1 ile 128 karakter arasında olabilir. Rol adları ters eğik çizgi (\) veya NULL boş dize ('') içeremez.

[ @password = ] N'parola'

Uygulama rolünü etkinleştirmek için gereken parola. @password, sysname varsayılan değildir. @password olamaz NULL.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Açıklamalar

SQL Server'ın önceki sürümlerinde kullanıcılar (ve roller) şemalardan tamamen farklı değildir. SQL Server 2005 'ten (9.x) başlayarak, şemalar rollerden tamamen farklıdır. Bu mimari, davranışına CREATE APPLICATION ROLEyansıtılır. Bu deyim yerini alır sp_addapprole.

SQL Server'ın sp_addapprole önceki sürümleriyle geriye dönük uyumluluğu korumak için aşağıdaki denetimleri yapar:

  • Uygulama rolüyle aynı ada sahip bir şema yoksa, şema oluşturulur. Yeni şema uygulama rolüne aittir ve uygulama rolünün varsayılan şemasıdır.

  • Uygulama rolüyle aynı ada sahip bir şema zaten varsa, yordam başarısız olur.

  • sp_addapprole parola karmaşıklığını denetlemez. Parola karmaşıklığı tarafından denetlenir CREATE APPLICATION ROLE.

parametre @password tek yönlü karma olarak depolanır.

sp_addapprole Saklı yordam, kullanıcı tanımlı bir işlem içinden yürütülemez.

Önemli

Microsoft ODBC encrypt seçeneği SqlClient tarafından desteklenmez. Bunu yaptığınızda, kullanıcılardan çalışma zamanında uygulama rolü kimlik bilgilerini girmelerini iste. Kimlik bilgilerini bir dosyada depolamaktan kaçının. Kimlik bilgilerini kalıcı hale getirmelisiniz, CryptoAPI işlevlerini kullanarak bunları şifreleyin.

İzinler

Veritabanı üzerinde ALTER ANY APPLICATION ROLE iznine ihtiyaç duyar. Yeni rolle aynı ada ve sahipe sahip bir şema yoksa, veritabanında CREATE SCHEMA izni de gerekir.

Örnekler

Aşağıdaki örnek, yeni uygulama rolünü SalesApp geçerli veritabanına ekler. değerini güçlü bir parolayla değiştirin <password> .

EXECUTE sp_addapprole 'SalesApp', '<password>';
GO