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.
Kullanıcının SQL Server kimlik doğrulamasını kullanarak bir SQL Server örneğine bağlanmasına olanak tanıyan yeni bir SQL Server oturum açma bilgisi oluşturur.
Ö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 LOGIN kullanın.
Önemli
Mümkün olduğunda Windows kimlik doğrulamayı kullanın.
Transact-SQL söz dizimi kuralları
Sözdizimi
sp_addlogin
[ @loginame = ] N'loginame'
[ , [ @passwd = ] N'passwd' ]
[ , [ @defdb = ] N'defdb' ]
[ , [ @deflanguage = ] N'deflanguage' ]
[ , [ @sid = ] sid ]
[ , [ @encryptopt = ] 'encryptopt' ]
[ ; ]
Tartışmalar
[ @loginame = ] N'loginame'
Oturum açma adı. @loginamesysname'dir ve varsayılan değer yoktur.
[ @passwd = ] N'passwd'
Oturum açma parolası.
@passwdsysname değeridir ve varsayılan değeri .NULL
Önemli
Boş parola kullanmayın. Güçlü bir parola kullanın.
[ @defdb = ] N'defdb'
Oturum açmanın varsayılan veritabanı (oturum açtıktan sonra oturum açma işleminin ilk bağlandığı veritabanı).
@defdbsysname değeridir ve varsayılan değeri .master
[ @deflanguage = ] N'deflanguage'
Oturum açmanın varsayılan dili.
@deflanguagesysname değeridir ve varsayılan değeri .NULL
@deflanguage belirtilmezse, yeni oturum açmanın varsayılan @deflanguage sunucunun geçerli varsayılan diline ayarlanır.
[ @sid = ] sid
Güvenlik kimlik numarası (SID).
@sid , varsayılan değeri olan varbinary(16)'dır NULL.
@sid iseNULL, sistem yeni oturum açma için bir SID oluşturur.
Varbinary veri türü kullanılmasına rağmen, dışındaki NULL değerlerin tam olarak 16 bayt uzunluğunda olması gerekir ve zaten mevcut olamaz.
@sid belirtmek, örneğin SQL Server oturum açma bilgilerini bir sunucudan diğerine taşırken veya betik oluştururken ve oturum açma bilgilerinin farklı sunucularda aynı SID'ye sahip olmasını istediğinizde yararlıdır.
[ @encryptopt = ] 'encryptopt'
Parolanın düz metin olarak mı yoksa düz metin parolasının karması olarak mı geçirildiğini belirtir. Şifreleme gerçekleşmez. Geriye dönük uyumluluk için bu tartışmada "şifrele" sözcüğü kullanılır. Düz metin parolası geçirilirse karma olarak eklenir. Karma depolanır. @encryptoptvarchar(20) şeklindedir ve aşağıdaki değerlerden biri olabilir.
| Değer | Açıklama |
|---|---|
NULL (varsayılan) |
Parola temiz olarak geçirilir. |
skip_encryption |
Parola zaten karma. Veritabanı Altyapısı değeri yeniden dağıtmadan depolamalıdır. |
skip_encryption_old |
Sağlanan parola, SQL Server'ın önceki bir sürümü tarafından karma olarak sağlandı. Veritabanı Altyapısı değeri yeniden dağıtmadan depolamalıdır. Bu seçenek yalnızca yükseltme amacıyla sağlanır. |
Dönüş kodu değerleri
0 (başarı) veya 1 (başarısızlık).
Açıklamalar
SQL Server oturum açma bilgileri harfler, simgeler ve sayılar da dahil olmak üzere 1 ile 128 karakter arasında olabilir. Oturum açma bilgileri ters eğik çizgi (\); sa veya public gibi ayrılmış bir oturum açma adı olamaz ya da zaten var olabilir veya boş bir dize olabilir NULL .
Varsayılan veritabanının adı sağlanırsa, deyimini yürütmeden USE belirtilen veritabanına bağlanabilirsiniz. Ancak, veritabanı sahibi (sp_adduser, sp_addrolemember kullanarak) veyasp_addrole tarafından bu veritabanına erişim verilene kadar varsayılan veritabanını kullanamazsınız.
SID numarası, sunucudaki oturum açma bilgilerini benzersiz olarak tanımlayan bir GUID'dir.
Sunucunun varsayılan dilinin değiştirilmesi, mevcut oturum açma bilgilerinin varsayılan dilini değiştirmez. Sunucunun varsayılan dilini değiştirmek için sp_configure kullanın.
skip_encryption Oturum açma bilgileri SQL Server'a eklendiğinde parola zaten karmaysa parola karması engellemek için kullanmak yararlı olur. Parola SQL Server'ın önceki bir sürümü tarafından karma olarak oluşturulduysa kullanın skip_encryption_old.
sp_addlogin kullanıcı tanımlı bir işlem içinde yürütülemez.
Aşağıdaki tabloda ile sp_addloginkullanılan çeşitli saklı yordamlar gösterilmektedir.
| Saklı prosedür | Açıklama |
|---|---|
| sp_grantlogin | Bir Windows kullanıcısı veya grubu ekler. |
| sp_password | Kullanıcının parolasını değiştirir. |
| sp_defaultdb | Kullanıcının varsayılan veritabanını değiştirir. |
| sp_defaultlanguage | Kullanıcının varsayılan dilini değiştirir. |
İzinler
ALTER ANY LOGIN izni gerektirir.
Örnekler
A. SQL Server oturum açma bilgisi oluşturma
Aşağıdaki örnek, kullanıcı için Victoriavarsayılan bir veritabanı belirtmeden bir SQL Server oturumu oluşturur. değerini güçlü bir parolayla değiştirin <password> .
EXECUTE sp_addlogin 'Victoria', '<password>';
GO
B. Varsayılan veritabanı olan bir SQL Server oturum açma bilgisi oluşturma
Aşağıdaki örnek, kullanıcısı Albertiçin bir SQL Server oturumu ve varsayılan veritabanı corporateoluşturur. değerini güçlü bir parolayla değiştirin <password> .
EXECUTE sp_addlogin 'Albert', '<password>', 'corporate';
GO
C. Farklı bir varsayılan dile sahip bir SQL Server oturumu oluşturma
Aşağıdaki örnek, kullanıcı TzTodorov, varsayılan veritabanı AdventureWorks2025ve varsayılan dili Bulgarianiçin bir SQL Server oturum açma bilgisi oluşturur. değerini güçlü bir parolayla değiştirin <password> .
EXECUTE sp_addlogin 'TzTodorov', '<password>', 'AdventureWorks2022', N'български';
D. Belirli bir SID'ye sahip bir SQL Server oturumu oluşturma
Aşağıdaki örnek, kullanıcı Michaeliçin bir SQL Server oturum açma bilgisi , varsayılan veritabanı AdventureWorks2025, varsayılan dili us_englishve SID'i 0x0123456789ABCDEF0123456789ABCDEFoluşturur. değerini güçlü bir parolayla değiştirin <password> .
EXECUTE sp_addlogin 'Michael', '<password>', 'AdventureWorks2022', 'us_english', 0x0123456789ABCDEF0123456789ABCDEF;