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 edilir. SETUSER, SQL Server'ın gelecek bir sürümünde desteklenmeyebilir. Bunun yerine EXECUTE AS kullanmanızı ö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 deyimlerinin (belirtilen kullanıcı adıolmadan) kullanıcı kimliğini sistem yöneticisine veya veritabanı sahibine sıfırlamaması gerektiğini belirtir.
Açıklamalar
SETUSER, sysadmin sabit sunucu rolünün bir üyesi veya veritabanının sahibi tarafından diğer kullanıcının izinlerini test etmek üzere başka bir kullanıcının kimliğini benimsemek için kullanılabilir. db_owner sabit veritabanı rolü üyeliği yeterli değildir.
SETUSER'i yalnızca SQL Server kullanıcıları ile kullanın. SETUSER, Windows kullanıcılarıyla desteklenmez. SETUSER başka bir kullanıcının kimliğini varsaymak için kullanıldığında, kimliğine bürünen kullanıcının oluşturduğu tüm nesneler kimliğine bürünülen kullanıcıya aittir. Örneğin, veritabanı sahibi Margaret
SETUSER, başka bir SETUSER deyimi verilene kadar veya geçerli veritabanı USE deyimiyle değiştirilene kadar etkin kalır.
Not
NORESET ile SETUSER kullanılıyorsa, veritabanı sahibinin veya sistem yöneticisinin kendi haklarını yeniden kurmak için oturumu kapatması ve sonra yeniden oturum açması gerekir.
İ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. SETUSER kullanarak, veritabanı sahibi kullanıcıya mary tablosuna joe erişim vermek için computer_types kimliğine bürünerek 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)
USE (Transact-SQL)