RSA 토큰 인증 메커니즘
RSA(Rivest Shamir Adleman) 인증 메커니즘은 융통성 있는 관리 토폴로지에 대한 보안 환경을 단순화하는 데 사용됩니다. 이는 새 서버를 융통성 있는 관리 토폴로지에 안전하고 쉽게 등록하는 기능을 지원합니다. 융통성있는 관리 토폴로지를 사용하면 로컬 또는 원격으로 애플리케이션을 관리, 제품 유지보수 수행, 구성 수정, 애플리케이션 서버 런타임 제어를 사용하여 관리 작업을 로컬 또는 원격으로 제출 및 관리할 수 있습니다. RSA 인증 메커니즘은 관리 커넥터 및 파일 전송 요청과 같은 서버 대 서버 관리 인증에만 사용됩니다. RSA 인증 메커니즘은 애플리케이션에서 사용되는 LTPA 또는 Kerberos를 대체하지는 않습니다.
인증은 특정 컨텍스트에서 청구 클라이언트 또는 청구 대상 설정 프로세스입니다. 클라이언트는 일반 사용자, 머신, 애플리케이션이 될 수 있습니다. WebSphere® Application Server의 인증 메커니즘은 일반적으로 사용자 레지스트리와 밀접하게 협업합니다. 사용자 레지스트리는 인증 메커니즘이 인증 수행 시 참조하는 사용자 및 그룹 계정 저장소입니다. 인증 메커니즘은 성공적으로 인증된 클라이언트 사용자의 내부 제품 표시인 신임 정보를 작성해야 합니다. 모든 신임 정보가 동등하게 작성되지는 않습니다. 신임 정보의 기능은 구성된 인증 메커니즘에 의해 판별됩니다.
인증 프로세스
RSA 토큰 인증 메커니즘은 RSA 루트 서명자 인증서(15년의 사용 기간)가 두 관리 프로세스에서 교환된 후 관리 요청에 대해 다른 프로파일 사이에서 보안 정보를 동기화할 필요가 없도록 합니다. RSA 개인 인증서(1년의 사용 기간)는 RSA 토큰에서 암호화 조작을 수행하는 데 사용되며 장기 RSA 루트에서 확인 가능합니다. RSA 토큰 인증은 키가 공유되며 하나가 변경되면 다른 모두가 변경되어야 하는 LTPA와는 다릅니다. RSA 토큰 인증이 PKI 인프라를 기반으로 하기 때문에 큰 토폴로지에서 이 토폴로지의 확장가능성과 관리가능성의 혜택을 얻을 수 있습니다.
RSA 토큰에는 LTPA보다 더 많은 고급 보안 기능이 포함됩니다. 여기에는 1회용 토큰, 단기 만기 기간(1회용 토큰이기 때문에), 신뢰와 같은 난스(nonce) 값을 포함하며 이는 대상 RSA 신뢰 저장소의 인증서를 기반으로 설정됩니다.
- 버전
- 난스(nonce)
- 만기
- 영역
- 프린시펄
- 액세스 ID
- 역할(현재는 사용되지 않음)
- 그룹
- 사용자 정의 데이터
import com.ibm.websphere.security.cred.WSCredential;
java.util.Properties props = new java.util.Properties();
props.setProperty("myAttribute", "myValue");
WSCredential.put ("customRSAProperties", props);
주제(Subject)가 대상 프로세스에서 작성되면 다음과 같은 방식으로
이 속성에 대한 액세스를 확보할 수 있습니다. java.util.Properties props = (java.util.Properties) WSCredential.get("customRSAProperties");
이 데이터는 대상 측의 해시 테이블에 배치되며 해시 테이블은 RSA 토큰의 동일 속성을 포함하는 대상에서 주제(Subject)를 확보하는 JAAS(Java™ Authentication and Authorization Service)로 로그인에서 사용됩니다. RSA 토큰의 동일 속성을 포함하는 대상으로 대상에서 사용되는 동일한 영역에서가 아닌 대상 측에 주제(Subject)를 가질 수 있습니다. 이 권한 부여가 성공하려면 상호 영역 맵핑이 ID가 신뢰 서버 ID인 경우를 제외하고는 관리 권한 테이블 내에 필요합니다.
이 절의 나중에 있는 그림은 RSA 토큰 인증 메커니즘의 개요이며 요청이 클라이언트로 사용되는 서버(server-as-client)에서 대상으로 전송될 때 발생하는 프로세스를 설명합니다. 클라이언트로 사용되는 서버에는 RSA 토큰 작성 입력으로 사용되는 스레드에 관리 주제(Subject)가 포함됩니다. 필요한 다른 정보는 대상 서버의 RSA 공개 인증서입니다. 이 인증서는 실제 요청을 전송하기 전에 대상 프로세스에 대한 "부트스트랩" MBean 요청을 작성하여 검색해야 합니다. 대상 부트스트랩 요청은 대상 프로세스에서 공개 인증서를 검색합니다. RSA 토큰을 작성할 때 대상의 공개 인증서를 가져오는 기본 목적은 비밀 키를 암호화하기 위해서입니다. 대상은 비밀 키를 복호화할 수 있으며 이는 사용자 데이터 암호화에 사용됩니다.

클라이언트의 개인 키는 비밀 키와 사용자 데이터 모두를 서명하기 위해서 사용됩니다. 클라이언트의 공개 키는 RSA 토큰에 임베드되며 대상으로 유효성 검증됩니다. 클라이언트의 공개 키가 대상에서 CertPath API를 호출할 때 신뢰되지 않으면 RSA 토큰 유효성 검증은 계속할 수 없습니다. 클라이언트 공개 키가 신뢰되면 비밀 키와 사용자 데이터 서명을 확인하는 데 사용할 수 있습니다.
기본 목표는 필수 정보를 안전하게 전파하여 클라이언트 주제(Subject)를 대상의 주제(Subject)로 변환하기 위해서입니다. 대상에서 주제(Subject)가 생성된 후 RSA 인증 메커니즘 프로세스가 완료됩니다.