O sistema Common Information Model (CIM) fornece uma interface para aplicativos remotos monitorarem recursos de hardware usando um conjunto de APIs padrão. Para garantir que a interface CIM seja segura, forneça apenas o acesso mínimo necessário a esses aplicativos remotos. Se você provisionar um aplicativo remoto com uma conta raiz ou de administrador e o aplicativo estiver comprometido, o ambiente virtual poderá ser comprometido.

O CIM é um padrão aberto que define uma estrutura para monitoramento sem agente e baseado em padrões de recursos de hardware para hosts ESXi. Essa estrutura consiste em um gerenciador de objetos CIM, geralmente chamado de intermediário CIM, e um conjunto de provedores CIM.

Os provedores CIM oferecem suporte ao acesso de gerenciamento a drivers de dispositivo e hardware subjacente. Os fornecedores de hardware, incluindo fabricantes de servidores e fornecedores de dispositivos de hardware, podem escrever provedores que monitoram e gerenciam seus dispositivos. VMware grava provedores que monitoram hardware de servidor, ESXi infraestrutura de armazenamento e recursos específicos de virtualização. Esses provedores são executados dentro do host ESXi e são leves e focados em tarefas de gerenciamento específicas. O intermediário CIM obtém informações de todos os provedores CIM e as apresenta ao mundo externo usando APIs padrão. A API mais comum é o WS-MAN.

Não forneça credenciais raiz para aplicativos remotos que acessam a interface CIM. Em vez disso, crie uma conta de usuário vSphere com menos privilégios para esses aplicativos e use a função de tíquete da API do VIM para emitir um sessionId (chamado de "ticket") para essa conta de usuário com menos privilégios para autenticação no CIM. Se a conta tiver recebido permissão para obter tíquetes CIM, a API do VIM poderá fornecer o tíquete ao CIM. Esses tíquetes são então fornecidos como ID de usuário e senha para qualquer chamada de API CIM-XML. Consulte o método AcquireCimServicesTicket() para obter mais informações.

O serviço CIM é iniciado quando você instala um CIM VIB de terceiros, por exemplo, quando você executa o comando esxcli software vib install -n VIBname.

Se você precisar ativar o serviço CIM manualmente, execute o seguinte comando:

esxcli system wbem set -e true

Se necessário, você pode desativar o wsman (WSManagement Service) para que apenas o serviço CIM esteja em execução:

esxcli system wbem set -W false

Para confirmar se o wsman está desativado, execute o seguinte comando:

esxcli system wbem get
…
WSManagement PID: 0
WSManagement Service: false

Para obter mais informações sobre os comandos do ESXCLI, consulte a Documentação do ESXCLI. Para obter mais informações sobre como ativar o serviço CIM, consulte o artigo da base de conhecimento VMware em https://kb.vmware.com/kb/1025757.

Procedimento

  1. Crie uma conta de usuário vSphere não raiz para aplicativos CIM.
    Consulte o tópico sobre como adicionar vCenter Single Sign-On usuários em vSphere Autenticação. O privilégio vSphere necessário para a conta de usuário é Host.CIM.Interaction.
  2. Use o SDK do vSphere API de sua escolha para autenticar a conta de usuário para vCenter Server. Em seguida, chame AcquireCimServicesTicket() para retornar um tíquete para autenticação com ESXi como uma conta de nível de administrador usando APIs de porta CIM-XML 5989 ou WS-Man porta 433.
    Consulte vSphere WebReferência da API de serviços para obter mais informações.
  3. Renove o tíquete a cada dois minutos, conforme necessário.