---
title: Obter Certificado
slug: aiops-documentacao-tecnica/obter-certificado
docTags: 
createdAt: 2024-07-18T21:05:56.386Z
---

## Resumo

- Obtenha o certificado de um host\:porta.

## Parâmetros

| **Parâmetro**           | **Tipo** | **Escolhas \| Valor Padrão**                                              | **Comentários**                                                                                                                                                                                                                                                                  |
| ----------------------- | -------- | ------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| host - *required*       | string   |                                                                           | O host que queira obter o certificado.                                                                                                                                                                                                                                           |
| ca\_cert                | path     |                                                                           | Um arquivo PEM contendo um ou mais certificados raiz; se estiver presente, o certificado será validado em relação a esses certificados raiz. Observe que isso só valida se o certificado é assinado pela rede; não que o certificado seja válido para o host que o apresenta.    |
| port - *required*       | integer  |                                                                           | A porta para se conectar.                                                                                                                                                                                                                                                        |
| proxy\_host             | string   |                                                                           | Host proxy usado para obter o certificado.                                                                                                                                                                                                                                       |
| proxy\_port             | integer  | - 8080<br />(default)                                                     | Porta proxy usada para obter o certificado.                                                                                                                                                                                                                                      |
| timeout                 | integer  | - 10<br />(default)                                                       | O tempo limite em segundos.                                                                                                                                                                                                                                                      |
| select\_crypto\_backend | string   | Escolhas:<br />- auto<br />(default)<br />- cryptography<br />- pyopenssl | Determina qual back-end de criptografia usar. A escolha padrão é (auto), que tenta usar (cryptography) se disponível e volta para (pyopenssl). Se definido como (pyopenssl), tentará usar a mesma. Se definido como C (cryptography), tentará usar a biblioteca de criptografia. |

## Notas

- Ao usar o parâmetro ca\_cert no OS X, foi relatado que, em algumas condições, a validação sempre será bem-sucedida.

## Exemplos

```yaml
# Exemplo: Obtenha o certificado de uma porta RDP
- get_certificate:
    host: "1.2.3.4"
    port: 3389
  delegate_to: localhost
  run_once: true
  register: cert

# Exemplo: Obtenha um certificado de uma porta https
- get_certificate:
    host: "www.google.com"
    port: 443
  delegate_to: localhost
  run_once: true
  register: cert

# Exemplo: Quantos dias até o certificado expirar
- debug:
    msg: "cert expires in: {{ expire_days }} days."
   vars:
    expire_days: "{{ (( cert.not_after | to_datetime('%Y%m%d%H%M%SZ')) - (atmosphere_date_time.iso8601 | to_datetime('%Y-%m-%dT%H:%M:%SZ')) ).days }}"

```



## Valores retornados

| **Chave**                           | **Tipo**                   | **Retornado quando** | **Descrição**                                             |
| ----------------------------------- | -------------------------- | -------------------- | --------------------------------------------------------- |
| cert                                | string                     | Sucesso              | O certificado obtido da porta.                            |
| expired                             | boolean                    | Sucesso              | Booleano indicando se o certificado expirou.              |
| extensions<br />(Possíveis valores) | list / elements=dictionary | Sucesso              | Extensões aplicadas ao certificado.                       |
| issuer                              | dictionary                 | Sucesso              | Informações sobre o emissor do certificado.               |
| not\_after                          | string                     | Sucesso              | Data de expiração do certificado.                         |
| not\_before                         | string                     | Sucesso              | Data de emissão do certificado.                           |
| serial\_number                      | string                     | Sucesso              | O número de série do certificado.                         |
| signature\_algorithm                | string                     | Sucesso              | O algoritmo usado para assinar o certificado.             |
| subject                             | dictionary                 | Sucesso              | Informações sobre o assunto do certificado (OU, CN, etc). |
| version                             | string                     | Sucesso              | O número da versão do certificado.                        |



## Subcampos da chave de retorno extensions

| **Chave**   | **Tipo** | **Retornado quando** | **Descrição**                                            |
| ----------- | -------- | -------------------- | -------------------------------------------------------- |
| asn1\_data  | string   | Sucesso              | O conteúdo ASN.1 codificado em Base64 da extensão.<br /> |
| critical    | boolean  | Sucesso              | Se a extensão é crítica.<br />                           |
| name        | string   | Sucesso              | O nome da extensão.                                      |

