Perfis de Usuários e Privilégios em Bancos de Dados Relacionais
Gabarito: letra A. Em bancos de dados relacionais, perfis (ou roles) são conjuntos nomeados de privilégios que podem ser atribuídos a usuários. A cada perfil podem ser atribuídos conjuntos distintos de privilégios, permitindo uma gestão flexível de acesso. As demais alternativas contêm afirmações incorretas sobre a natureza dos perfis e visões.
Alternativa | Afirmação sobre Perfis/Visões | Correção |
|---|
A ✅ | A cada perfil podem ser atribuídos conjuntos de privilégios distintos. | Correta. Perfis (roles) agrupam privilégios distintos e podem ser concedidos a usuários. |
B ❌ | Um usuário não pode estar incluído a mais de um perfil, simultaneamente. | Incorreta. Um usuário pode receber múltiplos perfis, acumulando seus privilégios. |
C ❌ | Cada perfil criado em um banco de dados abrange todos os usuários desse banco de dados. | Incorreta. Perfis devem ser explicitamente concedidos a usuários específicos. |
D ❌ | Um perfil, uma vez criado, não pode mais ser excluído, permanecendo até o fim do banco de dados. | Incorreta. Perfis podem ser removidos com comandos como DROP ROLE. |
E ❌ | Uma visão de um banco de dados comporta apenas os privilégios de leitura e inserção de registros. | Incorreta. Visões podem receber diversos privilégios (SELECT, INSERT, UPDATE, DELETE, etc.). |
Alternativa A — ✅ Correta ⟵ GABARITO
Afirma corretamente que a cada perfil podem ser atribuídos conjuntos de privilégios distintos. Em um SGBD relacional, um perfil (ou role) é uma entidade que agrupa vários privilégios (como SELECT, INSERT, UPDATE, DELETE, etc.) e pode ser concedido a um ou mais usuários. Diferentes perfis podem ter diferentes conjuntos de autorizações, conforme a necessidade de controle de acesso.
Alternativa B — ❌ Incorreta
Afirma que um usuário não pode pertencer a mais de um perfil simultaneamente. Na prática, um usuário pode receber múltiplos perfis (roles), acumulando os privilégios de todos eles. Por exemplo, no Oracle um usuário pode ter as roles CONNECT e RESOURCE ao mesmo tempo. Portanto, a afirmação é falsa.
Alternativa C — ❌ Incorreta
Diz que cada perfil abrange todos os usuários do banco de dados. Isso não é verdade: um perfil é um conjunto de privilégios que deve ser explicitamente concedido a usuários específicos. Se não for concedido, o usuário não tem acesso aos privilégios daquele perfil. Portanto, um perfil não abrange automaticamente todos os usuários.
Alternativa D — ❌ Incorreta
Alega que um perfil, uma vez criado, não pode ser excluído. Perfis podem ser removidos com comandos como DROP ROLE (ou similar, dependendo do SGBD). A exclusão de um perfil é possível e não exige que ele permaneça até o fim do banco de dados.
Alternativa E — ❌ Incompleta/Incorreta
Afirma que uma visão (view) comporta apenas privilégios de leitura e inserção. Na verdade, uma visão pode receber diversos privilégios, incluindo SELECT, INSERT, UPDATE, DELETE, e até mesmo privilégios de referência (REFERENCES) e outros, dependendo do SGBD. Não há limitação a apenas leitura e inserção.
Gabarito: letra A.