Delegated Administrator 구성 프로그램을 실행한 후 다음 작업을 수행해야 합니다.
스키마 2 호환성 모드에서 LDAP 디렉토리를 사용하는 경우에만 다음 작업을 수행합니다.
config-commda 프로그램은 기본 도메인을 생성합니다.
기본 도메인에 메일 서비스 또는 달력 서비스가 있는 사용자를 생성하려면 먼저 해당 도메인에 메일 서비스 및 달력 서비스를 추가해야 합니다.
이 작업을 수행하려면 commadmin domain modify 명령을 -S mail 및 -S cal 옵션과 함께 사용합니다.
다음 예에서는 commadmin domain modify를 사용하여 기본 도메인에 메일 서비스 및 달력 서비스를 추가하는 방법을 보여 줍니다.
commadmin domain modify -D chris -w bolton -n sesta.com -d siroe.com -S mail,cal -H test.siroe.com
commadmin 명령 구문 및 세부 정보에 대해서는 5 장, 명령줄 유틸리티을 참조하십시오.
Messaging Server는 다음 메일 속성을 사용하여 사용자의 전자 메일 주소 및 대체 전자 메일 주소를 식별합니다.
mailAlternateAddress
mailEquivalentAddress
각 사용자의 메일 속성은 디렉토리 전체에서 고유해야 합니다.
다음 절차는 Directory Server ldif 파일을 수정하여 이와 같은 속성의 고유성을 적용하는 방법을 보여 줍니다. Delegated Administrator(또는 모든 LDAP 도구)가 항목을 추가하거나 메일 속성을 수정할 때마다 ldif 플러그인에서 해당 메일 속성 값의 고유성 여부를 검사합니다. 두 항목의 메일 속성 값이 동일하다는 결과가 나오면 작업이 종료됩니다.
메일 속성에 대한 정의를 보려면 Sun Java Communications Suite 5 Schema Reference의 3 장, Messaging Server and Calendar Server Attributes의 3장, Messaging Server and Calendar Server Attributes를 참조하십시오.
Directory Server 5.2.5(Java ES Release 4) 이상을 실행하고 있는 경우 아래 설명된 절차를 따릅니다.
Directory Server 5.2.4(Java ES Release 4)를 실행하고 있는 경우 먼저 패치 5.2_Patch_4_6313027을 적용한 후 다음 절차를 시작해야 합니다.
이전 버전의 Directory Server를 실행하고 있는 경우 시작하기 전에 먼저 Directory Server 5.2.5 이상으로 업그레이드해야 합니다.
Directory Server 패치에 액세스하려면 http://sunsolve.sun.com으로 이동합니다.
다음 줄이 포함된 텍스트 파일을 생성합니다. 파일에 표시된 매개 변수를 사용자의 설치에 맞는 값으로 바꿉니다.
dn: cn=Uniqueness in Attribute Set,cn=plugins,cn=config objectClass: top objectClass: nsSlapdPlugin objectClass: ds-signedPlugin objectClass: extensibleObject cn: Uniqueness in Attribute Set nssldap-pluginPath: server_root/lif/uid-plugin.so nsslapd-pluginInitfunc: NSUniqueAttrSet_Init nsslapd-pluginType: preoperation nsslapd-pluginEnabled: on nsslapd-pluginarg0: attributeset=mail,mailalternateaddress,mailequivalentaddress nsslapd-pluginarg1: ugldapbasedn nsslapd-plugin-depends-on-type: database nsslapd-pluginId: NSUniqueAttrSet nsslapd-pluginVersion: 5.2 nsslapd-pluginVendor: Sun Microsystems, Inc. nsslapd-pluginDescription: Enforce unique values among an attribute set |
다음 매개 변수를 변경합니다.
server_root를 Directory Server가 설치된 디렉토리로 바꿉니다. 예를 들면 /var/opt/mps/serverroot로 바꿉니다.
ugldapbasedn을 루트 접미어로 바꿉니다. 이 접미어 아래에 있는 모든 항목에 대해 고유성 검사가 수행됩니다.
Directory Server를 중지합니다.
수정한 텍스트 파일을 Directory Server dse.ldif 파일에 추가합니다.
dse.ldif 파일의 위치:
dse.ldif 파일은 다음 디렉토리에 있습니다.
server_root/slapd- machine_name/config
여기서
server_root는 Directory Server가 설치된 디렉토리입니다. 예를 들면 /var/opt/mps/serverroot입니다.
machine_name은 Directory Server가 설치된 호스트 시스템의 이름입니다.
텍스트 파일 추가 위치:
dse.ldif 파일의 uid uniqueness 섹션 뒤에 텍스트 파일을 추가합니다. 이 섹션의 첫 번째 줄(dn)은 다음과 같습니다.
dn: cn=uid uniquenss,cn=plugins,cn=config
Directory Server를 다시 시작합니다.
Directory Server가 시작되면 수정된 dse.ldif 파일을 디렉토리에 설치합니다.
dse.ldif 파일에 오류가 발생하여 Directory Server가 시작되지 않을 경우 샘플 텍스트 파일에서 매개 변수를 바꿀 때 사용했던 값을 확인합니다. LDAP 루트 접미어, Directory Server 설치 경로 및 호스트 시스템이 설치 내용에 맞게 정확해야 합니다.
여전히 Directory Server가 시작되지 않으면 최후의 수단으로 dse.ldif 파일에서 텍스트 파일을 제거하고 Directory Server를 다시 시작할 수 있습니다.
LDAP 디렉토리에서 Delegated Administrator를 통해 관리되는 각 사용자 및 그룹마다 서비스 패키지가 있어야 합니다. 사용자 또는 그룹은 둘 이상의 서비스 패키지를 가질 수 있습니다.
Delegated Administrator 구성 프로그램(config-commda)을 실행할 때 config-commda 프로그램이 디렉토리에 샘플 CoS 템플리트를 설치하도록 선택할 수 있습니다.
샘플 CoS 템플리트와 서비스 패키지에서 사용 가능한 메일 속성에 대한 자세한 내용은 1 장, Delegated Administrator 개요의 서비스 패키지를 참조하십시오.
샘플 CoS 템플리트를 사용하여 서비스 패키지를 생성하고 할당할 수 있습니다. 하지만 샘플 템플리트는 예로 사용하기 위해 제공된 것입니다.
대부분의 경우, 설치 환경의 사용자 및 그룹에 적합한 속성 값으로 사용자 정의한 CoS 템플리트에 기반하여 직접 서비스 패키지를 만들려고 합니다.
서비스 패키지를 직접 만들려면 다음 디렉토리의 da.cos.skeleton.ldif 파일에 저장된 CoS 템플리트를 사용합니다.
da-base/lib/config-templates
이 파일은 사용자 정의 CoS 템플리트 작성을 위한 템플리트로 사용하기 위해 특별히 만들어진 것으로, Delegated Administrator가 구성된 경우에는 LDAP 디렉토리에 설치되지 않습니다.
da.cos.skeleton.ldif 파일에는 Delegated Administrator에서 제공하는 각 CoS 정의에 대해 매개 변수화된 템플리트가 들어 있습니다.
standardUserMail
standardUserCalendar
standardUserMailCalendar
standardGroupMail
standardGroupCalendar
standardGroupMailCalendar
da.cos.skeleton.ldif 파일에 있는 매개 변수화된 템플리트 중 하나 이상을 사용하여 직접 CoS 템플리트를 생성할 수 있습니다.
da.cos.skeleton.ldif 파일에 있는 CoS 템플리트는 다음과 같습니다.
# Templates for creating COS templates for service packages. # # There are six COS definitions : # standardUserMail # standardUserCalendar # standardUserMailCalendar # standardGroupMail # standardGroupCalendar # standardGroupMailCalendar # # Each definition can have zero or more COS templates which # define specific values for the attributes listed in the # COS definition. # # Each COS definition points to a corresponding subdirectory # in which COS templates for that definition (and no other # definition) are found. The templates directory structure # is as follows: # standardUserMail => o=mailuser,o=costemplates,<ugldapbasedn> # standardUserCalendar => o=calendaruser,o=costemplates, # <ugldapbasedn> # standardUserMailCalendar => o=mailcalendaruser,o=costemplates, # <ugldapbasedn> # standardGroupMail => o=mailgroup,o=costemplates, # <ugldapbasedn> # standardGroupCalendar => o=calendargroup,o=costemplates, # <ugldapbasedn> # standardGroupMailCalendar => o=mailcalendargroup,o=costemplates, # <ugldapbasedn> # # Thus, all COS templates for the user mail service are found in the # o=mailuser,o=costemplates,<ugldapbasedn> directory, etc. # # It is not necessary to have any templates for a given definition. # In that case default values are assumed for those attributes defined # in the COS definition. # # If a template is created for a definition there should be at least # one attribute with a defined value. # # Consult documentation for values for the attributes. # Documentation includes units and default values. # # The finished COS derived from this skeleton is added to the # directory with the following command: # # ldapmodify -D <directory manager> -w <password> # -f <cos.finished.template.ldif> # # ############################################################ # # standardMailUser COS template # ############################################################ # There must be a least one of the following attributes: # - mailMsgMaxBlocks # - mailQuota # - mailMsgQuota # - mailAllowedServiceAccess # dn: cn=<service package name>,o=mailuser,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> mailMsgMaxBlocks: <mailMsgMaxBlocksValue> mailQuota: <ma:ilQuotaValue> mailMsgQuota: <mailMsgQuotaValue> mailAllowedServiceAccess: <mailAllowedServiceAccessValue> daServiceType: mail user# # ############################################################ # # standardCalendarUser COS template # ############################################################ # There must be a least one of the following attributes: # - icsPreferredHost # - icsDWPHost # - icsFirstDay # dn: cn=<service package name>,o=calendaruser,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> icsPreferredHost: <preferredHostValue> icsDWPHost: <dwpHostValue> icsFirstDay: <firstDayValue> daServiceType: calendar user # # ############################################################ # # standardMailCalendarUser COS template # ############################################################ # There must be a least one of the following attributes: # - mailMsgMaxBlocks # - mailQuota # - mailMsgQuota # - mailAllowedServiceAccess # dn: cn=<service package name>,o=mailcalendaruser,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> mailMsgMaxBlocks: <mailMsgMaxBlocksValue> mailquota: <mailQuotaValue> mailmsgquota: <mailMsgQuotaValue> mailAllowedServiceAccess: <mailAllowedServiceAccessValue> daServiceType: calendar user daServiceType: mail user # # ############################################################ # # standardMailGroup COS template # ############################################################ # There must be a least one of the following attributes: # - mailMsgMaxBlocks # # dn: cn=<service package name>,o=mailgroup,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> mailMsgMaxBlocks: <mailMsgMaxBlocksValue> daServiceType: mail group # # ############################################################ # # standardCalendarGroup COS template # ############################################################ # There must be a least one of the following attributes: # - icsdoublebooking # - icsautoaccept # # dn: cn=<service package name>,o=calendargroup,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> icsdoublebooking: <doubleBookingValue> icsautoaccept: <autoAcceptValue> daServiceType: calendar group # # ############################################################ # # standardMailCalendarGroup COS template # ############################################################ # There must be a least one of the following attributes: # - icsdoublebooking # - icsautoaccept # - mailMsgMaxBlocks # # dn: cn=<service package name>,o=mailcalendargroup,o=cosTemplates, <ugldapbasedn> changetype: add objectclass: top objectclass: LDAPsubentry objectclass: extensibleobject objectclass: cosTemplate cn: <service package name> mailmsgmaxblocks: <mailMsgMaxBlocksValue> icsdoublebooking: <doubleBookingValue> icsautoaccept: <autoAcceptValue> daServiceType: calendar group daServiceType: mail group |
da.cos.skeleton.ldif 파일에 있는 매개 변수화된 템플리트 중 하나를 복사하고 이름을 바꿉니다.
Delegated Administrator 설치 시 da.cos.skeleton.ldif 파일이 다음 디렉토리에 설치됩니다.
da-base/lib/config-templates
da.cos.skeleton.ldif 파일의 다음 템플리트 중 하나를 선택하여 복사하고 이름을 바꿉니다.
standardUserMail standardUserCalendar standardUserMailCalendar standardGroupMail |
템플리트의 복사본에서 다음 매개 변수를 편집합니다.
<ugldapbasedn>
루트 접미어 매개 변수 <rootSuffix>를 사용자 루트 접미어(예: o=usergroup)로 변경합니다.
<ugldapbasedn> 매개 변수가 DN에 표시됩니다.
<service package name>
<service package name> 매개 변수를 고유한 서비스 패키지 이름으로 변경합니다.
<service package name> 매개 변수가 DN 및 cn에 나타납니다.
메일 속성 값:
<mailMsgMaxBlocksValue> <mailQuotaValue> <mailMsgQuotaValue> <mailAllowedServiceAccessValue> |
이 값을 해당 사양에 맞게 편집합니다.
예를 들어, 메일 속성에 대해 다음 값을 입력할 수 있습니다.
mailMsgMaxBlocks: 400 mailQuota: 400000000 mailMsgQuota: 5000 mailAllowedServiceAccess: imap:ALL$+pop:ALL$+smtp:ALL$+http:ALL |
달력 속성 값:
<preferredHostValue> <dwpHostValue> <firstDayValue> |
이 매개 변수는 icsPreferredHost, icsDWPHost 및 icsFirstDay LDAP 속성의 값을 나타냅니다.
이 값을 해당 사양에 맞게 편집합니다.
이러한 속성의 정의 및 설명에 대한 내용은 Sun Java System Communications Services Schema Reference의 "Chapter 3: Messaging Server and Calendar Server Attributes"를 참조하십시오.
사용자 정의 CoS 템플리트에서 하나 이상의 속성을 사용해야 합니다. 사용자 정의 템플리트에서 네 개의 메일 속성을 모두 사용할 필요는 없습니다. 서비스 패키지에서 하나 이상의 속성을 삭제할 수 있습니다.
LDAP 디렉토리 도구 ldapmodify를 사용하여 디렉토리에 서비스 패키지를 설치합니다.
예를 들면 다음 명령을 실행할 수 있습니다.
ldapmodify -D <directory manager> -w <password> -f <cos.finished.template.ldif>
여기서
<directory manager>는 Directory Server 관리자의 이름입니다.
<password>는 Directory Service 관리자의 비밀번호입니다.
<cos.finished.template.ldif>는 디렉토리에 서비스 패키지로 설치될 편집된 ldif 파일의 이름입니다.
LDAP 디렉토리를 스키마 2 호환성 모드에서 사용하고 있는 경우 Delegated Administrator에서 사용자의 디렉토리를 관리할 수 있게 하려면 디렉토리에 ACI를 수동으로 추가해야 합니다. 다음 단계를 수행합니다.
OSI 루트에 다음 두 ACI를 추가합니다. /opt/SUNWcomm/config 디렉토리에 있는 usergroup.ldif 파일에서 다음 두 ACI를 찾을 수 있습니다.
ugldapbasedn을 해당 사용자/그룹 접미어로 바꿉니다. 편집한 usergroup.ldif를 LDAP 디렉토리에 추가합니다.
# # acis to limit Org Admin Role # ######################################## # dn: <local.ugldapbasedn> ######################################## dn: <ugldapbasedn> changetype: modify add: aci aci: (target="ldap:///($dn),<ugldapbasedn>")(targetattr="*") (version 3.0; acl "Organization Admin Role access deny to org node"; deny (write,add,delete) roledn = "ldap:///cn=Organization Admin Role,($dn),<ugldapbasedn>";) |
dn: <ugldapbasedn> changetype: modify add: aci aci: (target="ldap:///($dn),<ugldapbasedn>")(targetattr="*") (version 3.0; acl "Organization Admin Role access allow read to org node"; allow (read,search) roledn = "ldap:///cn=Organization Admin Role,($dn),<ugldapbasedn>";) |
다음 두 ACI를 DC 트리 루트 접미어에 추가합니다. 다음 두 ACI는 /opt/SUNWcomm/lib/config-templates 디렉토리의 dctree.ldif 파일에서 찾을 수 있습니다.
dctreebasedn을 DC 트리 루트 접미어로 바꾸고, ugldapbasedn을 사용자/그룹 접미어로 바꾸어야 합니다. 편집한 dctree.ldif를 LDAP 디렉토리에 추가합니다.
# # acis to limit Org Admin Role # ######################################## # dn: <dctreebasedn> ######################################## dn: <dctreebasedn> changetype: modify add: aci aci: (target="ldap:///($dn),<dctreebasedn>")(targetattr="*") (version 3.0; acl "Organization Admin Role access deny to dc node"; deny (write,add,delete) roledn = "ldap:///cn=Organization Admin Role,($dn),<ugldapbasedn>";) |
dn: <dctreebasedn> changetype: modify add: aci aci: (target="ldap:///($dn),<dctreebasedn>")(targetattr="*") (version 3.0; acl "Organization Admin Role access allow read to dc node"; allow (read,search) roledn = "ldap:///cn=Organization Admin Role,($dn),<ugldapbasedn>";) |
DC 트리 루트 접미어에 다음의 추가 ACI를 추가합니다. (이 ACI는 dctree.ldif 파일에 없음.)
dn:<dctreebasedn> changetype:modify add:aci aci: (target="ldap:///<dctreebasedn>")(targetattr="*") (version 3.0; acl "S1IS Proxy user rights"; allow (proxy) userdn = "ldap:///cn=puser,ou=DSAME Users,<ugldapbasedn>";) |
dn:<dctreebasedn> changetype:modify add:aci aci: (target="ldap:///<dctreebasedn>")(targetattr="*") (version 3.0; acl "S1IS special dsame user rights for all under the root suffix"; allow (all) userdn ="ldap:///cn=dsameuser,ou=DSAME Users,<ugldapbasedn>";) |
dn:<dctreebasedn> changetype:modify add:aci aci: (target="ldap:///<dctreebasedn>")(targetattr="*") (version 3.0; acl "S1IS Top-level admin rights"; allow (all) roledn = "ldap:///cn=Top-level Admin Role,<ugldapbasedn>";) |
AMConfig.properties 파일에서 com.iplanet.am.domaincomponent 등록 정보를 해당 DC 트리 루트 접미어로 설정합니다.
예를 들어, < AM_base_directory>/lib/AMConfig.properties 파일에서 다음 줄을 수정합니다.
수정 전
com.iplanet.am.domaincomponent=o=isp
수정 후
com.iplanet.am.domaincomponent=o=internet
Access Manager에서 호환성 모드 사용을 활성화합니다.
Access Manager 콘솔의 관리 콘솔 서비스 페이지에서 도메인 구성 요소 트리 사용 가능 확인란을 선택(활성화)합니다.
다음 예와 같이 inetdomain 객체 클래스를 모든 DC 트리 노드(예: dc=com,o=internet)에 추가합니다.
/var/mps/serverroot/shared/bin 298% ./ldapmodify -D "cn=Directory Manager" -w password dn: dc=com,o=internet changetype: modify add: objectclass objectclass: inetdomain |
웹 컨테이너를 다시 시작합니다.