사용자 정의 비밀번호 암호화의 플러그 지점 사용

두 개의 특성은 비밀번호의 보호를 관리합니다. 이러한 두 개의 특성을 구성하여 사용자 정의 비밀번호 암호화의 플러그인 포인트를 사용 가능으로 설정할 수 있습니다.

시작하기 전에

com.ibm.wsspi.security.crypto.CustomPasswordEncryption 인터페이스를 설명하는 예제 코드 샘플을 보려면 사용자 정의 비밀번호 암호화의 플러그 지점의 내용을 참조하십시오.

이 태스크 정보

암호화 메소드는 사용자 정의 클래스가 구성되고 사용자 정의 암호화가 사용 가능할 때마다 비밀번호 처리를 위해 호출됩니다. 복호화 메소드는 사용자 정의 클래스가 구성되고 비밀번호에 {custom:alias} 태그가 포함될 때마다 호출됩니다. custom:alias 태그는 복호화 이전에 제거됩니다.

프로시저

  1. 사용자 정의 비밀번호 암호화를 사용으로 설정하려면, 두 개의 특성을 구성해야 합니다.
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionClass - com.ibm.wsspi.security.crypto.CustomPasswordEncryption 비밀번호 암호화 인터페이스를 구현하는 사용자 정의 클래스를 정의합니다.
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled - 사용자 정의 클래스가 기본 비밀번호 처리에 사용되는 경우를 정의합니다. passwordEncryptionEnabled 옵션이 지정되지 않거나 false로 설정되고, passwordEncryptionClass 클래스가 지정되는 경우, 복호화 메소드는 {custom:alias} 태그가 구성 저장소에 여전히 존재할 때마다 호출됩니다.
  2. [AIX Solaris HP-UX Linux Windows][z/OS]사용자 정의 비밀번호 암호화를 구성하려면 server.xml 파일에 이들 특성을 모두 구성하십시오. 이 구성 수행 방법은 기존 디렉토리 구조에 따라 다릅니다. 이 구성을 수행하려면 다음 방법 중 하나를 선택하십시오.
    • ${WAS_INSTALL_ROOT}/classes 디렉토리에 있는 JAR(Java Archive) 파일에 사용자 정의 암호화 클래스(com.acme.myPasswordEncryptionClass)를 배치하십시오. 이 경우, ${WAS_INSTALL_ROOT}/classes 디렉토리를 이 용도로 작성했습니다.
      참고: WebSphere Application Server${WAS_INSTALL_ROOT}/classes 디렉토리를 작성하지 않습니다.
    • ${WAS_HOME}/lib/ext 디렉토리 또는 다른 유효한 기존 디렉토리에 상주하는 JAR(Java Archive) 파일에 사용자 정의 암호화 클래스(com.acme.myPasswordEncryptionClass)를 배치하십시오.
    비밀번호가 포함된 모든 구성 문서(security.xml 및 RunAs 비밀번호가 들어 있는 모든 애플리케이션 바인딩)는 모든 비밀번호가 사용자 정의 암호화 클래스로 암호화되기 전에 저장되어야 합니다.
  3. [IBM i]사용자 정의 암호 암호화를 구성하려면 security.xml 파일에 이러한 특성을 모두 구성하십시오. 사용자 정의 암호화 클래스(com.acme.myPasswordEncryptionClass)는 모든 WebSphere Application Server 프로세스의 ${APP_SERVER_ROOT}/classes 디렉토리에 있는 JAR(Java™ Archive) 파일에 배치되어야 합니다. 비밀번호가 포함된 모든 구성 문서(security.xml 및 RunAs 비밀번호가 들어 있는 모든 애플리케이션 바인딩)는 모든 비밀번호가 사용자 정의 암호화 클래스로 암호화되기 전에 저장되어야 합니다. sas.client.propssoap.client.props와 같은 클라이언트측 특성 파일의 경우, PropFilePasswordEncoder.bat 또는 PropFilePasswordEncode.sh 스크립트를 사용하여 사용자 정의 처리를 사용 가능하게 하십시오. 이 스크립트에는 스크립트의 Java 명령행에서 시스템 특성으로 구성된 두 개의 특성이 있어야 합니다. 암호화 및 복호화를 위해 사용되는 동일한 도구가 사용자 정의 비밀번호 암호화가 사용 가능하게 설정될 때 암호화 및 복호화를 위해 사용될 수 있습니다.
  4. 사용자 정의 구현 클래스가 com.ibm.wsspi.security.crypto.CustomPasswordEncryptionImpl 인터페이스로 기본 설정되고 이 클래스가 클래스 경로에 존재하는 경우, 암호화가 기본적으로 사용됩니다. 이는 모든 노드에 대한 인에이블먼트 프로세스를 단순화합니다. 사용자 정의 구현이 요구하는 특성을 제외하고 기타 특성을 정의하는 것은 필요하지 않습니다. 암호화를 사용 안함으로 설정하지만, 여전히 복호화를 위한 이 클래스를 사용하려면, 다음 클래스를 지정하십시오.
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled=false

다음에 수행할 작업

사용자 정의 암호화 클래스 암호화 오퍼레이션이 호출되고 런타임 예외 또는 정의된 PasswordEncryptException 예외를 작성할 때마다, WebSphere Application Server 런타임은 {xor} 알고리즘을 사용하여 비밀번호를 인코딩합니다. 이 인코딩은 비밀번호가 일반 텍스트로 저장되지 않도록 합니다. 사용자 정의 클래스의 문제점이 해결된 후 다음에 구성 문서가 저장될 때 자동으로 비밀번호를 암호화합니다.

RunAs 역할이 사용자 ID 및 비밀번호로 지정될 때, 현재 WebSphere Application Server 인코딩 함수를 사용하여 인코딩됩니다. 따라서, 사용자 정의 플러그 포인트가 비밀번호를 암호화하도록 구성된 후 RunAs 바인딩에 대한 비밀번호도 암호화합니다. 배치된 애플리케이션이 동일한 암호화 키를 갖지 않는 셀로 이동되거나 사용자 정의 암호화가 아직 사용되지 않는 경우, 비밀번호를 읽을 수 없기 때문에 로그인에 실패합니다.

사용자 정의 비밀번호 암호화 구현의 책임 중 하나는 암호화 키를 관리하는 것입니다. 이 클래스는 암호화한 모든 비밀번호를 복호화해야 합니다. 비밀번호를 복호화하는 데 실패한 모든 경우 해당 비밀번호를 재사용 불가능한 것으로 렌더링하고 비밀번호가 구성에서 변경되어야 합니다. 모든 암호화 키는 복호화에 사용 가능하고 해당 키를 사용하는 비밀번호가 남지 않아야 합니다. 암호화 키를 보호하기 위해 사용자 정의 비밀번호 암호화 클래스가 마스터 기밀을 유지보수해야 합니다.

키 저장소에 대한 숨김 파일을 사용하거나 사용자 정의 암호화 클래스를 사용하는 비밀번호 위치 지정자를 사용하여 잠길 수 있도록 비밀번호를 찾아서 마스터 기밀을 관리할 수 있습니다.


주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_plugpoint_custpass_encrypt
파일 이름:tsec_plugpoint_custpass_encrypt.html