Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Privilege é um mecanismo que o sistema operacional usa para controlar operações específicas. Cada privilégio tem operações específicas associadas a ele que o chamador da operação pode executar se as duas condições a seguir forem atendidas:
- O privilégio deve ser mantido pelo chamador.
- O privilégio também deve ser habilitado.
O princípio desses requisitos é conhecido como privilégio mínimo. O princípio do menor privilégio exige que os privilégios sejam habilitados antes de serem usados, em vez de assumidos. Esse requisito minimiza a chance de um usuário executar inadvertidamente uma operação que não pretendia. Por exemplo, SeRestorePrivilege normalmente permitiria que o chamador ignorasse as verificações habituais de acesso de gravação a um arquivo. Por exemplo, um administrador pode não querer realmente ignorar as verificações de segurança normais quando estiver copiando um arquivo. No entanto, talvez eles queiram fazer isso ao restaurar o mesmo arquivo usando um utilitário de backup/restauração.
Para sistemas de arquivos, há muitos privilégios que geralmente são usados para modificar o comportamento normal (notadamente, verificações de segurança) para o sistema. Esses privilégios são:
SeBackupPrivilege permite a recuperação de conteúdo do arquivo, mesmo que o descritor de segurança no arquivo não conceda esse acesso. Um chamador com SeBackupPrivilege habilitado evita a necessidade de qualquer verificação de segurança baseada em ACL.
SeRestorePrivilege permite a modificação de conteúdo do arquivo, mesmo que o descritor de segurança no arquivo possa não conceder esse acesso. Essa função também pode ser usada para alterar o proprietário e a proteção.
SeChangeNotifyPrivilege permite atravessar à direita. Esse privilégio é uma otimização importante no Windows porque remove o custo de executar uma verificação de segurança em cada diretório em um caminho.
SeManageVolumePrivilege permite operações de gerenciamento de nível de volume específicas, como volume de bloqueio, desfragmentação, desmontagem de volume e definição de tamanho de dados válido no Windows XP e posterior. Um driver do sistema de arquivos impõe explicitamente esse privilégio específico principalmente com base em operações FSCTL. Nesse caso, o sistema de arquivos toma uma decisão de política para impor esse privilégio. A determinação de se esse privilégio é mantido pelo chamador é feita pelo monitor de referência de segurança como parte da verificação de privilégio normal.
Embora haja vários outros privilégios, eles normalmente são opacos para sistemas de arquivos e apenas o SRM ( Monitor de Referência de Segurança ) os interpreta.
As principais rotinas do Windows para gerenciar privilégios em um sistema de arquivos são:
SePrivilegeCheck executa uma verificação de um conjunto específico de privilégios necessários.
SeSinglePrivilegeCheck executa uma verificação de um único privilégio específico; é uma versão otimizada de SePrivilegeCheck.
SeAccessCheck executa verificação de acesso normal em um objeto (normalmente um objeto de arquivo para um sistema de arquivos).
SeFreePrivileges libera o bloco de privilégios retornado por uma chamada anterior para SeAccessCheck.
SeAppendPrivileges adiciona privilégios habilitados a uma estrutura de ACCESS_STATE. Normalmente, um sistema de arquivos usaria o ACCESS_STATE passado a ele durante o processamento do IRP_MJ_CREATE.