
![[8.5.5.4 이상]](../ng_v8554.gif)
OpenID
OpenID는 사용자가 여러 계정 또는 신임 세트를 관리하지 않고 자신을 여러 엔티티에 대해 인증할 수 있는 개방형 표준입니다. WebSphere® Application Server Liberty 프로파일은 OpenID 2.0을 지원하며 웹 싱글 사인온에서 신뢰 당사자 역할을 수행합니다.
- OpenID 제공자(OP)
- 사용자가 고유 ID를 제어하는지 여부를 어설션할 수 있는 OpenID 인증 서버입니다.
- 신뢰 당사자(RP)
- 사용자가 고유 ID를 제어한다는 증거를 요구하는 엔티티입니다.
- OpenID ID:
- OpenID 제공자 또는 사용자에 속하는 http 또는 https URL입니다.
웹 사이트 등의 다양한 엔티티에 액세스하려면 각각의 엔티티와 연관된 고유 계정이 필요할 수 있습니다. OpenID는 OpenID를 지원하는 임의의 수의 엔티티에 대한 액세스를 부여하기 위해 OpenID 제공자가 처리하는 단일 신임 세트를 사용할 수 있게 합니다.
OpenID를 지원하고 신뢰 당사자 역할을 수행하는 웹 사이트 등의 엔티티에 로그인해야 하는 경우 사용자는 신임을 RP 자체에 제공하는 대신 OP와 직접 상호작용하여 인증을 수행합니다. OP는 사용자의 ID를 확인한 후 인증 확인을 다시 RP에 전송합니다. OP로부터 이 확인이 수신되는 경우 RP는 해당 사용자를 인증된 것으로 승인합니다.
일반적인 OpenID 인증 플로우는 다음과 같습니다.
- 사용자가 보호된 자원(예: 웹 페이지)에 액세스를 시도합니다.
- RP 역할을 수행하는 Liberty 프로파일 서버가 보호된 자원에 대한 양식 로그인 페이지를 제공합니다.
- 사용자가 OpenID ID를 입력합니다.
- RP가 해당 ID를 가져와서 사용자의 경로를 적절한 OP로 재지정합니다.
- OP가 사용자에게 신임에 대한 프롬프트를 표시합니다.
- 사용자가 OP와 연관된 계정에 대한 신임을 입력합니다.
- OP가 사용자를 인증하고 선택적으로 사용자에게 RP에 대한 사용자 정보 제공을 승인할지 아니면 거부할지 묻는 프롬프트를 표시한 후 사용자의 경로를 인증 결과를 가진 RP로 다시 재지정합니다.
- OP 인증에 성공하면 RP가 사용자에게 권한 부여를 시도합니다.
- 사용자 권한 부여에 성공하면 RP가 사용자에 대해 인증된 세션을 설정합니다.

OpenID는 사용자 신임 또는 민감한 정보가 잘못 처리될 수 있는 가능성을 최소화하는 데 도움이 됩니다. OpenID를 사용하면 사용자의 신임이 OpenID 제공자와만 교환되어 OP 이외의 웹 사이트에는 사용자의 신임이 표시되지 않습니다. 이 표준은 비양심적이거나 안전하지 않은 웹 사이트가 사용자의 ID를 위태롭게 할 수 있는 가능성을 낮추는 데 도움이 됩니다. 또한 사용자는 방문한 웹 사이트와 공유되는 개인 정보를 제어합니다. 예를 들어, 사용자는 다른 웹 사이트에 이메일 주소(또는 모든 정보)를 제공하지 않도록 선택하면서 OpenID 계정과 연관된 이름 및 이메일 주소를 한 웹 사이트와 공유하도록 선택할 수 있습니다.
지원되는 OpenID 표준 스펙은 다음과 같습니다.
OpenID Attribute Exchange 1.0.
이메일을 포함한 일부 OpenID 속성은 OpenID 제공자에 의해 유효성 검증되지 않는다고 알려져 있습니다. 제공자가 확인된 이메일 주소를 제공할 것이라고 신뢰하지 않는 경우에는 해당 제공자의 이메일을 WebSphere Application Server에서 인증된 사용자 이름으로 사용해서는 안 됩니다.