Aracılığıyla paylaş


SETUSER (Transact-SQL)

Veren bir üye, sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü başka bir kullanıcının kimliğine bürünmek için.

Important noteImportant Note:

SETUSER yalnızca geriye dönük uyumluluk için eklenmiştir.SETUSER bir sonraki sürümünde desteklenmiyor olabilir SQL Server. Birlikte kullanmanız önerilir. yürütmek İLERLEDİKÇE yerine.

Topic link iconTransact-SQL sözdizimi kuralları

SETUSER [ 'username' [ WITH NORESET ] ] 

Bağımsız değişkenler

  • 'username'
    Adı bir SQL Server ya geçerli veritabanında bulunan özellikleri bir Windows kullanıcısı. Ne zaman username belirtilmemişse, özgün kullanıcı kimliğine bürünüyor veritabanı sahibi veya sistem yöneticiniz kimliği sıfırlandı.

  • noreset İLE
    Bu sonraki belirtir SETUSER ekstreleri (belirtilen no username) kullanıcı kimliği için sistem yöneticinize veya veritabanı sahibi sıfırlama değil.

Remarks

SETUSER bir üyesi tarafından kullanılan sysadmin sabit sunucu rolü veya db_owner veritabanı rolü, başka bir kullanıcının izinlerini sınamak için başka bir kullanıcının kimliğini benimsemesine sabit.

Yalnızca SETUSER ile kullanın. SQL Server Users (Kullanıcılar). Windows kullanıcılarıyla SETUSER desteklenmiyor.Başka bir kullanıcının kimliğini varsaymak SETUSER kullanıldığında, özellikleri alınırken kullanıcı oluşturduğu herhangi bir nesne Kimliğine bürünülen kullanıcının sahip olduğu.Örneğin, veritabanı sahibi kullanıcının kimliği varsayar Melahat adlı bir tablo oluşturur.Siparişler, the Siparişler tarafından tablosuna aitMelahat, Sistem Yöneticisi.

SETUSER, başka bir SETUSER deyim verilen kadar veya geçerli veritabanı USE deyimiyle değiştirildiğinde kadar etkin kalır.

Not

SETUSER NORESET, WITH kullanılıyorsa, veritabanı sahibi veya sistem yöneticiniz gerekir oturumu kapatın ve yeniden kendi haklarını yeniden kurmak için oturum açın.

İzinler

Üyelik gerektirir sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü.

Örnekler

Aşağıdaki örnek, veritabanı sahibi başka bir kullanıcının kimliğinin nasıl benimsemesine gösterir.Kullanıcı mary adlı bir tablo oluşturdu computer_types. SETUSER kullanarak, veritabanı sahibi kimliğine bürünür mary kullanıcı izni vermek için joe erişim computer_types Tablo ve daha sonra kendi kimliğini sıfırlar.

SETUSER 'mary'
GO
GRANT SELECT ON computer_types TO joe
GO
SETUSER