Compartilhar via


RunAs

Configura uma classe para ser executada em uma conta de usuário específica quando ativada por um cliente remoto sem ser gravada como um aplicativo de serviço.

Entrada do Registro

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
   {AppID_GUID}
      RunAs = value

Comentários

O valor especifica o nome de usuário e deve ser do formato UserName, Domain**\**UserName ou da cadeia de caracteres "Interactive User". Você também pode especificar as cadeias de caracteres "nt authority\localservice" (para Serviço Local) e "nt authority\networkservice" (para Serviço de Rede). Você também pode especificar a cadeia de caracteres "nt authority\system" quando {AppID_GUID} se refere a um servidor COM que já foi iniciado ou que tem uma entrada na tabela de classes. No entanto, você não pode usar "nt authority\system" com um servidor COM que ainda não foi iniciado. A senha padrão para "nt authority\localservice", "nt authority\networkservice" e "nt authority\system" é "" (cadeia de caracteres vazia).

Observação

A partir do Windows Vista, uma senha vazia não é mais necessária para configurar as configurações RunAs "nt authority\localservice", "nt authority\networkservice" e "nt authority\system".

 

As classes configuradas para serem executadas como um usuário específico podem não ser registradas sob nenhuma outra identidade, portanto, as chamadas para CoRegisterClassObject com esse CLSID falham, a menos que o processo tenha sido iniciado pelo COM em nome de uma solicitação de ativação real.

O nome de usuário é obtido do valor RunAs sob a chave AppID da classe. Se o nome de usuário for "Usuário interativo", o servidor será executado na identidade do usuário conectado no momento e estará conectado à área de trabalho interativa.

Caso contrário, a senha será recuperada de uma parte do registro que está disponível apenas para administradores do computador e para o sistema. O nome de usuário e a senha são usados para criar uma sessão de logon na qual o servidor é executado. Quando iniciado dessa maneira, o usuário é executado com sua própria área de trabalho e estação de janela e não compartilha alças de janela, a área de transferência ou outros elementos da interface do usuário com o usuário interativo ou outro usuário em execução em outras contas de usuário.

Para estabelecer uma senha para uma classe RunAs , você deve usar a ferramenta administrativa DCOMCNFG instalada no diretório do sistema.

Para identidades RunAs usadas por servidores DCOM, a conta de usuário especificada no valor deve ter os direitos para fazer logon como um trabalho em lote. Esse direito pode ser adicionado usando a ferramenta administrativa Diretiva de Segurança Local. Vá para Políticas Locais e abra Atribuição de Direitos de Usuário. Selecione Fazer logon como um trabalho em lote e adicione a conta de usuário.

O valor RunAs não é usado para servidores configurados para serem executados como serviços. Os serviços COM que precisam ser executados sob uma identidade diferente de LocalSystem devem definir o nome de usuário e a senha apropriados usando o applet do painel de controle de serviços ou as funções do controlador de serviço. (Para obter mais informações sobre essas funções, consulte Serviços.)

Observação

A partir do Microsoft Windows Server 2003, a classe AppID é lida explicitamente de HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID, que, ao contrário da maioria das chaves do Registro, não é intercambiável com HKEY_CLASSES_ROOT\AppID.

 

Como registrar servidores COM