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 Yönetilen Örneği
sysadmin sabit sunucu rolünün veya veritabanının sahibinin başka bir kullanıcının kimliğine bürünmesini sağlar.
Önemli
SETUSER yalnızca geriye dönük uyumluluk için dahil edilmiştir. SETUSERSQL Server'ın gelecekteki bir sürümünde desteklenmeyebilir. Bunun yerine kullanmanızı EXECUTE AS öneririz.
Transact-SQL söz dizimi kuralları
Sözdizimi
SETUSER [ 'username' [ WITH NORESET ] ]
Bağımsız değişken
'kullanıcı adı'
Kimliğine bürünülen geçerli veritabanındaki bir SQL Server veya Windows kullanıcısının adıdır. kullanıcı adı
NORESET ILE
Sonraki SETUSER ifadeler ( belirtilmiş kullanıcı adı olmadan) kullanıcı kimliğinin sistem yöneticisi veya veritabanı sahibine sıfırlanmaması gerektiğini belirtir.
Açıklamalar
SETUSER Sysadmin sabit sunucu rolünün bir üyesi veya bir veritabanı sahibi tarafından, diğer kullanıcının izinlerini test etmek için başka bir kullanıcının kimliğini benimsemek için kullanılabilir. db_owner sabit veritabanı rolü üyeliği yeterli değildir.
Sadece SQL Server kullanıcılarıyla kullanınSETUSER.
SETUSERWindows kullanıcıları tarafından desteklenmiyor. Başka bir kullanıcının kimliğini üstlenmek için kullanıldığında SETUSER , taklit eden kullanıcının oluşturduğu tüm nesneler taklit edilen kullanıcıya aittir. Örneğin, veritabanı sahibi Margaret
SETUSER başka SETUSER bir ifade yayımlanana veya mevcut veritabanı USE ifadesi ile değiştirilene kadar yürürlükte kalır.
Not
WITH NORESET kullanılırsa SETUSER , veritabanı sahibi veya sistem yöneticisi çıkış yapıp sonra tekrar giriş yaparak kendi haklarını yeniden kurmak zorundadır.
İzinler
sysadmin sabit sunucu rolüne üyelik gerektirir veya veritabanının sahibi olmalıdır. db_owner sabit veritabanı rolüne üyelik yeterli değil
Örnekler
Aşağıdaki örnek, veritabanı sahibinin başka bir kullanıcının kimliğini nasıl benimseyebileceğini gösterir. Kullanıcı mary, computer_typesadlı bir tablo oluşturmuştur. Veritabanı sahibiSETUSER, kullanıcıya tabloya erişim computer_types vermek için taklit joemary yapar ve ardından kendi kimliğini sıfırlar.
SETUSER 'mary';
GO
GRANT SELECT ON computer_types TO joe;
GO
--To revert to the original user
SETUSER;
Ayrıca Bkz.
DENY (Transact-SQL)
GRANT (Transact-SQL)
REVOKE (Transact-SQL)
KULLANIM (Transact-SQL)