Compartilhar via


Segurança em COM

A segurança no COM baseia-se firmemente na segurança fornecida pelo Windows e nos mecanismos de segurança RPC subjacentes. A segurança com COM depende de autenticação (o processo de verificação da identidade de um chamador) e de autorização (o processo de determinar se um chamador está autorizado a fazer o que está pedindo para fazer). Há dois tipos principais de segurança no COM: de segurança de ativação e de segurança de chamada. A segurança de ativação determina se um cliente pode iniciar um servidor. Depois que um servidor for iniciado, você poderá usar a segurança de chamada para controlar o acesso aos objetos de um servidor.

Nesse modelo de segurança, os servidores gerenciam e ajudam a proteger objetos, os clientes obtêm acesso a objetos por meio de servidores e os servidores podem tentar o acesso ao representar o cliente.

O sistema implementa o protocolo de autenticação Kerberos v5 e o pacote de segurança Schannel. Ele também inclui recursos como representação no nível do delegado, autenticação mútua, a capacidade de definir níveis de autenticação para um AppID no registro e camuflagem. Usando a segurança COM, você pode implementar objetos que podem executar operações privilegiadas sem comprometer a segurança.

Como há uma ampla gama de recursos de segurança COM disponíveis, é útil determinar inicialmente qual tipo de segurança seu aplicativo precisa. Para a maioria dos aplicativos, definir um nível aceitável de segurança pode ser um processo indolor, mas você também pode usar a segurança COM para dar suporte a cenários de segurança muito complexos.

Você pode definir o processo de segurança em todo o processo usando Dcomcnfg.exe para definir o registro ou chamando CoInitializeSecurity. Duas interfaces primárias, IClientSecurity e IServerSecurity (e funções auxiliares associadas), permitem que você defina a segurança no nível de chamada em seu programa.

Para saber mais sobre a segurança do COM, confira os seguintes tópicos: