Compartilhar via


Processo de aprovação de aplicativos

Um dos cenários importantes para a gestão de aplicações é o fornecimento de um processo de instalação e desinstalação controlado para software que requer aprovação. Para reduzir a carga geral na infraestrutura Configuration Manager e melhorar o desempenho, o fluxo de trabalho não requer a criação de coleções individuais para gerir instalações e desinstalações para cada aplicação.

Cenário 1: as aplicações têm de ser aprovadas antes de serem instaladas

O administrador de TI da Contoso utiliza o Centro de Software para disponibilizar software aos utilizadores. Estas aplicações têm de ser aprovadas antes de serem instaladas. O administrador implementa uma aplicação para todos os utilizadores e configura-a para exigir aprovação.

O utilizador navega na lista de aplicações no Centro de Software, mas não pode instalar a aplicação até que o pedido seja aprovado. O utilizador submete o pedido a partir do Centro de Software e especifica o motivo do pedido. Se a opção Aprovar pedidos de aplicação para utilizadores por dispositivo estiver ativada, o utilizador tem de pedir a aprovação de todos os dispositivos onde pretende instalar a aplicação. Em seguida, o administrador aprova ou nega o pedido para cada um dos dispositivos do utilizador em que foram feitos pedidos.

Observação

Configuration Manager não ativa esta funcionalidade por predefinição. Antes de a utilizar, ative a funcionalidade opcional Aprovar pedidos de aplicação para utilizadores por dispositivo. Para obter mais informações, consulte Habilitar recursos opcionais das atualizações.

O Centro de Software requer que o utilizador submeta o pedido para a aplicação a partir do respetivo dispositivo. O utilizador vê esta mensagem no Centro de Software:

O utilizador pede a aplicação que precisa de aprovação do Centro de Software

O utilizador especifica por que motivo pretende a aplicação e submete o pedido de aprovação:

O utilizador notificou que o pedido de aprovação foi submetido no Centro de Software

Assim que o administrador aprovar o pedido, o utilizador pode instalar a aplicação no respetivo dispositivo. Se o utilizador não tomar nenhuma ação, a aplicação é instalada automaticamente para o utilizador durante o horário comercial.

Utilizador a instalar a aplicação aprovada a partir do Centro de Software

Cenário 2: Integrar um sistema de aprovação de aplicações

A Northwind Traders tem um sistema de aprovação de aplicações existente e o administrador quer integrar o sistema de aprovação com Configuration Manager.

O administrador implementa uma aplicação para todos os utilizadores e configura-a para exigir aprovação. Em seguida, o administrador ativa a definição de cliente do Centro de Software para Ocultar aplicações não aprovadas no Centro de Software.

Opção Ocultar aplicações não aprovadas do Centro de Software

Com esta opção, o utilizador não vê a aplicação no Centro de Software até que o pedido de aplicação seja aprovado para instalação no dispositivo. Quando a aprovação é concedida através do sistema de aprovação da organização, o sistema de orquestração pode fazer um pedido aprovado para o utilizador e o respetivo dispositivo no Configuration Manager. Os sistemas de orquestração utilizaram o CreateApprovedRequest método WMI no Configuration Manager. Em seguida, este método utiliza o mecanismo de implementação de aplicações Configuration Manager existente. Não modifica as associações de coleção e entra em vigor imediatamente. A aplicação está agora disponível para o utilizador no Centro de Software.

O administrador também pode configurar a automatização para instalar automaticamente a aplicação no dispositivo do utilizador. Nenhum outro utilizador verá a aplicação como disponível no Centro de Software até que a aprovação seja concedida. Esta solução fornece controlo por utilizador e por dispositivo do software sem a necessidade de criar coleções separadas.

O método CreateApprovedRequest WMI na SMS_UserApplicationRequest classe tem os seguintes parâmetros de entrada:

Parâmetros obrigatórios

  • ClientGUID - Identificador exclusivo do cliente
  • Username - Nome de utilizador exclusivo do utilizador
  • ApplicationID - Nome do modelo da aplicação

O ApplicationID é a propriedade ModelName da instância SMS_Application. Este valor é o ID exclusivo da aplicação sem a versão. Por exemplo, ScopeId_21A9ED3B-D8C6-49DC-87A6-01F296182F14/Application_40243740-01f2-48db-abf0-c95259986d94.

Parâmetros opcionais

  • Comments - Comentários para que o pedido aprovado seja apresentado no Centro de Software. Por predefinição, especifica uma cadeia vazia.

  • AutoInstall - Instale a aplicação imediatamente após a aprovação do pedido. Por predefinição, este parâmetro é verdadeiro.

    Observação

    Na versão 2006 e anterior, só poderia chamar este método uma vez para uma aplicação específica. A partir da versão 2010, pode chamar este método mais do que uma vez. Se o parâmetro AutoInstall for $true, o cliente tenta instalar a aplicação novamente.

O seguinte exemplo de código é um script Windows PowerShell que mostra como invocar o método WMI para um utilizador, computador e aplicação específicos:

$machinename = $args[0]
$username = $args[1]
$appid = $args[2]
$autoInstall = $args[3]
$comments = $args[4]

$scObj=Get-WmiObject -Namespace root\sms -Query 'select SiteCode from sms_providerlocation'
$sitecode = $scObj.SiteCode
$namespace ="root\sms\site_" + $sitecode
$machine = Get-WmiObject -Namespace $namespace -Query "SELECT * FROM SMS_R_SYSTEM WHERE Name = '$machinename'"
$clientGuid = $machine.SMSUniqueIdentifier
Invoke-WmiMethod -Path "SMS_UserApplicationRequest" -Namespace $namespace -Name CreateApprovedRequest -ArgumentList @($appid, $autoInstall, $clientGuid, $comments, $username)

A seguinte linha de comandos executa o script de exemplo:

.\CreateApprovedRequest.ps1 "MachineName" "Domain\User" "ScopeId_2E4DAE44-C9A0-4694-8B7A-474424C080D4/Application_88808a3a-86e4-4820-be59-aa7d61cb8c33 "true" "Application has been approved"

O administrador ainda pode ver os pedidos aprovados na consola do Configuration Manager a partir dosPedidos de Aprovação da Gestão> deAplicaçõesda Biblioteca> de Software.

Nó de pedidos de aplicação na consola do Configuration Manager

Limitações

A versão atual deste método WMI de aprovação de aplicações tem as seguintes limitações:

  1. O CreateApprovedRequest método só pode ser chamado uma vez para uma combinação exclusiva de ID de computador, ID da aplicação e nome de utilizador. Devolve um erro se o método for chamado com os mesmos parâmetros mais do que uma vez. Os detalhes sobre este erro estão em SMSProv.log.
  2. Para ativar a instalação automática da aplicação, implemente a aplicação numa coleção de utilizadores ou grupos de utilizadores antes de chamar o método WMI. Se criar a implementação depois de chamar o método WMI, a aplicação será disponibilizada ao utilizador para instalação e não será instalada automaticamente.

Cenário 3: Revogar a aprovação da aplicação

Se o administrador revogar a aprovação ou se a aplicação já não estiver a ser utilizada, desinstale a aplicação.

O administrador revoga a aprovação da aplicação com a consola do Configuration Manager, um script do PowerShell ou o WMI. Mesmo que a aplicação já tenha sido aprovada, o administrador pode utilizar a opção Negar. Revogar a aprovação impede que o utilizador instale a aplicação no respetivo dispositivo. A mesma ação também causa a desinstalação da aplicação no dispositivo do utilizador se a aplicação tiver sido instalada anteriormente.

Saiba mais sobre o cmdlet Deny-CMApprovalRequest .

Pré-requisitos para revogar aprovações de aplicações

  1. Defina a definição Selecionar estas novas definições para especificar as informações da empresa do cliente como Sim.
  2. Habilite o recurso opcional Aprovar solicitações de aplicativos para usuários por dispositivo. Para obter mais informações, consulte Habilitar recursos opcionais das atualizações.

Cenário 4: Pedidos pré-aprovados baseados no computador

Pode utilizar a CreateApprovedRequest API para criar um pedido pré-aprovado para um dispositivo sem ser necessário um utilizador. Esta ação permite-lhe instalar e desinstalar aplicações em tempo real. Atualmente, esta funcionalidade só está disponível no SDK. Para que os pedidos pré-aprovados baseados no computador funcionem, também tem de ativar a funcionalidade opcional Aprovar pedidos de aplicação para utilizadores por dispositivo. Para obter mais informações, consulte Habilitar recursos opcionais das atualizações.

Os administradores podem criar uma implementação disponível no computador que requer aprovação com o cmdlet New-CMApplicationDeployment . Veja um exemplo:

New-CMApplicationDeployment -CollectionName "All Systems" -Name "Test app" -DeployAction Install -DeployPurpose Available -ApprovalRequired $true -DistributionPointName 'DistributionPoint.domain.com" -DistributeContent

Uma implementação criada com o requires approval sinalizador definido para true permanecer no servidor e pode ser utilizada com coleções maiores. O fluxo de pedido de utilizador ainda não está disponível para implementações direcionadas para máquinas que requerem aprovação. Por isso, a aplicação não fica visível no Centro de Software até criar um pedido pré-aprovado para o dispositivo individual.

O seguinte Windows PowerShell script de exemplo mostra como invocar o método WMI para um computador e uma aplicação para criar um pedido pré-aprovado:

$machinename = $args[0]
$appid = $args[1]
$autoInstall = $args[2]
$comments = $args[3]

$scObj=Get-WmiObject -Namespace root\sms -Query 'select SiteCode from sms_providerlocation'
$sitecode = $scObj.SiteCode
$namespace ="root\sms\site_" + $sitecode
$machine = Get-WmiObject -Namespace $namespace -Query "SELECT * FROM SMS_R_SYSTEM WHERE Name = '$machinename'"
$clientGuid = $machine.SMSUniqueIdentifier
Invoke-WmiMethod -Path "SMS_ApplicationRequest" -Namespace $namespace -Name CreateApprovedRequest -ArgumentList @($appid, $autoInstall, $clientGuid, $comments)

A seguinte linha de comandos executa o script de exemplo:

.\CreateApprovedRequestForMachine.ps1 "MachineName" "ScopeId_2E4DAE44-C9A0-4694-8B7A-474424C080D4/Application_88808a3a-86e4-4820-be59-aa7d61cb8c33 "true" "Application has been approved"

Definir o autoInstall parâmetro como false não tem qualquer efeito no Configuration Manger para o pedido pré-aprovado baseado no computador. Assim que o pedido pré-aprovado for criado no site, o dispositivo tentará instalar a aplicação. Pode negar o pedido de aprovação para remover a aplicação do dispositivo.

Consola a mostrar a aplicação aprovada para todos os utilizadores de dispositivos específicos

Cenário 5: Reaprotar um pedido de aplicação anteriormente negado

Pode voltar a processar um pedido de aplicação que foi anteriormente negado. O Reapproval só está disponível através da API do SDK. O seguinte script de exemplo do PowerShell demonstra a aprovação de um pedido depois de este ter sido negado:

$machinename = $args[0]
$username = $args[1]
$appid = $args[2]

$scObj=Get-WmiObject -Namespace root\sms -Query 'select SiteCode from sms_providerlocation'
$sitecode = $scObj.SiteCode
$namespace ="root\sms\site_" + $sitecode
$reqObj = Get-WmiObject -Namespace $namespace -Class SMS_UserApplicationRequest | Where {$_.ModelName -eq $appid -and $_.RequestedMachine -eq $machinename -and $_.User -eq $username }
$reqObjPath = $reqObj.__PATH
Invoke-WmiMethod -Path $reqObjPath -Name Approve

A seguinte linha de comandos executa o script de exemplo:

.\ReapproveRequest.ps1 "MachineName" "DomainName\Username" "ScopeId_2E4DAE44-C9A0-4694-8B7A-474424C080D4/Application_88808a3a-86e4-4820-be59-aa7d61cb8c33"

Cenário 6: Email notificações para pedidos de aprovação de aplicações

Os administradores podem configurar notificações por email para pedidos de aprovação de aplicações. Pode especificar aprovadores de aplicações durante a implementação da aplicação. Todos os aprovadores recebem uma notificação por e-mail quando um utilizador pede uma aplicação e pode aprovar ou negar o pedido através das ligações fornecidas no e-mail. Também pode configurar o gateway de gestão da cloud para permitir a aprovação de pedidos de aplicação fora da rede interna.

Pré-requisitos para notificações por email

  • A partir da versão 2107, o Fornecedor de SMS necessita da versão 4.6.2 do .NET e é recomendada a versão 4.8. Na versão 2103 e anterior, esta função requer o .NET 4.5 ou posterior. Para obter mais informações, pré-requisitos do site e do sistema de sites.

  • Habilite o recurso opcional Aprovar solicitações de aplicativos para usuários por dispositivo. Para obter mais informações, consulte Habilitar recursos opcionais das atualizações.

  • Se a infraestrutura de certificados PKI não estiver configurada, ative HTTP Avançado.

    Observação

    A configuração de HTTP Avançado é por site primário. Se o ativar em qualquer um dos sites primários de uma hierarquia, Configuration Manager utiliza certificados autoassinados em todos os fornecedores. Este comportamento inclui o CAS e outros sites primários.

Configurar notificações por email

  1. Na consola do Configuration Manager, aceda aConfiguração do Site de Administração> ->Sites.
  2. Selecione o site de nível superior na hierarquia e selecione Configurar Componentes do Site no friso .
  3. Selecione Email Notificação para abrir a caixa de diálogo Propriedades.
  4. Selecione Ativar notificação por e-mail para alertas e especifique a porta do servidor SMTP. Se estiver a utilizar o Microsoft 365, pode utilizar o servidor SMTP do Microsoft 365.
  5. Introduza o FQDN ou o endereço IP do servidor SMTP.
  6. Selecione Para Especificar uma conta, selecione Definir e, em seguida, selecione Nova Conta.
  7. Forneça um nome de utilizador e palavra-passe para a nova conta e clique em OK.
  8. Introduza o endereço do Remetente para alertas de e-mail.
  9. Clique em Aplicar.
  10. Pode testar o servidor SMTP ao enviar um exemplo de e-mail. Selecione Testar Servidor SMTP na caixa de diálogo Propriedades de Notificação do Email.
    • Reveja os erros no NotiCtlr.log.
    • É recomendado configurar o SSL com um certificado PKI no Fornecedor de SMS para aprovar ou negar com êxito o pedido na rede interna quando o gateway de gestão da cloud não estiver configurado. Caso contrário, verá a página que contém o aviso "Existe um problema com este certificado de segurança".

Email propriedades do componente de notificação na consola do Configuration Manager

Aprovar pedidos de aplicação fora da rede interna

Para aprovar pedidos de aplicação fora da rede interna, são necessárias definições adicionais:

  1. Ative Permitir Configuration Manager tráfego do gateway de gestão da cloud em Servidores deConfiguração de Sitesde Administração>>e Funções de Sistemas de Sites Propriedades>do Fornecedor> de SMS.
  2. Configure o gateway de gestão da cloud.
  3. Ative Microsoft Entra deteção de utilizadores.
  4. Configure as seguintes definições para esta aplicação nativa (aplicação cliente) no Microsoft Entra ID. Estas definições devem ser configuradas manualmente no portal do Azure.
    • URI de Redirecionamento: https://<CMG FQDN>/CCM_Proxy_ServerAuth/ImplicitAuth. Utilize o nome de domínio completamente qualificado do serviço de gateway de gestão da cloud (CMG), por exemplo, GraniteFalls.Contoso.com. portal do Azure a mostrar o URI de redirecionamento para a aplicação registada

    • Manifesto: defina oauth2AllowImplicitFlow como verdadeiro. Por exemplo: "oauth2AllowImplicitFlow": true,portal do Azure a mostrar o manifesto da aplicação registada

Testar o processo de aprovação de e-mail

Vamos percorrer o cenário ponto a ponto:

  1. Implementa uma aplicação como disponível numa coleção de utilizadores. Na página Definições de Implementação , ative-a para aprovação. Além disso, introduz alguns endereços de e-mail para receber uma notificação sobre pedidos de aplicação.

    Criação da implementação com a aprovação de endereços de e-mail de administrador

  2. O utilizador vê a nova aplicação no Centro de Software e envia o pedido para a mesma. O site envia a notificação por e-mail no prazo de cinco minutos para os endereços especificados na implementação da aplicação.

    Exemplo de e-mail para um administrador de aprovação

  3. Um recetor de e-mail escolhe Aprovar ou Negar. Uma mensagem de êxito é apresentada no browser se o site tiver processado com êxito o pedido da aplicação.

    • Se um pedido de aplicação for aprovado ou negado por e-mail, as ligações expiram e não podem ser utilizadas por mais ninguém.

Problemas conhecidos

  1. Um erro 404 é apresentado após Approve o clique ou Deny as ligações são clicadas.
    • Não existe um certificado vinculado ao Serviço Administração. Verifique se a funcionalidade certificados gerados Configuration Manager está ativada. Caso contrário, configure a sua própria infraestrutura de certificados PKI.
    • Verifique se existem SMS_REST_PROVIDER.log erros.
  2. There is a problem with this security certificate depois de Approve clicar ou Deny clicar nas ligações.
    • Configuration Manager certificado gerado não é fidedigno pelo browser no cliente. É recomendado configurar a infraestrutura de certificados PKI quando as ligações são utilizadas na rede interna.
  3. Service is unavailable, HTTP Error 503 Mensagem.
    • Verifique se o Serviço Administração está em execução. Num computador fornecedor, aceda a Detalhes do Gestor> deTarefas. Certifique-se de que existe um processo ativo chamado sccmprovidergraph.exe
    • Abra a Consola do Configuration Manager, os Servidores deConfiguração do Site de Administração>> e oFornecedor de SMSde Funções> de Sistemas de Sites. Clique com o botão direito do rato em Propriedades. Certifique-se de que Allow Configuration Manager cloud management gateway traffic. está selecionada quando a funcionalidade de aprovação de e-mail se destina a ser utilizada com o Cloud Management Gateway e não é verificada quando a funcionalidade é utilizada para aprovar ou negar pedidos na rede interna.
  4. As ligações para aprovar ou negar o pedido através do Cloud Management Gateway não funcionam.
    • Verifique se Microsoft Entra utilizador a Deteção está ativada.
    • Certifique-se de que o endereço de e-mail especificado durante a implementação da aplicação pertence à sua organização.
  5. Email não é enviada quando um utilizador pediu uma aplicação.
    • Verifique se o endereço de e-mail está correto.
    • Certifique-se de que notificações por email para alertas estão configurados.
    • Verifique se existem NotiCtrl.log erros.
  6. Erro no assistente Criar Implementação de Aplicações .
    • Certifique-se de que tem direitos para criar uma subscrição. A subscrição será criada automaticamente durante a implementação da aplicação.