Arquivos do PowerShell MID Server
As funções do PowerShell são armazenadas em arquivos de script (*.ps1) que usam uma extensão de nome de arquivo do módulo de Script do PowerShell (*.psm1).
- Active Directory
- Trocar
- SCCM
- PowerShell
PSScript.ps1
Este script executa algumas tarefas, como teste de credencial, criptografia de senha e a execução de scripts configurados no Designer de atividades de Orquestração ou em Arquivos de Script MID. No entanto, o foco deste documento é como PSScript.ps1 usa o módulo credential.psm1 para testar o acesso a hosts remotos.
CredTypes do PowerShell
Os tipos de credencial do PowerShell:
| Tipo | Descrição |
|---|---|
| WMI | testCredentialWMI |
| Trocar | testCredentilExchange |
| AD | testCredentilAD |
| SCCM | testCredentilSCCM |
Se nenhum tipo de credencial for passado para o script PSScrip.ps1, o MID Server usará como padrão a função de teste WMI para testar o acesso ao host de destino. Se houver um tipo de credencial usado, o MID Server executará a função de teste correspondente para esse tipo de credencial.
Códigos de saída
Esses códigos de saída são retornados do script PSScript.ps1 e registrados no arquivo de log do MID Server.
| Tipo | Função teste |
|---|---|
| 0 | Comando/script do PowerShell executado com sucesso. |
| 1 | Teste concluído com sucesso, mas o comando/script falhou ao executar. |
| 2 | Sintaxe incorreta passada para o script. |
| 3 | Falha em todas as credenciais, incluindo a conta de serviço do MID Server, ao executar o comando/script. |
| 4 | O teste foi aprovado e a atividade foi executada, mas foi retornado um erro. Não foi possível encontrar o usuário de exemplo. |
DiagnosticsUtil.psm1
| Serviço público | Descrição |
|---|---|
| SNCLog-DebugInfo | Registre uma mensagem de depuração para um script do PowerShell ou atividade de Orquestração do PowerShell. Exemplos:
|
| SNCLog-ParameterInfo | Registre em log um valor de parâmetro de função. Para "function getHostName {param([String] $ target)", o primeiro valor para a tabela de hash do PowerShell é uma cadeia de caracteres para indicar qual função será executada e os valores de cada um dos parâmetros da função. Exemplos:
|
| SNCObfuscate-Value | Use este utilitário para criptografar valores para fins de segurança. A função exibe "$ variableName": ***, em que *** é o valor ofuscado. Exemplo: SNCObfuscate-Value $password Nota: A mensagem de depuração é: "$ password: ***". |
Credentials.psm1
| Função | Descrição |
|---|---|
| testCredentialWMI | Testa o usuário e a senha fornecidos no host de destino usando o objeto Get-WMI. |
| testCredentilAD | Testa o usuário e a senha fornecidos no host de destino usando o objeto DirectoryEntry interno. |
| testCredentialExchange | Testa o usuário e a senha fornecidos para criar uma sessão em um host do Exchange. Este teste usa o recurso de comunicação remota do PowerShell interno em um host remoto. O WinRM é configurado nos servidores do Exchange por padrão. |
| testCredentialSCCM | Testa o usuário e a senha fornecidos para criar uma sessão em um servidor SCCM. Este teste usa o recurso de comunicação remota do PowerShell interno em um host remoto. Este teste requer que o WinRM seja configurado. |
| testNoCredentialAccessWMI | Testa o usuário e a senha fornecidos no host de destino usando o objeto Get-WMI. Este teste é usado quando nenhum credType é usado. |
Este diagrama ilustra a dependência do comportamento de seleção de credencial no host que está sendo direcionado pela atividade do PowerShell. Se o host de destino for o endereço IP ou o nome do host do MID Server, o MID Server ignorará todas as credenciais na tabela Credenciais e usará a conta do serviço do MID Server. Se o host de destino não for o MID Server, todas as credenciais Windows serão usadas primeiro. Se todas as credenciais na tabela Credenciais não funcionarem na execução da atividade do PowerShell, o MID Server usará a conta de serviço do MID Server.
ActiveDirectory.psm1
Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades do Active Directory.
Exchange.psm1
Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades do Exchange.
SCCM.psm1
Este arquivo de módulo armazena as funções usadas pelos scripts do PowerShell enviados com o pacote de atividades SCCM.