Acme Account Info
Resumo
- Permite recuperar informações em contas com uma CA que suporte o protocolo ACME , como Let's Encrypt .
- Este módulo só funciona com o protocolo ACME v2.
Parâmetros
Parâmetro | Tipo | Escolhas | Valores padrão | Comentários |
|---|---|---|---|
account_key_content | string | | Conteúdo da chave RSA ou curva elíptica da conta ACME.Mutuamente exclusivo com account_key_src. Necessário se account_key_src não for usado. Atenção: o conteúdo será gravado em um arquivo temporário, que será excluído pelo Atmosphere quando o módulo for concluído. Como essa é uma chave privada importante — ela pode ser usada para alterar a chave da conta ou revogar seus certificados sem conhecer suas chaves privadas —, isso pode não ser aceitável. Caso cryptography seja usado, o conteúdo não é gravado em um arquivo temporário. Ainda pode acontecer que ele seja gravado em disc no processo de mover o módulo com seu argumento para o nó onde ele é executado. |
account_key_passphrase | string | | Phassphrase a ser usada para decodificar a chave da conta. Nota: isso não é suportado pelo back- openssl, apenas pelo back- cryptography. |
account_key_src | path | | Caminho para um arquivo que contém a chave RSA ou curva elíptica da conta ACME. |
account_uri | string | | Se especificado, assume que o URI da conta é o informado. Se a chave da conta não corresponder a essa conta ou não existir uma conta com esse URI, o módulo falhará. |
acme_directory - required | string | | O diretório ACME a ser usado. Esta é a URL do ponto de entrada para acessar a API do servidor ACME CA. Por motivos de segurança, o padrão é definido para o servidor de teste Let's Encrypt (para o protocolo ACME v1). Isso criará certificados tecnicamente corretos, mas não confiáveis. |
acme_version - required | integer |
| A versão ACME do endpoint. Deve ser 1 para os endpoints ACME clássicos Let's Encrypt e Buypass ou 2 para endpoints ACME v2 padronizados. |
retrieve_orders | |
| Whether to retrieve the list of order URLs or order objects, if provided by the ACME server.A value of ignore will not fetch the list of orders.If the value is not ignore and the ACME server supports orders, the order_uris return value is always populated. The orders return value is only returned if this option is set to object_list.Currently, Let's Encrypt does not return orders, so the orders result will always be empty. |
select_crypto_backend | |
| Determines which crypto backend to use.The default choice is auto, which tries to use cryptography if available, and falls back to openssl.If set to openssl, will try to use the openssl binary.If set to cryptography, will try to use the cryptography library. |
validate_certs | boolean |
| Se as chamadas para o diretório ACME validarão certificados TLS. Aviso: Deve ser configurado apenas false para fins de teste, por exemplo, ao testar em um servidor Pebble local. |
Notas
- O módulo crypto.acme_account permite modificar, criar e deletar contas ACME.
- Se uma nova versão da livraria de cryptogradia está disponível, será usada em vez do openssl binary. Isso pode estar explicitamente desbilitado ou abilitado com a opção select_crypto_backend. Note que usando o openssl binary será mais lento e menos seguro, como os conteúdos da private key sempre tem que ser estocado no disco (veja account_key_content).
- Mesmo que os padrões sejam escolhidos para que o módulo possa ser usado com o Let’s Encrypt CA, o módulo pode em princípio ser usado com qualquer CA provendo um endpoint ACME, como um Buypass Go SSL.
Exemplos
- name: Check whether an account with the given account key exists
community.crypto.acme_account_info:
account_key_src: /etc/pki/cert/private/account.key
register: account_data
- name: Verify that account exists
assert:
that:
- account_data.exists
- name: Print account URI
builtindebug:
var: account_data.account_uri
- name: Print account contacts
debug:
var: account_data.account.contact
- name: Check whether the account exists and is accessible with the given account key
acme_account_info:
account_key_content: "{{ acme_account_key }}"
account_uri: "{{ acme_account_uri }}"
register: account_data
- name: Verify that account exists
assert:
that:
- account_data.exists
- name: Print account contacts
debug:
var: account_data.account.contactValores de retorno
Chave | Tipe | Retornado quando | Descrição |
|---|---|---|---|
account | dict | Se a conta existir | Informação da conta, recuperada do ACME server. |
account_uri | string | sempre | Conta URI ACME, ou None se a conta não existir. |
exists | bool | sempre | Se a conta existir ou não. |
order_uris | list / elements=string | Se a conta existir, retrieve_orders não será ignore, e server supports order listing | Lista de ordens. Se RETRIVE_ORDERS é uma URL_LIST, será uma lista de URLs. Se RETRIVE_ORDERS é uma OBJECT_LIST, será uma lista de objetos. |
orders | list / elements=dictionary | Se a conta existir, retrieve_orders não será ignore, e server supports order listing | Lista de ordens. |
Subcampos da opção account
Chave | Tipe | Retornado quando | Descrição |
|---|---|---|---|
contact | list / elements=string | sempre | O recurso challenge que deve ser criado para validação. |
orders | string | sempre | Um URL onde a llista de ordens pode ser recuperada para essa conta. Use a opção RETRIVE_ORDERS para o query URL a recupara a lista completa de ordens. |
public_account_key | string | sempre | A chave da conta pública como JSON Web Key. |
status | string | sempre | O status da conta. |
Subcampos da opção orders
Chave | Tipe | Retornado quando | Descrição |
|---|---|---|---|
authorizations | list / elements=string | success | Lista de URLs por autorizações por essa ordem. |
certificate | string | Quando o certificado foi emitido | A URL para recuperar o certificado. |
error | dict | Quando ocorreu um erro | No caso de um erro ocorrido durante o processo, este conterá informações sobre o erro. O campo é estruturado como documento problema (RFC7807). |
expires | string | Quando o server dá a data de validade | Quando a ordem exipra. Timestamp tem que ser formatado como descrito em RFC3339. Somente requerido para ser incluso no resultado quando o status está pendente ou é valido. |
finalize | string | success | Uma URL usada para finalizar uma ordem ACME. |
identifiers | list / elements=dictionary
| Se a conta existe, retrieve_orders é object_list e o server suporta listamento de ordens. | Lista de identifiers do que essa ordem é. |
notAfter | string | Quando o server retorna isso | O valor requerido do campo notAFTERno certificado. Data tem que ser formatada como descrita em RFC3339. O server não requere o retorno deste. |
notBefore | string | Quando o server retorna isso | O valor requerido do campo notBEFOREno certificado. Data tem que ser formatada como descrita em RFC3339. O server não requere o retorno deste. |
status | string | success | O status da ordem. |
Subcampos da opção identifiers
Chave | Tipe | Retornado quando | Descrição |
|---|---|---|---|
type | string | success | Tipo de identifier. DNS ou IP. |
value | string | success | Nome do identifier. Hostname ou IP address. |
wildcard | bool | Requerido para ser incluso se o identifier é wildcarded. | Value é ou não uma wildcard. O prefixo wildcard *. não é incluso no value se for TRUE |