> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/pt/implementacao-do-scepman/intermediate-certificate.md).

# CA intermédia

{% hint style="warning" %}
apenas na Edição Enterprise do SCEPman
{% endhint %}

Se você quiser usar outra CA raiz como autoridade primária, você pode criar um certificado de CA intermediária para operar o SCEPman como uma Autoridade de Certificação subordinada. Você pode criar o certificado correto diretamente no Azure Key Vault e baixar o CSR para assinatura com a sua CA raiz. A solicitação assinada pode ser carregada e mesclada no Azure Key Vault. Este artigo orienta você detalhadamente pelas etapas necessárias.

## Permissões do Key Vault

Você precisa conceder acesso ao Azure Key Vault à sua conta de usuário para criar o CSR e mesclar o certificado da CA intermediária. A forma de atribuir as permissões depende da configuração de acesso do seu Key Vault:

{% tabs %}
{% tab title="Azure RBAC" %}

1. Navegue até o seu Azure Key Vault no Azure Portal
2. Clique em **Controle de acesso (IAM)** no painel de navegação à esquerda.
3. Clique em **Atribuições de função** e adicione uma nova atribuição de função

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FZUqsPTRdUk5IhmZZlBVD%2Fimage.png?alt=media&amp;token=325c2296-4f6b-476d-b003-29cf3674556f" alt=""><figcaption><p>Adicione uma nova atribuição de função ao seu Key Vault</p></figcaption></figure>

4. Selecione a **Key Vault Certificate Officer** função e clique em **Seguinte**

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FptcaAY0strUu3qIgkTdc%2Fimage.png?alt=media&amp;token=6bf4adc2-da77-4ece-ba68-09c61fc6905e" alt=""><figcaption></figcaption></figure>

5. Agora procure e adicione sua conta de administrador do AAD na **Membros** seção e continue para atribuir a função

Depois de adicionar a atribuição de função, sua conta do Azure AD está autorizada a criar um CSR e carregar o certificado.
{% endtab %}

{% tab title="Políticas de acesso do Vault" %}

1. Navegue até o seu Azure Key Vault no Azure Portal
2. Clique em **políticas de acesso** no painel de navegação à esquerda.
3. Clique em **Criar** e escolha o **Gestão de certificados** modelo, depois em seguida

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FD2mWeiZ7YnQuRN0rdypW%2F2023-06-14%2016_20_43-IntermediateCert.png?alt=media&amp;token=da6b385e-8902-4b53-8a9f-25f3573d6532" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2F37QHfqcQRHNboM4yQkTb%2F2023-06-14%2016_23_37-IntermediateCert.png?alt=media&amp;token=3cc22a95-8f13-4487-b270-083efa2779bd" alt=""><figcaption></figcaption></figure>

4. Agora procure e adicione sua conta de administrador do AAD na **Principal** seção, depois em seguida, em seguida e criar

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FIj3S2D7wkNquLnBJSUQe%2F2023-06-14%2017_06_33-.png?alt=media&amp;token=195c03cb-a120-434b-8aa1-c44d4b2d26f6" alt=""><figcaption></figcaption></figure>

Depois de adicionar as permissões, sua conta do Azure AD está autorizada a criar um CSR e carregar o certificado.
{% endtab %}
{% endtabs %}

## Abrir a Rede do Key Vault para o sistema de administração

Se estiver a usar um [Private Endpoint](/pt/configuracao-do-azure/private-endpoints.md) para o Key Vault, você precisa adicionar uma exceção que permita ao cliente acessar o Key Vault em nível de rede. Se você não estiver usando um Ponto de Extremidade Privado, pode pular esta parte.

* Vá para o Azure Key Vault no Azure Portal.
* Navegue até a guia Rede em Configurações.
* Altere para "Permitir acesso público de redes virtuais e endereços IP específicos" se você tiver selecionado atualmente "Desabilitar acesso público".
* Adicione o endereço IP do cliente no qual você quer [executar mais tarde o módulo SCEPman PowerShell](#creating-intermediate-ca-certificate-with-the-scepman-powershell-module). Se você estiver usando o Azure Cloud Shell e [ele estiver conectado a uma VNET](https://learn.microsoft.com/en-us/azure/cloud-shell/vnet/overview), você pode adicionar essa VNET. Caso contrário, a maneira mais fácil é permitir temporariamente o endereço IP público do Cloud Shell, já que a autenticação forte protege o seu Key Vault. Você pode usar um comando como `(Invoke-WebRequest -UseBasicParsing -uri "http://ifconfig.me/ip").Content` para encontrar o endereço IP público da sessão.

## Atualizar as configurações do Azure App Service

A próxima etapa é atualizar a configuração do Azure App Service para corresponder ao nome de assunto da CA intermediária que você criará na próxima etapa.

1. Navegue até o seu Azure App Service
2. Clique em **Variáveis de ambiente** no painel de navegação à esquerda
3. Em **Configurações da aplicação,** você deve editar as seguintes configurações:
   1. `AppConfig:KeyVaultConfig:RootCertificateConfig:CertificateName`\
      Altere isso para um nome comum (CN) preferido para a sua CA intermediária.
   2. `AppConfig:KeyVaultConfig:RootCertificateConfig:Subject`\
      Altere apenas o valor CN do nome de assunto para corresponder ao nome comum usado acima.
4. Clique em **Aplicar e confirmar.**
5. Reinicie o Azure **App Service** para aplicar as alterações e, em seguida, navegue até o URL do seu SCEPman.

{% hint style="warning" %}
Observe que a variável CertificateName corresponderá diretamente ao objeto de certificado que será criado no Azure Key Vault. Portanto, você só pode usar nomes de certificado que contenham caracteres alfanuméricos e hífens
{% endhint %}

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FvO2YgKtltBesm2Eme7ix%2Fimage.png?alt=media&amp;token=9ec3f21e-b6eb-47c5-8e10-3e2cbe519669" alt=""><figcaption></figcaption></figure>

## Criando um certificado de CA intermediária com o módulo SCEPman PowerShell

{% hint style="warning" %}
Para garantir que este módulo funcione corretamente, você precisará de uma estação de trabalho com [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) (também conhecido como `az`) instalado. A Azure CLI já vem pré-instalada no [Azure Cloud Shell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview), que é o ambiente recomendado para executar este módulo.
{% endhint %}

Você pode usar a versão 1.9 e posteriores do módulo SCEPman PowerShell para criar um CSR para um certificado de CA intermediária. Você pode instalar a versão mais recente do módulo a partir da PowerShell Gallery com o seguinte comando:

```powershell
Install-Module -Name SCEPman -Scope CurrentUser -Force
```

Depois, você pode informar ao módulo o nome da sua organização para aparecer no certificado:

```powershell
Reset-IntermediateCaPolicy -Organization "My Organization"
```

Configure o assunto da sua CA intermediária para corresponder ao que você usou acima em `AppConfig:KeyVaultConfig:RootCertificateConfig:Subject` (opcionalmente, você pode modificar algumas configurações adicionais para controlar o conteúdo do CSR):

{% code lineNumbers="true" %}

```
$policy = Get-IntermediateCaPolicy
$policy.policy.x509_props.subject = "CN=YOUR_CN_FROM_ABOVE,OU=YOUR_TENANT_ID,O=YOUR_ORGANIZATION"
# alterar algumas configurações adicionais de $policy
Set-IntermediateCaPolicy -Policy $policy
```

{% endcode %}

Por fim, você pode criar o CSR com o seguinte comando (ou um similar de acordo com o seu ambiente):

```powershell
New-IntermediateCA -SCEPmanAppServiceName "app-scepman-example" -SearchAllSubscriptions 6>&1
```

O comando exibirá o CSR que você enviará à sua CA raiz para assinatura.

## Emitir o certificado da CA intermediária

Agora, envie seu CSR para a sua CA raiz e recupere o certificado da CA intermediária emitido. Salve o certificado em disco (.cer), para que, na próxima etapa, você possa carregá-lo e mesclá-lo com a chave privada no Azure Key Vault.

### Etapas especiais para uma CA raiz corporativa ADCS

Se você estiver usando o Active Directory Certificate Services como uma CA raiz integrada ao AD e, portanto, precisar escolher um modelo de certificado, ele deve incluir os seguintes usos de chave: "CRLSign", "DigitalSignature", "KeyEncipherment" e "KeyCertSign". KeyEncipherment está ausente no modelo padrão "Subordinate Certificate Authority" e, além disso, não pode ser selecionado em novos modelos. Veja abaixo uma solução caso você encontre esse problema. **Isso não se aplica às CAs raiz autônomas**, também conhecidas como CAs raiz offline, pois elas obtêm os usos de chave corretamente do CSR.

#### Resumo

Você pode duplicar o modelo SubCA ou usá-lo conforme necessário. Então, basta emitir um certificado com base no CSR usando o modelo. Esse certificado terá *o uso de chave incorreto* (0x86). Depois, você reassina o certificado com uma extensão de uso de chave adaptada usando `certutil -sign`.

#### Passo a passo

1. Solicite e emita um certificado SubCA.
2. Exporte o novo certificado SubCA para um arquivo (por exemplo, c:\temp\SubCA.cer) na CA raiz. Escolha **X.509 codificado em Base-64** formato.
3. Crie um arquivo "extfile.txt" com o conteúdo mostrado abaixo na CA raiz (por exemplo, c:\temp\extfile.txt).
4. Abra a linha de comando e execute: `certutil -sign "c:\temp\SubCA.cer" "c:\temp\SubCAwithKeyEncipher.cer" @c:\temp\extfile.txt`
5. O certificado SubCAwithKeyEncipher.cer agora contém o uso de chave solicitado (0xA6). A impressão digital (assinatura) foi alterada, mas o número de série não.
6. A lista de certificados emitidos no ADCS contém o certificado antigo. Como o número de série não mudou, você pode gerenciar o novo certificado usando o identificador antigo, por exemplo, revogar o certificado antigo revogará o novo certificado. Se você não quiser isso, pode excluir a entrada do certificado antigo usando `certutil -deleterow` e então importar o novo certificado usando `certutil -importcert`.

#### extfile.txt

```
[Extensions]
2.5.29.15=AwIBpg==
Critical=2.5.29.15
```

## Carregar o certificado da CA intermediária

1. No Azure Key Vault, clique no seu certificado e pressione **Operação de certificado**
2. Agora você pode ver as opções **Baixar CSR** e **Mesclar solicitação assinada**

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-9b845d790796a34cb0e9296434373a502ddfee92%2Fscreenshot-2020-10-19-at-16.01.18%20\(1\)%20\(2\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(3\).png?alt=media)

1. Clique em **Mesclar solicitação assinada** e carregue o seu certificado da CA intermediária. Depois de carregar a solicitação assinada, você pode ver o certificado válido no seu Azure Key Vault na área **Concluído**

{% hint style="warning" %}
O certificado da CA intermediária deve estar no formato PEM (codificado em Base64). Se você usar o formato binário DER, verá uma mensagem de erro que diz "Property x5c has invalid value X5C must have at least one valid item" nos detalhes.
{% endhint %}

## Verificar a adequação da CA

Na página de status do SCEPman, você pode ver a nova configuração e baixar o novo certificado da CA intermediária para implantá-lo por meio do Endpoint Manager.

Verifique se o certificado da CA atende a todos os requisitos visitando a sua página inicial do SCEPman. Verifique o que a página inicial diz ao lado de "CA Suitability". Se, por exemplo, disser *O certificado da CA está sem o uso de chave "Key Encipherment"*, você deve voltar para a etapa [Emitir o certificado da CA intermediária](#issue-the-intermediate-ca-certificate) e corrigir a emissão do certificado.

## CAs intermediárias e perfis SCEP do Intune

Na plataforma Android, os Perfis de Configuração SCEP no Intune devem fazer referência à CA raiz, e não à CA intermediária. Caso contrário, o perfil de configuração falha. Para Windows, é o contrário: os Perfis de Configuração SCEP no Intune devem fazer referência à CA intermediária, e não à CA raiz. Para iOS e macOS, não temos informações conclusivas sobre qual dos dois caminhos é melhor.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.scepman.com/pt/implementacao-do-scepman/intermediate-certificate.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
