Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
azure SQL Managed Instance
Umožňuje členovi správce systému pevnou roli serveru nebo vlastníka databáze zosobnit jiného uživatele.
Důležitý
SETUSER je zahrnuto pouze pro zpětnou kompatibilitu. SETUSERnemusí být podporován v budoucí verzi SQL Server. Doporučujeme místo toho používat EXECUTE AS.
Syntax
SETUSER [ 'username' [ WITH NORESET ] ]
Argumenty
uživatelské jméno
Je název uživatele SYSTÉMU SQL Server nebo Windows v aktuální databázi, která je zosobněná. Pokud není zadáno uživatelské jméno, původní identita správce systému nebo vlastníka databáze zosobnění uživatele se resetuje.
S NORESETEM
Specifikuje, že následující SETUSER příkazy (bez specifikovaného uživatelského jména) by neměly resetovat uživatelskou identitu na správce systému nebo vlastníka databáze.
Poznámky
SETUSER Může jej použít člen role správce pevného serveru nebo vlastník databáze k přijetí identity jiného uživatele a otestování oprávnění druhého uživatele. Členství v db_owner pevné databázové roli nestačí.
Používejte SETUSER pouze s uživateli SQL Server. SETUSERnení podporován uživateli Windows. Když SETUSER byl použit k převzetí identity jiného uživatele, všechny objekty, které uživatel vytvoří napodobujícím uživatelem, patří uživateli, za kterého se vydává. Pokud například vlastník databáze předpokládá identitu uživatele Margaret a vytvoří tabulku s názvem objednávky, objednávky tabulka vlastní Margaret, nikoli správce systému.
SETUSER zůstává v platnosti, dokud není vydáno další SETUSER prohlášení nebo dokud není aktuální databáze změněna příkazem USE.
Poznámka
Pokud SETUSER je použit WITH NORESET, vlastník databáze nebo správce systému se musí odhlásit a poté znovu přihlásit, aby obnovil svá vlastní práva.
Dovolení
Vyžaduje členství v správce systému pevné roli serveru nebo musí být vlastníkem databáze. Členství v db_owner pevné databázové roli nestačí
Příklady
Následující příklad ukazuje, jak může vlastník databáze přijmout identitu jiného uživatele. Uživatel mary vytvořil tabulku s názvem computer_types. Použitím SETUSER, vlastník databáze se vydáva mary za uživatele joe a poskytuje uživateli přístup k tabulce computer_types , a poté resetuje svou vlastní identitu.
SETUSER 'mary';
GO
GRANT SELECT ON computer_types TO joe;
GO
--To revert to the original user
SETUSER;
Viz také
DENY (Transact-SQL)
GRANT (Transact-SQL)
REVOKE (Transact-SQL)