| Sun ONE Portal Server 6.2 관리자 설명서 |
부록H
SSO 어댑터 템플리트 및 구성이 부록에서는 최종 사용자가 사용할 수 있는 옵션을 조정하기 위해 단일 사인온(SSO) 어댑터를 구성하는 방법에 대해 설명합니다.
이 부록에서는 다음 절을 다룹니다.
단일 사인온 어댑터 개요단일 사인온 어댑터 서비스를 통해 최종 사용자는 한 번 등록한 후 포털 서버 공급자나 기타 웹 응용프로그램과 같은 응용프로그램을 사용하여 다양한 자원 서버에 인증된 액세스를 할 수 있습니다. 액세스할 수 있는 자원 서버는 시스템에서 사용할 수 있는 SSO 어댑터 인터페이스의 구현에 따라 결정됩니다. 현재 Sun ONE Portal Server 는 주소록, 캘린더 및 메일 자원 서버에 대한 SSO 어댑터를 제공합니다. Instant Messaging 채널에 대한 단일 사인온은 SSO 어댑터가 아니라 Sun ONE Identity Server 인증 방법을 통해 얻어집니다. 이 방법에 대한 내용은 표 H-1에 있는 authMethod 속성을 참조하십시오. 주소록, 캘린더 및 메일 서비스는 다음 제품을 통해 이용할 수 있습니다.
자원 서버는 일반적으로 메일 서버 액세스를 위한 JavaMail과 같은 표준 API (application programming interface)를 사용하여 응용프로그램에서 액세스합니다. API를 사용하여 인증된 연결을 구성하려면 API에 연결을 위한 구성 데이터를 제공해야 합니다. SSO 어댑터의 목적은 이 구성 데이터를 제공하는 것이고 이 데이터를 저장하기 위해 SSO 어댑터 서비스가 사용됩니다.
SSO 어댑터 서비스는 두 수준의 데이터, 템플리트 및 구성을 정의합니다. SSO 어댑터 템플리트는 사용자가 사용할 수 있게 될 연결 클래스를 정의합니다. 여러 사용자가 단일 템플리트를 사용합니다. 이 템플리트는 기본값 및 사용자가 편집할 수 있는 값의 확인을 포함하여 이 템플리트를 사용하는 모든 사용자에 대해 동일한 데이터 값을 정의합니다. 따라서, SSO 어댑터 템플리트는 전역 서비스 수준에서 정의됩니다.
SSO 어댑터 구성은 어떤 조직, 역할 또는 사용자에 특정한 데이터 값을 제공하여 템플리트를 바탕으로 합니다. 구성은 템플리트를 참조하며 사용자가 편집할 수 없는 속성에 대해 템플리트의 데이터 값을 취합니다. 최종 사용자가 SSO 어댑터 구성의 사용자 편집 가능한 속성을 변경하는 경우, 이 구성은 이 한 명의 사용자에게만 적용됩니다.
SSO 어댑터 서비스를 사용하는 Sun ONE Portal Server 통신 채널은 자원 서버에 연결하기 위해 필요한 데이터 값을 얻기 위해 템플리트나 구성을 참조합니다. 채널이 템플리트를 참조하고 사용자가 구성 정보를 저장하는 경우, 이 참조는 대신 구성을 참조하도록 변경됩니다. 구성은 다시 템플리트를 참조합니다.
SSO 어댑터 템플리트 형식: 전역SSO 어댑터에 대한 전역 속성
표 H-25는 SSO 어댑터에 대한 전역 속성(실제로 하나의 속성)을 설명합니다. 이 표에는 3개의 열이 있습니다. 첫 번째 열은 속성이고 두 번째 열은 속성의 기본값이며 세 번째 열은 속성에 대한 설명입니다.
SSO 어댑터 템플리트에 액세스
Sun™ ONE Identity Server 관리 콘솔에서 SSO 어댑터 템플리트에 액세스하려면
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [서비스 구성] 탭을 클릭하여 탐색 표시 영역(왼쪽 하단 프레임)에 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성 제목이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역(오른쪽 하단 프레임)에 SSO 어댑터 페이지를 엽니다.
SSO 어댑터 템플리트에 대하여
SSO 어댑터 템플리트는 서버 설정을 처리하기 위해 만들어집니다. 이 템플리트는 W3C (World Wide Web Consortium)에서 공표한 RFC 1738에 설명된 URL (uniform resource locator)로 표현됩니다.
템플리트 문자열에는 구성했을 때 백엔드 시스템에 필요한 정보를 제공하는 다양한 속성이 있습니다.
템플리트 문자열은 관리자가 문자열 내의 속성에 값을 할당하고 이러한 속성에 사용할 특정 규칙을 적용할 수 있도록 편집이 가능합니다.
템플리트 문자열은 단어 "default"로 시작하여 파이프 기호 "|"가 뒤따릅니다. 따라서 관리자가 입력하는 어떤 템플리트 문자열도 "default|" 조합으로 시작해야 합니다. 각 템플리트 문자열에는 파이프 기호에 이어지는 프로토콜이 있습니다. IMAP 및 POP 프로토콜을 포함한 문자열은 메일 SSO 어댑터 구현에 적용되고 HTTP 프로토콜로 시작되는 문자열은 캘린더 SSO 어댑터 구현에서 사용하며 LDAP 프로토콜로 시작되는 문자열은 주소록 SSO 어댑터 구현에서 사용합니다.
코드 예제 H-1은 주소록 SSO 어댑터 템플리트입니다. 이 예제에서는 LDAP 기본 포트 389 대신 LDAP 포트 489를 사용합니다. 이 예제에서 기본이 아닌 LDAP 포트를 사용하여 기본 LDAP 포트를 사용했을 때 불필요한 두 코드 조각의 사용을 보여줍니다. LDAP 포트 번호와 쌍을 이룬 콜론 - :489 - 및 다음 하위 문자열 - &default=port.
템플리트 문자열은 필드에서 하나의 긴 문자열로 나타나지만 읽기 쉽게 하기 위해 다음 문자열이 여기서는 개별 라인으로 나누어졌으며 여기서 각 앰퍼샌드(&) 앞에 줄바꿈을 추가했습니다.
다음 코드 라인은 SSO 어댑터 템플리트 문자열이나 SSO 어댑터 구성 문자열의 앞 부분에서 가능한 속성의 예제입니다. 코드 예제 H-1과 비교할 때 이 부분은 속성에 값이 어떻게 할당되는지를 보여줍니다. 표 H-26은 각 속성을 설명하고 표 H-27은 속성 유형을 설명합니다.
protocol://uid:password@host:port/?configName=configuration-name&ssoClassName=
sso-adapter-class&...SSO 어댑터 템플리트 문자열의 앞 부분은 Sun ONE Portal Server 인스턴스의 모든 사용자에게 적용되는 템플리트와 특정 조직, 역할 및 사용자에게 적용되는 구성 모두에 적합한 형식입니다. 그러나 이전 부분의 특정 조각은 템플리트나 구성 문자열 내에 나타나지 않습니다. 예를 들어, "uid:password@"는 일반적으로 특정 사용자에게 특정한 값이기 때문에 템플리트 내에서 공통적으로 사용되지 않습니다.
SSO 어댑터 템플리트 내에서 앞서 언급한 조각을 사용하면 모든 사용자에게 동일한 사용자 아이디와 비밀번호가 설정됩니다. 이러한 형태의 구성은 일부 상황에서 적합합니다. 예를 들어, 어떤 사이트에서 사이트 범위의 이벤트를 나열하는 읽기 전용 캘린더를 만들어야 할 수 있습니다. 모든 사용자는 같은 사용자 아이디와 비밀번호를 사용하여 데스크탑에서 캘린더 채널을 얻으며 동일한 캘린더를 보게 됩니다.
표 H-26 SSO 어댑터 템플리트 문자열의 몇 가지 속성
속성 이름
설명
필요성
protocol
서버에 전송할 때 사용되는 프로토콜
옵션
uid
호스트에서 참조하는 서버에 있는 사용자의 사용자 아이디
옵션
password
호스트가 참조하는 서버의 코드화된 사용자 비밀번호
옵션
host
서버 호스트 이름
옵션
port
서버 포트 번호
옵션
configName
SSO 어댑터 템플리트의 이름
필수
ssoClassName
SSO 어댑터에 대한 완전한 정규 클래스 이름
필수
type
SSOAdapter 템플리트 또는 구성이 적용되는 서비스 유형 이 속성은 SSO 어댑터 템플리트나 구성 집합을 유형과 관련된 그룹으로 묶는데 유용합니다. 예를 들어, 선택이 명시적이지 않을 때 기본 구성을 쉽게 선택할 수 있습니다. 현재 다음 중 하나가 값이 될 수 있습니다.
옵션
subType
SSO 어댑터 템플리트나 구성이 적용되는 벤더 또는 제품별 플랫폼. 이 속성은 특정 제품이나 플랫폼에 대한 기능을 지원하려고 할 때 유용합니다. 현재 다음 중 하나가 값이 될 수 있습니다.
옵션
enablePerRequestConnection
성능 조정 옵션인 이 부울 속성은 true의 기본 설정을 갖습니다.
enablePerRequestConnection=true이면 포털 데스크탑에 대한 모든 요청으로 백엔드 스토어에 대한 새로운 연결이 열리고 닫힙니다.
enablePerRequestConnection=false이면 포털 데스크탑이 포털 로그인 시에 백엔드 스토어에 대한 새로운 연결을 열고 사용자 세션이 종료되면 연결을 닫습니다.
옵션
SSO 어댑터 템플리트는 다음 속성 유형을 인식합니다.
표 H-27 SSO 어댑터 템플리트 문자열의 속성 유형
속성 유형
설명
merge
이 값을 사용자가 편집할 수 있다는 것을 나타냅니다. 코드 예제 H-1에서 사용자가 uid 및 password의 두 가지 값만 편집할 수 있다는 것에 주목하십시오.
default
속성이 기본값으로 설정된다는 것을 나타내며 실제로 두 단계의 과정입니다. 코드 예제 H-1에서 imapPort가 문자열의 한 지점에서 특정 포트 &imapPort=143으로 설정되고 이후 문자열에서 기본값 &default=imapPort로 설정된다는 것에 주목하십시오.
SSO 어댑터 템플리트와 SSO 어댑터 구성의 조각을 포함한 다음 예는 default 속성의 작용 방식을 보여줍니다.
configName=t1&ex1=ex2&exa=exb&default=exa
configName=c1&configDesc=t1
그러면 SSOAdapter 구현에서 관찰되는 결과적인 속성 목록은 다음이 됩니다.
exa=exb
템플리트의 ex1=ex2 값은 기본 속성으로 나열되지 않았기 때문에 무시됩니다.
encoded
속성이 명확한 텍스트로 전달되지 않고 옵퍼스케이션된다는 것을 나타냅니다. 코드 예제 H-1에서 한 가지 값 password만 코드화된다는 것에 주목하십시오.
adminPassword 값은 코드화되지 않습니다. adminPassword와 같은 속성을 코드화하려면:
1. SSO 어댑터 템플리트 문자열에 암호화된 값을 입력합니다. 이 예에서는 다음 하위 문자열의 등호 기호 다음에 암호화된 값이 옵니다.
&adminPassword=
AMPaswordUtil.encrypt plain-text-value
2. 암호화할 속성에 encoded를 할당하는 하위 문자열을 추가합니다. 이 예에서 속성은 adminPassword이며 문자열 끝에 추가됩니다(편이를 위한 위치).
&encoded=adminPassword
이 작업은 다음과 같이 끝나도록 SSO 어댑터 템플리트를 변경합니다.
...merge=uid&merge=password&encoded
=adminPassword
SSO 어댑터 구성 형식: 동적SSO 어댑터에 대한 동적 속성
표 H-28에서는 SSO 어댑터에 대한 동적 속성을 설명합니다. 이 표에는 3개의 열이 있습니다. 첫 번째 열은 속성이고 두 번째 열은 속성의 기본값이며 세 번째 열은 속성에 대한 설명입니다.
표 H-28 SSO 어댑터 - 동적 속성
속성
기본값
설명
Conflict ResolutionLevel
가장 높음
여러 템플리트가 병합될 때 충돌을 해결하기 위해 사용되는 SSO 어댑터 템플리트의 충돌 해결 수준을 설정합니다. 가장 높음에서 가장 낮음까지 7가지 충돌 해결 설정을 사용할 수 있습니다.
속성 충돌이 발생하면 가장 높은 충돌 해결 수준으로 설정된 템플리트의 속성이 반환됩니다.
SSOAdapterConfigurations
기본값은 설치 중에 구성된 서비스에 따라 결정됩니다.
SSOAdapterConfigurations 속성은 각 문자열이 URL 형식인 문자열 목록입니다. 이 문자열은 SSOAdapterTemplates 속성에서 정의된 SSO 어댑터의 특정 인스턴스를 정의합니다.
SSO 어댑터에 대한 기본값은 SSOAdapterTemplates 속성에서 정의되며 조직, 역할 또는 사용자별 인스턴스가 SSOAdapterConfigurations 속성에 저장됩니다.
SSO 어댑터 구성 액세스
참고
SSO 어댑터 구성을 편집하려면 이어서 나오는 단계를 따릅니다. 단계2의 설명에 따라 [Identity 관리] 탭을 선택하여 구성에 액세스합니다. "SSO 어댑터 템플리트에 액세스."의 설명에 따라 [서비스 구성] 탭에서 구성에 액세스하지 마십시오.
Sun ONE Identity Server 관리 콘솔에서 SSO 어댑터 구성에 액세스하려면
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성 제목이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역에 SSO 어댑터 페이지를 엽니다.
SSO 어댑터 구성에 대하여
코드 예제 H-2는 메일 SSO 어댑터 구성입니다.
이전에 언급했듯이 동적 SSO 어댑터 구성은 전역 SSO 어댑터 서비스 템플리트와 같은 형식을 가지고 있습니다.
protocol://uid:password@host:port/?configName=configuration-name
configDesc=sso-adapter-template&....SSO 어댑터 템플리트의 경우, "uid:password@host:port"같은 이전 부분의 특정 조각이 나타나기 어렵습니다. SSO 어댑터 구성 문자열의 경우 이러한 유형의 조각이 조직이나 역할 수준에서는 나타나기 어렵지만 사용자 수준에서는 나타나기 쉽습니다.
동적 수준에서 인식되는 속성은 다음과 같습니다.
표 H-29 SSO 어댑터 구성 문자열의 속성
속성
설명
필요성
configName
SSO 어댑터 템플리트나 구성 정의의 고유 식별자입니다.
필수
configDesc
SSO 어댑터 템플리트 값입니다. 동적 SSO 어댑터 구성 문자열에서의 configDesc 속성에 대한 값은 전역 SSO 어댑터 문자열에서의 configName 속성에 대한 값과 같습니다(두 문자열이 같은 프로토콜로 시작된다고 가정했을 때).
필수
SSO 어댑터 템플리트 및 구성 예제포털 채널 구성을 만들고 공유하는 방법에 대한 두 예제가 이어집니다. 두 예제 모두에서 SSO 어댑터 템플리트와 구성 사이에 분배되는 데이터는 거의 동일합니다. 그러나 첫 번째 예제는 속성을 전역으로 공유하는 방법을 보여주고 두 번째 예제는 단일 조직 내에서 속성을 공유하는 방법을 보여줍니다. 두 예제 모두에서 사용자는 사용자 아이디와 비밀번호 정보를 입력해야 하고(필요한 편집을 위해) 데스크탑에서 해당 채널을 시작할 수 있습니다.
다음 두 예제에서 논의하는 것처럼 SSO 어댑터 템플리트 및 구성을 변경할 때 모든 사용자가 데스크탑에서 변경 내용을 보는 것은 아닙니다. 데스크탑에서 채널을 편집하여 채널 기본 설정을 이미 편집한 사용자는 관리자가 기존의 또는 새로운 채널을 변경해도 그 내용을 보지 못합니다. 이러한 사용자에 대해 관리자의 구성을 구현하는 단계는 "일부 사용자가 구성 변경을 보지 못하는 경우."에서 논의합니다.
SSO 어댑터 템플리트 내에서의 서버 정의
이 부분에서는 전역으로 공유된 서버에서 SSO 어댑터 템플리트를 구성하는 작업에 대해 논의합니다. 따라서 전역 수준의 모든 하위 부분(조직에서 역할까지)이 같은 구성을 공유합니다. 조직 수준에서 서버를 구성하는데 대한 내용은 "조직 수준에서의 서버 정의"를 참조하십시오.
이 구성의 경우에 결과로서 사용자가 데스크탑에서 메일 채널을 갖게 되며 여기서 메일 채널을 편집할 수 있고 구성을 완료하기 위해 사용자가 자격 증명 정보(사용자 아이디(uid) 및 비밀번호)만 입력하면 됩니다.
다음 예제에서는 새로운 SSO 어댑터 템플리트, SSO 어댑터 구성 및 메일 채널을 만듭니다.
- 이 예제에서는 credentialMailTemplate라고 명명되는 새 SSO 어댑터 템플리트를 추가합니다.
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [서비스 구성] 탭을 클릭하여 탐색 표시 영역에 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역에 SSO 어댑터 페이지를 엽니다.
- 추가 및 제거 버튼 바로 위에 있는 빈 구성 설명 필드를 클릭합니다. 동적 경우와 다르게 이는 전역 제목 아래의 SSO 어댑터 템플리트라는 이름의 상자에 있습니다.
- 빈 구성 설명 필드에서 다음 코드 예제 H-3에 나타낸 것처럼 전체 SSO 어댑터 템플리트 문자열을 입력하고 특정 예제가 해당 사이트에 대한 정보에 맞지 않는다면 변수 정보를 사이트에 특정한 정보로 대체합니다(따라서 다음 몇 가지 값을 교체합니다. credentialMailTemplate,company22.example.com:143, company22.example.com,true 및 1080).
들어갈 때 필드가 비어 있지 않으면 필드의 모든 텍스트를 선택하고 삭제합니다.
코드 예제 H-3 전역 공유를 위한 메일 SSO 어댑터 템플리트
default|imap://company22.example.com:143/?configName=credentialMailTemplate
&encoded=password
&default=protocol
&default=clientProtocol
&default=type
&default=subType
&default=enableProxyAuth
&default=proxyAdminUid
&default=proxyAdminPassword
&default=ssoClassName
&default=enablePerRequestConnection
&default=userAttribute
&default=host
&default=port
&default=smtpServer
&default=clientPort
&default=smtpPort
&enableProxyAuth=false
&proxyAdminUid=[PROXY-ADMIN-UID]
&proxyAdminPassword=[PROXY-ADMIN_PASSWORD]
&type=MAIL-TYPE
&subType=sun-one
&ssoClassName=com.sun.ssoadapter.impl.JavaMailSSOAdapter
&enablePerRequestConnection=true
&userAttribute=uid
&clientProtocol=http
&smtpServer=company22.example.com
&sentFolderCopy=true
&clientPort=1080
&smtpPort=25
&merge=uid
&merge=password
- [추가]를 클릭합니다.
- [저장]을 클릭합니다.
이 시점에서 IMAP 프로토콜로 시작되는 둘 이상의 문자열이 있을 수 있습니다. 이것은 문제되지 않습니다.
- 이 예제의 경우 이름이 credentialMail인 새 SSO 어댑터 구성을 추가합니다. 해당 사이트에 대한 고유 템플리트 이름을 선택합니다.
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성 제목이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역에 SSO 어댑터 페이지를 엽니다.
- [추가] 및 [제거] 버튼 바로 위에 있는 빈 구성 설명 필드를 클릭합니다.
- 빈 구성 설명 필드에서 다음 코드 라인을 입력합니다. 여기서 이 경우에는 구성 이름이 credentialMail이고 구성 설명은 credentialMailTemplate 입니다(구성 이름과 구성 설명에 사용된 이름을 해당 사이트에 대한 특정 정보로 대체합니다).
default|imap:///?configName=credentialMail
&configDesc=credentialMailTemplate들어갈 때 필드가 비어 있지 않으면 필드의 모든 텍스트를 선택하고 삭제합니다.
- [추가]를 클릭합니다.
- [저장]을 클릭합니다.
- 데스크탑에 새 메일 채널을 추가합니다. 이 예제에서 새 채널의 이름은 CredentialMailChannel입니다.
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- Portal Server 구성 제목이 나올 때까지 탐색 표시 영역을 스크롤한 다음 포털 데스크탑 옆의 화살표를 클릭하여 데이터 표시 영역에 포털 데스크탑 페이지를 표시합니다.
- [채널 및 컨테이너 관리] 링크를 클릭합니다.
- 채널 제목 아래에서 [새로 만들기]를 클릭합니다.
- [채널 이름] 필드에 이 경우에는 CredentialMailChannel인 새 채널의 이름을 입력합니다.
- 공급자 드롭다운 메뉴에서 MailProvider를 선택합니다.
- [확인]을 클릭하면 [채널 및 컨테이너 관리] 웹 페이지로 돌아가고 여기서 방금 만든 채널을 볼 수 있습니다.
- 채널 제목 아래에서 방금 만든 채널 이름 옆의 [속성 편집]을 클릭합니다. 이 경우에는 CredentialMailChannel입니다.
- "제목" 필드에서 예를 들어 mail과 같이 현재 존재하는 모든 단어를 선택하여 삭제하고 이 예제의 경우 Credential Only Mail Account인 공급자 제목을 입력합니다.
- 설명 필드에서 예를 들어 mail과 같이 현재 존재하는 모든 단어를 선택하여 삭제하고 이 예제의 경우 마찬가지로 Credential Only Mail Account인 공급자 설명을 입력합니다.
- 페이지를 아래로 스크롤하고(데이터 표시 영역에서) 예를 들어 SunOneMail과 같이 "sso 어댑터" 필드에 현재 존재하는 모든 단어를 선택하여 삭제하고 단계 2에서 사용된 동일한 SSO 어댑터 구성 이름을 입력합니다. 이 예제의 경우는 credentialMail입니다.
- 필요에 따라 스크롤하고 [저장]을 클릭합니다.
- 다시 페이지 위로 스크롤하여 Container Path 단어에 이어지는 첫 항목인 단어 top을 클릭합니다.
- 컨테이너 채널 제목으로 스크롤하여 새 채널을 추가할 컨테이너의 링크를 클릭합니다. (예: MyFrontPageTabPanelContainer) 함께 있는 [속성 편집] 링크를 클릭하지 마십시오.
- 채널 관리 제목 아래에서 방금 만든 채널 이름을 클릭합니다. 예를 들어, 기존 채널 목록에 있는 CredentialMailChannel을 클릭합니다.
- 사용 가능 및 표시 가능 목록 옆에 있는 [추가] 단추를 클릭합니다. 그러면 더 이상의 구성 없이 사용자가 채널을 사용하고 볼 수 있습니다.
- 채널 관리 제목에서 페이지를 위로 스크롤하여 [저장]을 클릭합니다.
데스크탑에 새 메일 채널 추가를 끝마쳤습니다. 이제 최종 사용자가 메일 채널에서 편집 버튼을 클릭할 때 표시되도록(그리고 편집하도록) 할 필드를 제한합니다. 사용자 아이디와 비밀번호 필드만 보존합니다.
- Identity Server 관리 콘솔을 사용하여 디렉토리 서버에서 조직의 디스플레이 프로필 문서를 검색합니다. 165페이지의 "디스플레이 프로필을 다운로드 및 업로드하려면" 을 참조하여 디스플레이 프로필 문서를 다운로드하고 (로컬로) 저장하기 위한 단계를 따르십시오.
- 선택한 편집기를 사용하여 디스플레이 프로필 문서를 열고 예를 들어 CredentialMailChannel과 같이 단계 3에서 만든 채널 이름을 찾습니다. 찾아야 하는 텍스트 부분은 다음과 같은 형태입니다.
<Channel name="CredentialMailChannel" provider="MailProvider" merge="replace">
<Properties>
<String name="title" value="Credential Only Mail Account"/>
<String name="description" value="Credential Only Mail Account"/>
<String name="ssoAdapter" value="credentialMail"/>
</Properties>
</Channel>
- uid 및 password만 포함한 SSOEditAttributes 컬렉션을 추가합니다. 이러한 컬렉션은 다음과 같은 형태입니다.
<Collection name="ssoEditAttributes">
<String name="uid" value="string|User Name:"/>
<String name="password" value="password|User Password:"/>
</Collection>
이 유형의 컬렉션을 추가한 후 채널 정의는 다음과 같은 형태가 됩니다.
<Channel name="CredentialMailChannel" provider="MailProvider" merge="replace">
<Properties>
<String name="title" value="Credential Only Mail Account"/>
<String name="description" value="Credential Only Mail Account"/>
<String name="ssoAdapter" value="credentialMail"/>
<Collection name="ssoEditAttributes">
<String name="uid" value="string|User Name:"/>
<String name="password" value="password|User Password:"/>
</Collection>
</Properties>
</Channel>
- Identity Server 관리 콘솔을 사용하여 새로 편집한 디스플레이 프로필 문서를 업로드합니다. 다시 "디스플레이 프로필을 다운로드 및 업로드하려면" 을 참조하십시오. 이번에는 디스플레이 프로필을 업로드하기 위한 단계를 따르십시오.
- 새로운 포털 최종 사용자를 만들고 데스크탑에 인증을 얻습니다(옵션).
새 사용자를 만드는 경우, 이 사용자는 포털 데스크탑에서 방금 수행된 구성 변경을 볼 수 있습니다. 데스크탑에서 이전에 어떤 채널도 구성하지 않은 기존 사용자도 수행된 변경을 볼 수 있습니다. 그러나 데스크탑에서 채널을 구성한 기존 사용자는 이러한 변경을 보지 못합니다. 이들이 변경을 볼 수 있게 하려면 "일부 사용자가 구성 변경을 보지 못하는 경우"를 참조하십시오.
조직 수준에서의 서버 정의
이 부분에서는 조직 수준에서 SSO 어댑터 템플리트의 구성을 설명합니다. 본 예제의 SSO 어댑터 템플리트와 SSO 어댑터 구성에서 사용된 데이터는 "SSO 어댑터 템플리트 내에서의 서버 정의"의 예제에서 사용된 데이터와 거의 동일합니다. 그러나 다음 예제에서 SSO 어댑터 구성에는 더 많은 속성이 나오고 SSO 어댑터 템플리트에는 덜 나옵니다. SSO 어댑터 구성에 속성을 놓으면 이 속성을 전역으로 공유하지 않고 조직 내에서 공유할 수 있습니다.
다음 예제에서는 새 SSO 어댑터 구성과 메일 채널을 만듭니다. 이 예제에서는 기본 SSO 어댑터 템플리트가 사용됩니다. 다른 템플리트를 만들 필요는 없습니다.
코드 예제 H-4 조직 내에서 공유하기 위한 메일 SSO 어댑터 템플리트
default|imap:///?configName=SUN-ONE-MAIL
&encoded=password
&default=ssoClassName
&default=protocol
&default=clientProtocol
&merge=host
&merge=port
&merge=uid
&merge=password
&merge=smtpServer
&merge=smtpPort
&merge=sentFolderCopy
&merge=clientPort
&clientProtocol=http
&ssoClassName=com.sun.ssoadapter.impl.JavaMailSSOAdapter
- 이 예제의 경우 이름이 orgCredentialMail인 새 SSO 어댑터 구성을 추가합니다. 해당 사이트에 대한 고유 이름을 선택합니다.
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성 제목이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역에 SSO 어댑터 페이지를 엽니다.
- [추가] 및 [제거] 버튼 바로 위에 있는 빈 구성 설명 필드를 클릭하여 들어갑니다.
- 빈 구성 설명 필드에서 다음 코드 라인을 입력합니다. 여기서 이 예제의 경우 구성 이름은 orgcredentialMail이고 구성 설명은 SUN-ONE-MAIL입니다. 여기서 사용된 변수 예제가 해당 사이트에 대한 정보에 적합하지 않으면 이를 해당 사이트에 특정한 정보로 교체합니다(따라서 다음 중 몇 가지를 교체합니다. company22.example.com:143, orgcredentialMail, ccompany22.example.com, true, 1080 및 25).
default|imap://company22.example.com:143/?configName=orgCredentialMail
&configDesc=SUN-ONE-MAIL
&smtpServer=company22.example.com
&sentFolderCopy=true
&clientPort=1080
&smtpPort=25들어갈 때 필드가 비어 있지 않으면 필드의 모든 텍스트를 선택하고 삭제합니다.
- [추가]를 클릭합니다.
- [저장]을 클릭합니다.
이 시점에서 IMAP 프로토콜로 시작되는 둘 이상의 문자열이 있을 수 있습니다. 이것은 문제되지 않습니다.
- [내 프런트 페이지] 탭에 새 메일 채널을 추가합니다. 이 경우에는 새 채널의 이름인 OrgCredentialMailChannel입니다.
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole).
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- Portal Server 구성 제목이 나올 때까지 탐색 표시 영역을 스크롤한 다음 포털 데스크탑 옆의 화살표를 클릭하여 데이터 표시 영역에 포털 데스크탑 페이지를 표시합니다.
- [채널 및 컨테이너 관리] 링크를 클릭합니다.
- 채널 제목 아래에서 [새로 만들기]를 클릭합니다.
- [채널 이름] 필드에 이 경우에는 OrgCredentialMailChannel인 새 채널의 이름을 입력합니다.
- 공급자 드롭다운 메뉴에서 MailProvider를 선택합니다.
- [만들기]을 클릭하면 [채널 및 컨테이너 관리] 웹 페이지로 돌아가고 여기서 방금 만든 채널을 볼 수 있습니다.
- 채널 제목 아래에서 방금 만든 채널 이름 옆의 [속성 편집]을 클릭합니다. 이 경우에는 OrgCredentialMailChannel입니다.
- 제목 필드에서 예를 들어 mail과 같이 현재 존재하는 모든 단어를 선택하여 삭제하고 이 예제의 경우 Organization Defined Credential Only Mail Account인 공급자 제목을 입력합니다.
- 설명 필드에서 예를 들어 mail과 같이 현재 존재하는 모든 단어를 선택하여 삭제하고 이 예제의 경우 마찬가지로 Credential Only Mail Account인 공급자 설명을 입력합니다.
- 페이지 아래로 스크롤하고(데이터 표시 영역에서) 예를 들어 sunOneMail과 같이 ssoAdapter 필드에 현재 존재하는 모든 단어를 선택하여 삭제하고 단계 1에서 사용된 동일한 SSO 어댑터 구성 이름을 입력합니다. 이 예제의 경우는 orgCredentialMail입니다.
- 필요에 따라 스크롤하고 [저장]을 클릭합니다.
- 다시 페이지 위로 스크롤하여 Container Path 단어에 이어지는 첫 항목인 단어 top을 클릭합니다.
- 컨테이너 채널 제목으로 스크롤하여 새 채널을 추가할 컨테이너의 링크를 클릭합니다. 예를 들면 MyFrontPageTabPanelContainer와 같습니다. 함께 있는 [속성 편집] 링크를 클릭하지 마십시오.
- 채널 관리 제목 아래에서 방금 만든 채널 이름을 클릭합니다. 예를 들어, 기존 채널 목록에 있는 OrgCredentialMailChannel을 클릭합니다.
- 사용 가능 및 표시 가능 목록 옆에 있는 [추가] 단추를 클릭합니다. 그러면 더 이상의 구성 없이 사용자가 채널을 사용하고 볼 수 있습니다.
- 채널 관리 제목에서 페이지를 위로 스크롤하여 [저장]을 클릭합니다.
데스크탑에 새 메일 채널 추가를 끝마쳤습니다. 이 구성 유형의 경우, 최종 사용자가 이 채널에 대한 편집 버튼을 클릭할 때 사용자가 직접 입력해야 하는 사용자 아이디와 비밀번호만 제외하고 편집 가능한 모든 필드가 채워집니다. 사용자 아이디와 비밀번호 필드를 제외한 모든 필드를 제거하려면 SSO 어댑터 템플리트 내에서의 서버 정의 부분의 단계 4부터 따르십시오.
- 새로운 포털 사용자를 만들고 데스크탑에 인증을 얻습니다(옵션).
새 사용자를 만드는 경우, 이 사용자는 포털 데스크탑에서 방금 수행된 구성 변경을 볼 수 있습니다. 데스크탑에서 이전에 어떤 채널도 구성하지 않은 기존 사용자도 수행된 변경을 볼 수 있습니다. 그러나 데스크탑에서 채널을 구성한 기존 사용자는 이러한 변경을 보지 못합니다. 이들이 변경을 볼 수 있게 하려면 "일부 사용자가 구성 변경을 보지 못하는 경우"를 참조하십시오.
일부 사용자가 구성 변경을 보지 못하는 경우
관리자는 SSO 어댑터 템플리트 및 구성을 편집하거나 만들어서 새 채널을 추가하는 등 채널 구성을 변경합니다. 이러한 변경 사항은 모든 사용자에게 적용되지 않습니다. 다음 사용자에게 영향을 미칩니다:
그러나 이전에 데스크탑에서 채널을 편집하여 하나 또는 여러 채널 구성을 변경한 사용자에 대해서는 관리자가 사용자 수준에서 직접 구성을 변경해야 변경 내용이 적용됩니다. 예를 들어, 관리자가 전역, 조직 또는 역할 수준에서 채널을 추가하면 채널이 사용자의 데스크탑에 나타나지 않습니다.
이러한 상황은 디렉토리 서버에서 서비스 클래스가 작용하는 방식 때문에 발생합니다. 하나 또는 여러 채널을 구성하는 사용자는 SSO 어댑터 템플리트와 구성을 덮어씁니다. 이후 이러한 사용자에 대해 관리자가 전역, 조직 또는 역할 수준에서 추가하는 값은 더 이상 사용자 수준에서 상속되지 않습니다.
따라서 이전에 하나 또는 여러 채널 구성을 변경한 모든 사용자에 대해 사용자 수준에서 직접 변경을 구성하십시오. 일반적으로 다른 사용자에 대한 변경을 먼저 구성한 다음 이 템플리트와 구성 문자열을 복사하여 이를 필요로 하는 사용자에 대해 사용자 수준에서 직접 붙여넣는 것이 편리합니다. 다음 지침에서는 이런 방식으로 변경을 구성한다고 가정합니다. 그러나 필요하다면 복사와 붙여넣기 없이 사용자 수준에서 직접 구성 문자열을 입력할 수 있습니다.
다른 사용자에 대한 구성을 변경한 후에 다음 두 방법 중 하나로 이를 필요로 하는 사람을 위해 사용자 수준에서 직접 구성을 변경합니다.
1명에서 소수 사용자를 위한 사용자 수준 구성 변경
다른 사용자에 대해 방금 편집하거나 만든 SSO 어댑터 템플리트 문자열 또는 SSO 어댑터 구성 문자열을 복사하여 다음과 같이 사용자 수준에서의 직접 변경을 필요로 하는 사용자에게 붙여넣습니다.
- SSO 어댑터 구성에서 문자열 복사:
- 인터넷 브라우저에서 Sun ONE Identity Server 관리 콘솔 http://hostname:port/amconsole에 로그온합니다(예를 들어, http://psserver.company22.example.com:80/amconsole)
- [Identity 관리] 탭을 클릭하여 탐색 표시 영역에서 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 서비스를 선택하여 구성 가능한 서비스 목록을 표시합니다.
- 단일 사인온 어댑터 구성 제목이 나올 때까지 탐색 표시 영역을 아래로 스크롤한 다음 SSO 어댑터 옆의 화살표를 클릭하여 데이터 표시 영역에 SSO 어댑터 페이지를 엽니다.
- "default|http:///...", "default|imap:///..." 등과 같이 복사할 문자열을 클릭합니다.
- 선택한 문자열이 구성 설명 필드([추가] 및 [제거] 버튼 바로 위)에 표시된 상태에서 필드의 전체 내용을 선택하고 복사한 다음 단계 2로 이동합니다.
- Sun ONE Identity Server 관리 콘솔에서 [Identity 관리] 탭을 클릭하여 탐색 표시 영역에 [보기] 드롭다운 목록을 표시합니다.
- [보기] 드롭다운 목록에서 사용자를 선택하여 Sun ONE Portal Server 사용자 목록을 표시합니다.
- 사용자 수준 구성을 편집할 사용자 옆의 화살표를 클릭하여 데이터 표시 영역에 또 다른 [보기] 드롭다운 목록을 표시합니다.
- 데이터 표시 영역 내의 [보기] 드롭다운 목록에서 [SSO 어댑터]를 클릭합니다.
- [추가] 및 [제거] 버튼 바로 위에 있는 구성 설명 필드를 클릭하여 들어갑니다.
- 단계 1에서 복사한 SSO 어댑터 구성 문자열을 여기 구성 설명 필드에 붙여넣습니다.
- 가장 오른쪽으로 스크롤하여 SSO 어댑터 구성 상자를 붙여넣습니다.
- 드롭다운 목록에서 [사용자 정의]가 아직 선택되지 않았으면 이를 선택합니다(사용자 정의, 상속 및 무시를 선택할 수 있습니다).
- 필요에 따라 왼쪽으로 스크롤하여 [저장]을 클릭합니다.
다수 사용자를 위한 사용자 수준 구성 변경(스크립트 사용)
사용자 수준에서 직접 많은 사용자에 대해 구성 변경을 적용하려면 특정 사용자와 이러한 각 사용자를 연결할 특정 SSO 어댑터 템플리트 및 구성을 식별하는 단일 스크립트로 구성된 파일을 만듭니다.
그런 다음 이 파일을 참조하는 ldapmodify 명령을 내립니다. 그러면 파일이 스크립트의 사용자 구성 변경을 실행하여 디렉토리 서버를 수정합니다.
- 해당 사이트에 특정한 정보를 사용하여 코드 예제 H-5에 있는 것과 비슷한 파일을 만듭니다.
- .ldif 접미어를 사용하여 파일의 이름을 지정합니다.
- 파일에서, 사용자 수준에서 직접 SSO 어댑터를 구성해야 하는 각 사용자에 대해 별도 항목을 만듭니다.
- 각 사용자에 대해 4줄의 코드를 포함시킵니다.
다음 예제 파일에는 2개의 예제 항목만 있습니다. 이 파일의 이름은 attr.ldif입니다. 두 사용자의 이름은 user1 및 user2입니다. 조직 이름은 example입니다. 두 사용자가 참조하는 SSO 어댑터 구성의 이름인 구성 이름은 group1imapmail입니다. group1imapmail 구성이 어떤 SSO 어댑터 템플리트를 참조하는지를 식별하는 구성 설명은 everyoneimap입니다. 이 예제에서는 두 사용자에서 동일합니다.
코드 예제 H-5 디렉토리 서버에 대한 스크립트가 있는 attr.ldif 파일
dn: uid=user1,ou=People,o=example.com,o=isp
changetype: modify
add:sunSSOAdapterConfigurations
sunSSOAdapterConfigurations:
default|imap:///?configName=group1imapmail&configDesc=everyoneimap
dn: uid=user2,ou=People,o=example.com,o=isp
changetype: modify
add:sunSSOAdapterConfigurations
sunSSOAdapterConfigurations:
imap:///?configName=group1imapmail&configDesc=everyoneimap
- 코드 예제 H-6에서 사용한 것과 유사한 ldapmodify 명령을 사용하여 단계1에서 만든 파일을 디렉토리 서버로 보냅니다. 이러한 명령에 대한 코드를 입력할 때는 해당 사이트에 특정한 정보를 사용합니다.
다음 예제에는 파일을 읽기 위해 디렉토리 서버로 보낼 때 필요한 명령이 나열되어 있습니다. 다음 정보는 본 예제 사이트에 특정합니다. 비밀번호는 mypassword이고, 호스트 이름은 localhost이고, 포트 번호는 기본값 389이고, 전송되는 파일의 이름은 attr.ldif입니다.
코드 예제 H-6 이름이 attr.ldif인 파일을 디렉토리 서버로 보내기
setenv LD_LIBRARY_PATH Directory-server-install-dir/lib
Directory-server-install-dir/shared/bin/ldapmodify -D "cn=Directory Manager
" -w mypassword -h localhost -p 389 -f attr.ldif
앞의 코드는 먼저 경로 LD_LIBRARY_PATH를 설정하고 ldapmodify 명령의 위치를 나타냅니다. 그런 다음 ldapmodify 명령이 내려집니다. 이 명령과 함께 사용된 각 옵션의 요약:
-D
이 경우에는 "cn=Directory Manager"인 구분 이름을 디렉토리에 바인딩되도록 지정합니다.
-w
이 경우에는 mypassword인 디렉토리에 인증을 얻기 위한 비밀번호를 지정합니다.
-h
이 경우에는 localhost인 디렉토리 서버가 실행되고 있는 호스틀 지정합니다.
-p
이 경우에 기본 포트 389인 디렉토리 서버가 수신할 포트를 지정합니다.
-f
이 경우에 attr.ldif인 디렉토리 서버가 읽을 파일을 지정합니다.
ldapmodify 명령에 대한 자세한 내용은 Sun ONE Directory Server Administration Guide를 참조하십시오.