키 저장소
Liberty는 JKS(Java™ Keystore)의 키 저장소 유형만 작성할 수 있습니다. Liberty에서 기타 키 저장소 유형에 대한 지원은 기본 JRE(Java Runtime Environment)가 무엇을 지원하는지에 따라 다를 수 있습니다.
keystore 요소의 구성 속성에 대한 자세한 정보는 SSL 구성 속성의 내용을 참조하십시오.
JKS 및 JCEKS
JKS(Java Keystore) 및 JCEKS(Java Cryptography Extensions Keystore)는 IBM JRE와 Oracle JRE 사이의 공통 부분이며, 하나의 JRE를 사용하여 동일하게 구성될 수 있습니다. JKS는 Liberty의 기본 키 저장소 유형이며, Liberty가 작성할 수 있는 유일한 키 저장소 유형입니다. 구성에서 키 저장소 유형이 지정되자 않은 경우 JKS가 사용됩니다.
<keyStore id="sampleJKSKeyStore"
location="MyKeyStoreFile.jks"
type="JKS" password="myPassword" />
<keyStore id="sampleJCEKSKeyStore"
location="MyKeyStoreFile.jceks"
type="JCEKS" password="myPassword" />
PKCS11 키 저장소
Liberty 서버를 사용하여 암호화 토큰 지원을 제공할 수 있도록 하드웨어 암호화 키 저장소를 구성할 수 있습니다.
name = HWDevice
library = /opt/foo/lib/libpkcs11.so
name 속성은 디바이스의 이 인스턴스에 제공 중인 이름입니다. library 속성에는 디바이스에 액세스하기 위해 하드웨어 디바이스가 제공하는 라이브러리의 경로가 포함되어 있습니다. 구성 파일에는 하드웨어 디바이스에 고유한 구성 데이터도 포함될 수 있습니다.
- id - 구성에서 keystore 요소를 고유하게 식별합니다.
- location - 하드웨어 디바이스 특정 구성 파일의 경로입니다.
- type - PKCS11이 키 저장소 유형으로 지정되어야 합니다.
- fileBased - 키 저장소를 디바이스로 식별하려면 false여야 합니다.
- password - 디바이스에서 키에 액세스하기 위해 필요한 비밀번호입니다.
- provider - 필요한 제공자입니다. IBM® JRE의 경우에는 값이 IBMPKCS11Impl이어야 하고 Oracle JRE의 경우에는 값이 SunPKCS11이어야 합니다.
<keyStore id="hwKeyStore"
location="${server.config.dir}/HWCrypto.cfg"
type="PKCS11"
fileBased="false"
password="{xor}Lz4sLCgwLTs="
provider="IBMPKCS11Impl"/>
PKCS12 키 저장소
<keyStore id="samplePKCS12KeyStore"
location="MyKeyStoreFile.p12"
type="PKCS12" password="myPassword" />
CMS 키 저장소
security.provider.1=com.ibm.jsse2.IBMJSSEProvider2
security.provider.2=com.ibm.crypto.provider.IBMJCE
security.provider.3=com.ibm.security.jgss.IBMJGSSProvider
security.provider.4=com.ibm.security.cert.IBMCertPath
security.provider.5=com.ibm.security.sasl.IBMSASL
security.provider.6=com.ibm.xml.crypto.IBMXMLCryptoProvider
security.provider.7=com.ibm.xml.enc.IBMXMLEncProvider
security.provider.8=org.apache.harmony.security.provider.PolicyProvider
security.provider.9=com.ibm.security.jgss.mech.spnego.IBMSPNEGO
security.provider.10=com.ibm.security.cmskeystore.CMSProvider
<keyStore id="sampleCMSKeyStore"
password="myPassword"
location="MyKeyStoreFile.kdb"
provider="IBMCMSProvider"
type="CMSKS"/>

RACF 키 링 유형
z/OS®에서 키 저장소로서 RACF® 키 링이 사용될 수 있지만, 이는 Liberty에 의해 작성되지 않습니다. 사용 가능한 두 개의 키 링 유형은 JCERACFKS 및 JCEHYBRIDRACFKS입니다.
- JCERACFKS 키 저장소
- JCERACFKS는 RACF 키 링 유형입니다. Liberty가 RACF를 사용할 수 있으려면, 우선 이를 설정해야 합니다. location 속성의 키 링에 대한 URL을 제공하고 fileBased 속성을 false로 설정하십시오.
- JCERACFKS 키 저장소 사용의 예는 다음과 같습니다.
<keyStore id="sampleKeyring" location="safkeyring:///Keyring" type="JCERACFKS" password="password" fileBased="false" readOnly="true" />
- JCEHYBRIDRACFKS 키 저장소
- JCEHYBRIDRACFKS는 하드웨어 키 저장소 유형이 구성되는지 여부를 검사하는 특수 키 링입니다. JCEHYBRIDRACFKS 키 저장소가 구성되지 않은 경우 RACF 키 링이 사용됩니다. 이는 IBM Java 7 SR3 이상에서 지원됩니다. java.security 파일을 편집하고 com.ibm.crypto.ibmjcehybrid.provider.IBMJCEHYBRID 클래스를 제공자 목록의 맨 위에 추가해야 합니다. 제공자 번호가 새 항목에 대해 조정되는지 확인하십시오.
- JCEHYBRIDRACFKS 키 저장소 사용의 예는 다음과 같습니다.
<keyStore id="sampleHybridKeyring" location="safkeyringhybrid:///HybridKeyring" type="JCEHYBRIDRACFKS" password="{xor}Lz4sLCgwLTs=" fileBased="false" readOnly="true" />