---
title: "Armazenamento de chaves via CAPI"
description: "Repositório de chaves CAPI do Amplia: uso de CSPs da Windows CryptoAPI para guardar chaves em HSMs e tokens, compatível só com Windows Server."
canonical: "https://docs.lacunasoftware.com/articles/amplia/on-premises/key-stores/capi"
locale: "pt-BR"
product: "Amplia"
last_updated: "2026-10-08"
---

# Armazenamento de chaves via CAPI

> **Observação**
>
> Os repositórios de chaves CAPI só são compatíveis com instalações em Windows Server.

A **Windows CryptoAPI (CAPI)** trabalha com diversos **Cryptographic Service Providers (CSPs)**, que fazem de fato o trabalho
de fornecer vários "serviços criptográficos", como o armazenamento de chaves. Dispositivos como HSMs (Hardware Security Modules)
e tokens criptográficos USB normalmente fornecem um CSP CAPI que pode ser usado para se comunicar com o dispositivo.

Cada CSP CAPI é identificado pelo seu *nome* e pelo seu *tipo*. Se estiver usando um HSM ou um token criptográfico, consulte a
documentação do dispositivo para encontrar o nome e o tipo do CSP.

Para configurar um repositório de chaves CAPI no Amplia, use as seguintes configurações:

* **Type**: `CAPI`
* **ProviderName**: nome do CSP
* **ProviderType**: tipo do CSP. Os valores válidos são:
	* **PROV_RSA_FULL**
	* PROV_RSA_SIG
	* PROV_DSS
	* PROV_FORTEZZA
	* PROV_MS_EXCHANGE
	* PROV_SSL
	* PROV_RSA_SCHANNEL
	* PROV_DSS_DH
	* PROV_EC_ECDSA_SIG
	* PROV_EC_ECNRA_SIG
	* PROV_EC_ECDSA_FULL
	* PROV_EC_ECNRA_FULL
	* PROV_DH_SCHANNEL
	* PROV_SPYRUS_LYNKS
	* PROV_RNG
	* PROV_INTEL_SEC
	* PROV_REPLACE_OWF
	* **PROV_RSA_AES**
* **ExportableKeys**: por padrão, as chaves são geradas marcadas como exportáveis. Para gerar chaves não exportáveis, defina esta configuração como `false`.
* **UseMachineStore**: alguns CSPs têm o conceito de armazenar as chaves no *repositório do usuário* (user store) ou no *repositório da máquina* (machine store) — o principal exemplo é o CSP nativo do Windows.
  Por padrão, é usado o repositório do usuário. Defina esta configuração como `true` para usar o repositório da máquina.
* **Pin**: o PIN do repositório, se necessário

Exemplo (arquivo de configuração *.ini* ou *.conf*):

```ini
[KeyStores:MyCapiKeyStore]
Type=Capi
ProviderName=...
ProviderType=PROV_RSA_FULL
```

Exemplo (variáveis de ambiente):

```sh
KeyStores__MyCapiKeyStore__Type=Capi
KeyStores__MyCapiKeyStore__ProviderName=...
KeyStores__MyCapiKeyStore__ProviderType=PROV_RSA_FULL
```

Exemplo (arquivo de configuração *.json*):

```json
"KeyStores": {
	...,
	"MyCapiKeyStore": {
		"Type": "Capi",
		"ProviderName": "...",
		"ProviderType": "PROV_RSA_FULL"
	},
	...
}
```

> **Dica**
>
> Se a documentação do HSM não deixar claro qual é o *tipo* do CSP, tente usar `PROV_RSA_FULL` ou `PROV_RSA_AES`.

## Repositórios de chaves CAPI comuns

Token criptográfico USB Safenet eToken:

```json
"CapiToken": {
	"Type": "Capi",
	"ProviderName": "eToken Base Cryptographic Provider",
	"ProviderType": "PROV_RSA_FULL",
	"Pin": "XXXX"
}
```

## Veja também

* [Repositórios de chaves](https://docs.lacunasoftware.com/articles/amplia/on-premises/key-stores)
* [Amplia on-premises](https://docs.lacunasoftware.com/articles/amplia/on-premises)
