Armazenamento de chaves via CAPI
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
truepara usar o repositório da máquina. - Pin: o PIN do repositório, se necessário
Exemplo (arquivo de configuração .ini ou .conf):
[KeyStores:MyCapiKeyStore]
Type=Capi
ProviderName=...
ProviderType=PROV_RSA_FULL
Exemplo (variáveis de ambiente):
KeyStores__MyCapiKeyStore__Type=Capi
KeyStores__MyCapiKeyStore__ProviderName=...
KeyStores__MyCapiKeyStore__ProviderType=PROV_RSA_FULL
Exemplo (arquivo de configuração .json):
"KeyStores": {
...,
"MyCapiKeyStore": {
"Type": "Capi",
"ProviderName": "...",
"ProviderType": "PROV_RSA_FULL"
},
...
}
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:
"CapiToken": {
"Type": "Capi",
"ProviderName": "eToken Base Cryptographic Provider",
"ProviderType": "PROV_RSA_FULL",
"Pin": "XXXX"
}