예: Microsoft Certificate Store 구성 파일

이 파일 예에서는 IBM® Engineering Requirements Management DOORS®(DOORS)에서 사용할 서버 키 저장소 및 서버 루트 인증서를 작성하는 방법과 서버 인증서의 유효성을 검증하도록 MCS(Microsoft Certificate Store)를 설정하는 방법을 보여줍니다. 예제 파일 뒤에는 명령 및 매개변수에 대한 설명이 있습니다.

예제 파일

REM Create a server keystore file
gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash

REM Create a server root certificate in server.kdb, and add it to the 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 Create and sign a server certificate
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 Extract the root certificate from the MCS and add it to the server kdb file
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

서버 키 저장소 파일 작성

gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash
gsk8capicmd -keydb -create
gsk8capicmd 명령은 키 데이터베이스에 있는 키, 인증서 및 인증서 요청을 관리하기 위한 도구입니다. gsk8capicmd의 구문은 gsk8capicmd modifiers object action options입니다. 이 예제에서 -keydbobject, -create는 취할 action, -dboption입니다. 이 명령은 키 데이터베이스를 작성합니다.
-db server.kdb -pw ser123
비밀번호(-pwd)가 있는, 이름이 server.kdb인 키 데이터베이스를 작성합니다. 이 예제에서 이 비밀번호는 ser123입니다.
-stash
키 데이터베이스 작성 후 이 데이터베이스의 비밀번호를 스태쉬 파일에 저장합니다. 스태쉬 파일은 비밀번호 자동 제공 방법으로 사용됩니다. 키 데이터베이스에 액세스하면 시스템은 먼저 스태쉬 파일의 유무를 확인합니다. 스태쉬 파일이 있는 경우에는 이 파일의 컨텐츠가 복호화되어 비밀번호에 대한 입력으로 사용됩니다. 작성 조치 중에 -stash 태그가 지정되면 이름이 key_database_name.sth인 파일에 비밀번호가 저장됩니다.

키 저장소에 루트 인증서를 작성하고 이를 MCS에 추가

루트 인증서는 서버 인증서를 작성하는 데 사용됩니다. 루트 인증서가 MCS에 있으므로 DOORS 클라이언트는 MCS를 사용하여 서버 인증서를 유효성 검증할 수 있습니다.
gsk8capicmd -cert -create -db server.kdb -pw ser123 -label "IBMEDCA1" -dn "CN=IBMEDCA1"
-cert -create
이 명령은 create certificate 명령입니다(-create 조치 및 -cert 오브젝트).
-label "IBMEDCA1"
인증서에 레이블이 연결됩니다. 이 예제에서 이 이름은 "IBMEDCA1"입니다. 이 레이블은 사용자가 인증서를 고유하게 식별하는 데 사용됩니다.
-dn "CN=IBMEDCA1"
-dn 식별 이름은 인증서를 고유하게 식별합니다. 입력은 다음 형식의 따옴표로 묶인 문자열이어야 합니다(CN만 필수).
  • CN=공통 이름
  • O=조직
  • OU=조직 단위
  • L=위치
  • ST=시/도
  • C=국가
  • DC=도메인 컴포넌트
  • EMAIL=이메일 주소
이 예제에서 이 식별 이름은 "CN=IBMEDCA1"입니다.
gsk8capicmd -cert -extract -db server.kdb -pw ser123 -label "IBMEDCA1" -target temp1.arm
-cert -extract -label "IBMEDCA1"
이 명령은 extract certificate 명령입니다(-extract 조치 및 -cert 오브젝트). 이 명령은 키 데이터베이스로부터 지정된 인증서 데이터(-label"IBMEDCA1")를 추출하여 파일에 저장합니다.
-target temp1.arm
인증서를 추출하여 저장할 파일입니다.
gsk8capicmd -cert -add -db GSK_MS_CERTIFICATE_STORE -label "IBMEDCA1" -file temp1.arm
-cert -add -db GSK_MS_CERTIFICATE_STORE
이 명령은 add certificate 명령입니다(-add 조치 및 -cert 오브젝트). 이 명령은 추출된 인증서(-label"IBMEDCA1" -file temp1.arm)를 MCS(-db GSK_MS_CERTIFICATE_STORE)에 추가합니다.

루트 인증서로 서명된 서버 인증서 작성

서버 인증서는 키 저장소에 저장되어 있습니다. 이 예제에서는 IBMEDSERV라는 컴퓨터에서 실행되는 서버의 식별 이름이 기록되어 있습니다.
gsk8capicmd -certreq -create -db server.kdb -label IBMSV1 -dn "CN=IBMEDSERV,dc=ukednode1" -file temp2.arm
-certreq -create
이 명령은 create certificate request 명령입니다(-create 조치 및 -certreq 오브젝트).
-label IBMSV1
인증서에 레이블이 연결됩니다. 이 예제에서 이 이름은 IBMSV1입니다. 이 레이블은 사용자가 인증서를 고유하게 식별하는 데 사용됩니다. IBMSV1은 서버가 시작될 때 이름이 지정되지 않은 경우 DOORS 서버가 사용하는 기본 인증서 이름입니다.
-dn "CN=IBMEDSERV,dc=ukednode1"
-dn 식별 이름은 인증서를 고유하게 식별합니다. 이 예제에서 이 식별 이름은 "CN=IBMEDSERV,dc=ukednode1"입니다.
참고: 식별 이름의 IBMEDSERV 부분은 서버의 이름이거나 -serverhostname에 사용된 값(서버가 시작될 때 이 옵션이 사용된 경우)입니다.
-file temp2.arm
인증서 요청 작성 프로세스 중에 인증서 요청이 추출되어 저장되는 파일 이름입니다.
gsk8capicmd -cert -sign -db server.kdb -pw ser123 -label IBMEDCA1 -file temp2.arm -target temp3.arm
-cert -sign
이 명령은 sign certificate 명령입니다(-sign 조치 및 -cert 오브젝트). 이 명령은 키 데이터베이스에 저장된 기존 인증서가 인증서 요청에 서명할 수 있도록 합니다. 이 명령은 지정된 파일 형식으로 되어 있는 인증서 요청 및 서명 프로세스 중에 사용될 개인 키를 포함하는 인증서의 세부사항을 수락합니다.
-file temp2.arm
서명될 인증서 요청의 이름 및 위치입니다.
-target temp3.arm
서명된 인증서를 포함할 파일의 이름입니다.
gsk8capicmd -cert -receive -file temp3.arm -db server.kdb -pw ser123
-cert -receive
이 명령은 receive certificate 명령입니다(-receive 조치 및 -cert 오브젝트). 이 명령은 인증서 요청에 서명하기 위해 요청된 인증서를 저장합니다. 수신할 인증서의 파일 이름입니다.
-file temp3.arm
수신할 인증서의 파일 이름입니다.

MCS에서 인증서의 루트 인증서를 복사하여 서버 키 저장소에 추가

이 예제 부분은 서버가 인증서를 유효성 검증할 수 있도록 합니다.
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
이 명령은 extract certificate 명령입니다(-extract 조치 및 -cert 오브젝트). 이 명령은 MCS 데이터베이스(-db GSK_MS_CERTIFICATE_STORE)로부터 지정된 인증서 데이터(-label"CN=Coy Root")를 추출하여 파일(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
이 명령은 add certificate 명령입니다(-add 조치 및 -cert 오브젝트). 이 명령은 지정된 키 저장소에 인증서를 추가합니다.
참고: 이러한 명령에서 루트 인증서 이름은 CN=Coy Root입니다. 사용자가 사용하는 루트 인증서의 이름은 더 깁니다. 또한 조직에서 둘 이상의 루트 인증서를 사용하는 경우에는 각 루트 인증서를 개별적으로 추출하여 추가해야 합니다. 예를 들면, 한 루트 인증서는 500명의 사용자가 사용하는 카드에 적용되고, 다른 루트 인증서는 나머지 2000명의 사용자에게 적용될 수 있습니다. 이 경우에는 이러한 루트 인증서를 모두 server.kdb에 추가해야 합니다.

비디오 아이콘 비디오

Jazz.net 채널
소프트웨어 교육 채널

학습 아이콘 교육 과정

IoT 아카데미
스킬 게이트웨이

질문 아이콘 커뮤니티

Jazz.net
Jazz.net 포럼
Jazz.net 라이브러리

지원 아이콘 지원

IBM 지원 센터 커뮤니티
배치 위키