Esse arquivo de exemplo mostra como criar um keystore de servidor e um certificado raiz de servidor para usar com um Rational DOORS e como o Armazenamento de Certificado Microsoft (MCS) pode ser configurado para validar o certificado do servidor. O arquivo de exemplo é seguido por um detalhamento dos comandos e parâmetros.
Arquivo de Exemplo
REM Criar um arquivo keystore do servidor
gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash
REM Criar um certificado raiz do servidor em server.kdb e incluí-lo no MCS
gsk8capicmd -cert -create -db server.kdb -pw ser123 -label "IBMEDCA1" -dn "CN=IBMEDCA1"
gsk8capicmd -cert -extract -db server.kdb -pw ser123 -label "IBMEDCA1" -target temp1.arm
gsk8capicmd -cert -add -db GSK_MS_CERTIFICATE_STORE -label "IBMEDCA1" -file temp1.arm
REM Criar e assinar um certificado do servidor
gsk8capicmd -certreq -create -db server.kdb -label IBMSV1 -dn "CN=IBMEDSERV,dc=ukednode1" -file temp2.arm
gsk8capicmd -cert -sign -db server.kdb -pw ser123 -label IBMEDCA1 -file temp2.arm -target temp3.arm
gsk8capicmd -cert -receive -file temp3.arm -db server.kdb -pw ser123
REM Extrair o certificado raiz do MCS e incluí-lo no arquivo kdb do servidor
gsk8capicmd -cert -extract -db GSK_MS_CERTIFICATE_STORE -label "CN=Coy Root" -target temp4.arm
gsk8capicmd -cert -add -db server.kdb -pw ser123 -label "CN=Coy Root" -file temp4.arm
Criar um Arquivo Keystore do Servidor
gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash
- gsk8capicmd -keydb -create
- O comando gsk8capicmd é uma ferramenta para gerenciar chaves, certificados e solicitações de certificado em um banco de dados de chaves. A sintaxe para gsk8capicmd é: gsk8capicmd modifiers object action options.
Nesse exemplo, -keydb é um banco de dados de chaves object, -create é a ação a tomar e -db é a opção. O comando cria um banco de dados de chaves.
- -db server.kdb -pw ser123
- O banco de dados de chaves é chamado server.kdb com uma senha (-pwd). Nesse exemplo, a senha é ser123.
- -stash
- Armazene a senha em arquivo stash para o banco de dados de chaves após a criação. Um arquivo stash é usado como uma maneira automática de fornecimento de uma senha. Ao acessar um banco de dados de chaves, o sistema primeiro verifica a existência de um arquivo stash. Se algum existir, o conteúdo do arquivo é decriptografado e usado como entrada para a senha. Quando a tag -stash é especificada durante a ação de criação, a senha é armazenada em arquivo stash em um arquivo chamado: key_database_name.sth.
Criar um Certificado Raiz no Keystore e Incluí-lo no MCS
O certificado raiz e usado para criar um certificado do servidor. Como o certificado raiz está no MCS, os clientes do Rational DOORS podem validar o certificado do servidor usando o MCS.
gsk8capicmd -cert -create -db server.kdb -pw ser123 -label "IBMEDCA1" -dn "CN=IBMEDCA1"
- -cert -create
- Esse é o comando create certificate (ação -create e objeto -cert).
- -label "IBMEDCA1"
- Um rótulo é anexado no certificado. Nesse exemplo, o nome é ser123. O rótulo é usado para identificar exclusivamente o certificado por um usuário.
- -dn "CN=IBMEDCA1"
- O nome distinto -dn identifica exclusivamente o certificado. A entrada deve ser uma sequência de caracteres entre aspas do seguinte formato (somente o CN é obrigatório):
- CN=nome comum
- O=organização
- OU=unidade de organização
- L=local
- ST=estado, município
- C=país
- DC=componente do domínio
- EMAIL=endereço de email
Nesse exemplo, o nome distinto é "CN=IBMEDCA1".
gsk8capicmd -cert -extract -db server.kdb -pw ser123 -label "IBMEDCA1" -target temp1.arm
- -cert -extract -label "IBMEDCA1"
- Esse é o comando extract certificate (ação -extract e objeto -cert). O comando extrai os dados do certificado nomeado (-label"IBMEDCA1") do banco de dados de chaves e o coloca em um arquivo.
- -target temp1.arm
- O arquivo para o qual o certificado será extraído.
gsk8capicmd -cert -add -db GSK_MS_CERTIFICATE_STORE -label "IBMEDCA1" -file temp1.arm
- -cert -add -db GSK_MS_CERTIFICATE_STORE
- Esse é o comando add certificate (ação -add e objeto -cert). O comando inclui o certificado que foi extraído (-label"IBMEDCA1" -file temp1.arm) para o MCS (-db GSK_MS_CERTIFICATE_STORE).
Criar um Certificado do Servidor que Seja Assinado com o Certificado Raiz
O certificado do servidor é armazenado no keystore.
No exemplo, o nome distinto é gravado para um servidor que executa em um computador chamado
IBMEDSERV.
gsk8capicmd -certreq -create -db server.kdb -label IBMSV1 -dn "CN=IBMEDSERV,dc=ukednode1" -file temp2.arm
- -certreq -create
- Esse é o comando create certificate request (ação -create e objeto -certreq).
- -label IBMSV1
- Um rótulo é anexado no certificado. Nesse exemplo, o nome é IBMSV1. O rótulo é usado para identificar exclusivamente o certificado por um usuário. IBMSV1 é o nome do certificado padrão que é usado pelo servidor Rational DOORS se um nome não for especificado quando o servidor iniciar.
- -dn "CN=IBMEDSERV,dc=ukednode1"
- O nome distinto -dn identifica exclusivamente o certificado. Nesse exemplo, o nome distinfo é "CN=IBMEDSERV,dc=ukednode1".
Nota: A parte IBMEDSERV do nome distinto deve ser o nome do servidor ou o valor que é usado para -serverhostname se essa opção for usada quando o servidor foi iniciado.
- -file temp2.arm
- O nome do arquivo para o qual a solicitação de certificado é extraída durante o processo de criação de solicitação de certificado.
gsk8capicmd -cert -sign -db server.kdb -pw ser123 -label IBMEDCA1 -file temp2.arm -target temp3.arm
- -cert -sign
- Esse é o comando sign certificate (ação -sign e objeto -cert). O comando permite a assinatura de uma solicitação de certificado por um certificado existente que é armazenado dentro de um banco de dados de chaves. O comando aceita uma solicitação de certificado em um formato de arquivo especificado e detalhes do certificado que contém a chave privada a ser usada durante o processo de assinatura.
- -file temp2.arm
- O nome e local da solicitação de certificado a ser assinado.
- -target temp3.arm
- O nome do arquivo que conterá o certificado assinado.
gsk8capicmd -cert -receive -file temp3.arm -db server.kdb -pw ser123
- -cert -receive
- Esse é o comando receive certificate (ação -receive e objeto -cert). O comando armazena um certificado que foi solicitado para assinar uma solicitação de certificado. O nome do arquivo do certificado que será recebido.
- -file temp3.arm
- O nome do arquivo do certificado que será recebido.
Copiar o Certificado Raiz para Certificados do MCS e Incluí-lo no Arquivo keystore do Servidor
Essa parte do exemplo permite que o servidor valide os certificados.
gsk8capicmd -cert -extract -db GSK_MS_CERTIFICATE_STORE -label "CN=Coy Root" -target temp4.arm
- -cert -extract -db GSK_MS_CERTIFICATE_STORE -label -"CN=Coy
Root" target temp4.arm
- Esse é o comando extract certificate (ação -extract e objeto -cert). O comando extrai os dados de certificado nomeados (-label"CN=Coy Root") do banco de dados MCS (-db GSK_MS_CERTIFICATE_STORE) e o coloca em um arquivo (temp4.arm).
gsk8capicmd -cert -add -db server.kdb -pw ser123 -label "CN=Coy Root" -file temp4.arm
- -cert -add -label "CN=Coy Root" -file temp4.arm
- Esse é o comando add certificate (ação -add e objeto -cert). O comando inclui um certificado para o keystore nomeado.
Nota: Nesses comandos, o nome do certificado raiz é CN=Coy Root. O certificado raiz que você usa terá um nome mais longo. Também, se a sua organização usar mais de um certificado raiz, você deve extrair e incluir cada certificado raiz individualmente. Por exemplo, um certificado raiz pode se aplicar aos cartões usados por 500 usuários, e outro certificado raiz pode se aplicar aos 2000 usuários restantes. Nesse caso, você deve incluir ambos os certificados raiz server.kdb.