SAML에 대해 자체 서명된 BCFKS 키 스토어 생성
다중 제공자 SSO 플러그인 내에서 SAML 서명 및 암호화 작업에 사용할 FIPS 140-2 준수 자체 서명된 BCFKS 키 스토어를 생성합니다.
시작하기 전에
필요한 역할: sso_config_admin, business_rule_admin, script_include_admin
다음을 따르십시오.
- 컴퓨터에 Java를 설치하고 터미널에서 액세스할 수 있는 주요 도구 명령줄 도구(또는 Windows 컴퓨터에서 실행하는 경우 "명령 프롬프트")를 설치합니다.
- 다음 단계를 수행하여 ID 페더레이션 및 1회 사용자 인증(SSO) 구현에 대한 연방 보안 요구사항을 충족하는 FIPS 승인 암호화 알고리즘(예: SHA-256과 페어링된 RSA 2048비트 이상)을 사용하여 키 저장소를 만듭니다.
프로시저
-
FIPS 제공자 라이브러리를 다운로드합니다.
주:
최신 버전 bc-fips-2.1.0.jar 사용하십시오. 최신 버전을 사용해야 합니다.
-
FIPS 준수 키 저장소 및 인증서를 생성합니다.
-
다음 키 도구 명령을 실행하여 자체 서명된 인증서 및 키 스토어를 생성합니다.
표 1. 키 도구 명령 Linux/macOS에서 실행 Windows에서 실행 중: keytool -genkeypair \ -providername BCFIPS \ -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider \ -providerpath <path_to_bc-fips-<version>>.jar \ -alias <key_alias> \ -keyalg RSA \ -keysize <key_size> \ -keystore <keystore_name>.bcfks \ -validity <validity> \ -storetype BCFKS \ -storepass <keystore_password>keytool -genkeypair ^ -providername BCFIPS ^ -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider ^ -providerpath <path_to_bc-fips-<version>>.jar ^ -alias <key_alias> ^ -keyalg RSA ^ -keysize <key_size> ^ -keystore <keystore_name>.bcfks ^ -validity <validity> ^ -storetype BCFKS ^ -storepass <keystore_password> -
자리 표시자 (<...>) 를 적절한 값으로 바꿉니다.
<path_to_bc-fips-<version>>.jar:bc-fips-<version의 경로>.jar<key_alias>: 키 쌍의 별칭<key_size>: 2048 또는 4096<keystore_name>.bcfks: 키 저장소에 원하는 파일 이름<유효 기간>: 만료일(일)<keystore_password>: 키 저장소의 암호
-
프롬프트에 따라 인증서에 대한 추가 DN(고유 이름) 상세 정보를 입력합니다.
주:키(별명)의 암호에 대한 프롬프트가 표시되면 Enter 또는 Return 키를 눌러 키 저장소에 사용한 것과 동일한 암호를 사용합니다. 다른 암호를 입력하지 마십시오.
-
키 별칭과 키 스토어 암호를 안전하게 저장합니다.
다음과 같은 경우 이러한 자격 증명을 제공합니다.
- 이 키 스토어에 대한 sys_certificate 기록을 작성하는 중입니다.
- 서명 키 또는 암호화 키 별칭 및 암호를 제공하도록 SAML 신원 확인 제공자 구성
주:키 암호는 생성 중에 지정된 키 저장소 암호와 동일합니다. SAML ID 제공자에 대한 서명 또는 암호화를 구성할 때 동일한 암호를 사용합니다.
-
다음 키 도구 명령을 실행하여 자체 서명된 인증서 및 키 스토어를 생성합니다.
-
인증서 체인을 추출합니다.
표 2. 키 도구 명령 Linux/macOS에서 실행 Windows에서 실행 중: keytool -exportcert \ -provider org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider \ -providerpath <path_to_bc-fips-<version>>.jar \ -storetype BCFKS \ -keystore <keystore_name>.bcfks \ -storepass <keystore_password> \ -alias <key_alias> \ -rfc \ -file <file_name>.cerkeytool -exportcert ^ -provider org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider ^ -providerpath <path_to_bc-fips-<version>>.jar ^ -storetype BCFKS ^ -keystore <keystore_name>.bcfks ^ -storepass <keystore_password> ^ -alias <key_alias> ^ -rfc ^ -file <file_name>.cer자리 표시자 (<...>) 를 적절한 값으로 바꿉니다.<path_to_bc-fips-<version>>.jar:bc-fips-<version의 경로>.jar<keystore_name>.bcfks: 이전 단계에서 제공된 키 저장소 파일 이름<keystore_password>: 이전 단계에서 제공된 키 저장소 암호<key_alias>: 이전 단계에서 제공된 키 별칭<file_name>.cer: PEM 형식의 추출한 인증서에 필요한 파일 이름
-
sys_certificate 테이블에 기록을 생성합니다.
- ServiceNow AI Platform에 로그인합니다.
- 다음으로 이동 모두 > 복수 제공자 SSO > 관리 > x509 인증서.
- 새로 만들기를 클릭하여 기록을 생성합니다.
- 유형으로 BCFKS 키 스토어 를 선택합니다.
-
생성된 BCFKS 키 저장소 파일(<keystore_name>.bcfks)을 첨부합니다.
주:인증서 만료 알림을 구성하려면 만료 시 알림 및 만료 시 알리는 그룹 및 경고를 사용하여 알림 타이밍을 설정하십시오( 만료까지 남은 일) 및 빈도.
- 키 스토어 생성 중에 제공된 키 스토어 암호를 포함하여 기타 필수 필드를 채웁니다.
- 스토어 /인증서 확인 관련 링크를 클릭하여 키 스토어가 유효한지 확인합니다.
- 이 기록의 sys_id 복사합니다.