none
Como saber quais usuários da Base e seus direitos? RRS feed

  • Pergunta

  • Srs.

    Preciso saber qual o comando que me retorna qual o usuário e os direitos por base de dados.

    Alguém pode me ajudar?

    quinta-feira, 7 de fevereiro de 2013 19:48

Respostas

  • Uma outra opção que mostra as roles (sysadmin, bulkadmin, etc) que foram atribuidas a cada usuario:

    SELECT
    P.name as usuario,
    R.name
    FROM
    sys.server_principals r
    inner JOIN sys.server_role_members m ON r.principal_id = m.role_principal_id
    inner JOIN sys.server_principals p ON 
    				p.principal_id = m.member_principal_id
    order by 1


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    • Marcado como Resposta Ricardo Russo segunda-feira, 18 de fevereiro de 2013 12:44
    quinta-feira, 7 de fevereiro de 2013 20:48
  • Olá Roberto,

    Acho que esse script te ajuda

    SELECT
    	USER_NAME(dppriper.grantee_principal_id) AS [UserName],
    	dppri.type_desc AS principal_type_desc,
    	dppriper.class_desc,
    	OBJECT_NAME(dppriper.major_id) AS object_name,
    	dppriper.permission_name,
    	dppriper.state_desc AS permission_state_desc
    FROM    sys.database_permissions dppriper
    INNER JOIN sys.database_principals dppri
    ON dppriper.grantee_principal_id = dppri.principal_id
    where USER_NAME(dppriper.grantee_principal_id) <> 'Public'
    
    

    Peguei no site: http://www.sqldbadiaries.com/2011/02/08/script-to-check-database-user-permissions/#ixzz2KFOEcbdF

    []'s


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    • Marcado como Resposta Ricardo Russo segunda-feira, 18 de fevereiro de 2013 12:44
    quinta-feira, 7 de fevereiro de 2013 20:44

Todas as Respostas

  • Olá Roberto,

    Acho que esse script te ajuda

    SELECT
    	USER_NAME(dppriper.grantee_principal_id) AS [UserName],
    	dppri.type_desc AS principal_type_desc,
    	dppriper.class_desc,
    	OBJECT_NAME(dppriper.major_id) AS object_name,
    	dppriper.permission_name,
    	dppriper.state_desc AS permission_state_desc
    FROM    sys.database_permissions dppriper
    INNER JOIN sys.database_principals dppri
    ON dppriper.grantee_principal_id = dppri.principal_id
    where USER_NAME(dppriper.grantee_principal_id) <> 'Public'
    
    

    Peguei no site: http://www.sqldbadiaries.com/2011/02/08/script-to-check-database-user-permissions/#ixzz2KFOEcbdF

    []'s


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    • Marcado como Resposta Ricardo Russo segunda-feira, 18 de fevereiro de 2013 12:44
    quinta-feira, 7 de fevereiro de 2013 20:44
  • Uma outra opção que mostra as roles (sysadmin, bulkadmin, etc) que foram atribuidas a cada usuario:

    SELECT
    P.name as usuario,
    R.name
    FROM
    sys.server_principals r
    inner JOIN sys.server_role_members m ON r.principal_id = m.role_principal_id
    inner JOIN sys.server_principals p ON 
    				p.principal_id = m.member_principal_id
    order by 1


    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    • Marcado como Resposta Ricardo Russo segunda-feira, 18 de fevereiro de 2013 12:44
    quinta-feira, 7 de fevereiro de 2013 20:48