sql >> Databáze >  >> RDS >> Sqlserver

jak se vypořádat s přemapováním lze provést pouze pro uživatele, kteří byli namapováni na přihlášení Windows nebo SQL

článek sqlmatters vysvětluje, že

lze ověřit, zda se jedná o takový případ, zkoumáním SID:

 -- SQL to run to identify users without login :
SELECT CASE WHEN DATALENGTH(sid) = 28
             AND type = 'S'       -- only want SQL users
             AND principal_id > 4 -- ignore built in users
     THEN 1 ELSE 0 END AS is_user_without_login,*
FROM sys.database_principals 

kde uživatelé bez přihlášení mají delší SID než běžní (osiřelí) uživatelé.

Tyto speciální uživatele nelze namapovat na přihlášení, protože jsou tak vytvořeni. Někdo musel úmyslně nebo omylem vytvořit uživatele WITHOUT LOGIN .



  1. Postgresql:Skriptování provádění psql s heslem

  2. Rails – Efektivně vytahujte a počítejte data napříč několika vztahy

  3. Pokud není použito pořadí podle klauzule, Oracle SQL vrací řádky libovolným způsobem

  4. Jak vytvořit omezení vyloučení s datem pomocí sqlalchemy