구성 프로그램(config-commda)을 사용하여 Delegated Administrator를 설치하고 구성했다면 필요에 따라 구성을 사용자 정의할 수 있습니다. 이 장에서는 일부 Delegated Administrator 기능을 사용자 정의하는 방법과 관련하여 몇 가지 예를 제공합니다.
Delegated Administrator를 사용자 정의하기 전에 기존 구성 파일을 백업해야 합니다.
또한 사용자 정의한 구성 데이터는 Delegated Administrator를 업그레이드할 때 손실될 수 있으므로 Delegated Administrator를 업그레이드하기 전에 사용자 정의한 구성 내용을 보존하거나 Delegated Administrator 구성 프로그램을 다시 실행해야 합니다. 자세한 내용은 기존 구성 보존을 참조하십시오.
이 장은 다음 내용으로 구성되어 있습니다.
서버 차원 기본값을 사용하여 기본 메일 호스트 및 기본 메일 저장소를 설정하려면 이 절에서 설명하는 작업을 수행하면 됩니다.
콘솔(특히 새 조직 마법사 및 조직 등록 정보 화면)에서 기본 메일 호스트 필드를 제거하려면 다음 단계를 수행합니다.
Security.properties 파일을 편집합니다. 이 절에서는 이 단계에 대해 설명합니다.
MailHostStorePlugin을 활성화합니다. 다음 절의 Delegated Administrator 플러그인 추가에서 이 단계에 대해 설명합니다.
Security.properties 파일을 사용하면 모든 역할 또는 개별 역할에 대해 Delegated Administrator 콘솔을 사용자 정의할 수 있습니다.
Security.properties 파일은 da_base/da/WEB-INF/classes/com/sun/comm/da/resources 디렉토리에 있습니다.
콘솔에서 기본 메일 호스트를 제거하려면 아래에 표시된 행을 Security.properties 파일에 추가합니다.
# Remove Preferred Mail Host from UI *.NewOrganizationPage6.PreferredMailHostProperty=INVISIBLE *.NewOrganizationSummaryPage.PreferredMailHostSummaryProperty=INVISIBLE *.OrgProperties.MailHostName=INVISIBLE *.OrgProperties.MailHostNameText=INVISIBLE *.OrgProperties.MailHostValue=INVISIBLE |
주의: 사용자 정의를 위해 이 파일에 행을 추가할 수 있지만 이미 존재하는 행을 편집하면 안 됩니다. 기존 행을 편집하면 콘솔에서 예외가 발생할 수 있습니다.
파일에서 등록 정보는 Security Element Name=Permission의 형식으로 표시됩니다.
보안 요소 이름은 Role Name.Container View Name.Console Element Name의 형식으로 표시됩니다.
보안 요소는 권한이 정의되는 콘솔 요소 및 역할을 지정합니다. 요소 이름을 모르면 페이지 소스를 확인하여 페이지상의 이름과 해당 콘솔 요소를 일치시킵니다.
페이지상의 이름은 정규화된 이름입니다. 이름 중에서 Container View Name .Console Element Name 형식의 마지막 두 요소만 선택해야 합니다.
Delegated Administrator에서 유효한 역할 이름은 다음과 같습니다.
“ProviderAdminRole”(SPA)의 역할에 대한 자세한 내용은 부록 A, 서비스 공급업체 관리자 및 서비스 공급업체 조직를 참조하십시오.
“OrganizationAdminRole”(OA)
“Top-levelAdminRole”(TLA)
“*”(특정 역할에서 대체되지 않는 한 모든 역할에 하나의 권한을 적용함)
권한은 다음 문자열 중 하나여야 합니다.
EDITABLE – 보안 요소가 편집 가능함을 나타냅니다.
NONEDITABLE – 보안 요소가 읽기 전용임을 나타냅니다.
VISIBLE – 보안 요소가 표시되며 읽기 전용임을 나타냅니다.
INVISIBLE – 보안 요소가 표시되지 않음을 나타냅니다.
다음 플러그인을 지원하도록 Delegated Administrator를 사용자 정의할 수 있습니다.
기본적으로 이 플러그인은 비활성화되어 있습니다. 비즈니스 조직을 생성할 때 preferredmailhost를 지정하지 않으면 예외가 발생합니다. 플러그인이 활성화되어 있으면 해당 속성이 없는 경우에만 플랫 파일(이 절의 뒷부분에서 설명)의 값이 사용됩니다.
원하는 DSN 주소를 반환하려면 도메인 값을 사용합니다. 기본 구현은 MAILER-DAEMON@<domain> 문자열을 반환하는 것입니다.
고유 아이디 문자열을 생성합니다. 기본 구현에서는 호출자에게 반환할 GUID를 생성합니다.
이 플러그인을 활성화하려면 다음 디렉토리에 있는 commcli servlet resource.properties 파일을 편집합니다.
da_base/data/WEB-INF/classes/sun/comm/cli/server/servlet/ resource.properties |
(기본적으로 da_base는 /opt/SUNWcomm임)
플러그인은 다음과 같은 섹션 제목으로 resource.properties 파일에 있습니다.
######################## # Plugin Configuration # ########################## |
각각 "plugin"이라는 접미어를 갖습니다. 현재 목록은 다음과 같습니다.
jdapi-mailhoststoreplugin=disabled jdapi-mailhoststorepluginclass=sun.comm.cli.server.util.MailHostStorePlugin jdapi-mailhoststorepluginfile=/tmp/mailhostmailstore jdapi-maildomainreportaddressplugin=enabled jdapi-maildomainreportaddresspluginclass=sun.comm.cli.server. util.MailDomainReportAddressPlugin jdapi-uidautogenerationplugin=disabled jdapi-uidautogenerationpluginclass=sun.comm.cli.server.util.UidPlugin |
각 플러그인은 2개 이상의 행으로 구성되며 각 행의 형식은 다음과 같습니다.
jdapi-<name>plugin= “enabled” | “disabled”
jdapi-<name>pluginclass=sun.comm.cli.server.util/ <java class name> |
플러그인을 활성화하려면 “disabled”를 “enabled”로 변경합니다.
이 섹션에 나열된 모든 플러그인에 대해 플러그인 클래스가 제공됩니다. 클래스는 다음 디렉토리에 있습니다.
da_base/data/WEB-INF/classes/sun/comm/cli/server/util
이 클래스로는 어떤 작업도 할 필요가 없습니다.
MailHostStorePlugin에는 플랫 파일이 필요하며 플러그인의 세 번째 행에 포함되어 있습니다. 플러그인은 플랫 파일에서 값을 읽고 이 값을 사용하여 속성 값을 설정합니다. 플러그인이 활성화되면 이 파일이 있어야 하며, 그렇지 않으면 오류가 발생합니다.
jdapi-mailhoststoreplugin o jdapi-mailhoststoreplugininf=<full file name> o file has one line o value is that for : o preferredmailhost attribute o preferredmailmessagestore attribute o form o <mailhost>:<mailpartition> |
Delegated Administrator를 사용하여 사용자 정의 객체 클래스를 새 사용자, 그룹, 자원 또는 조직의 LDAP 항목에 추가할 수 있습니다. 이 작업을 수행하려면 Access Manager가 디렉토리에 설치한 해당 객체 생성 템플리트를 사용자 정의해야 합니다.
예를 들어, BasicUser 생성 템플리트는 새 사용자 생성 시 사용자 항목에 추가되는 객체 클래스 및 속성을 결정합니다. 사용자 정의 객체 클래스를 사용하여 BasicUser 생성 템플리트를 업데이트할 수 있습니다. 그렇게 하면 사용자 정의 객체 클래스가 표준 객체 클래스와 함께 각 새 사용자 항목에 추가됩니다.
다음 절차에서는 BasicUser 템플리트를 사용자 정의하는 방법에 대해 설명합니다. BasicGroup, BasicResource 및 BasicOrganization 생성 템플리트를 사용자 정의할 때도 동일한 절차를 수행하면 됩니다.
사용자 정의 객체 클래스가 디렉토리 스키마에 정의되어 있는지 확인합니다.
다음 디렉토리 항목을 찾습니다.
ou=basicuser,ou=creationtemplates,ou=templates,ou=default, ou=globalconfig,ou=1.0,ou=dai,ou=services, o=$Root_Suffix |
여기서 $Root_Suffix는 해당 디렉토리의 루트 접미어입니다.
다음 attribute:value를 항목에 추가합니다.
sunkeyValue:required=objectClass=$Your_Custom_Objectclass |
여기서 $Your_Custom_Objectclass는 사용자 정의 객체 클래스입니다.
Delegated Administrator 구성 프로그램(config-commda)을 실행하면 Delegated Administrator에 로그인할 때 사용하는 값이 uid로 설정됩니다.
예를 들어, TLA로 로그인하려고 하고 TLA의 uid가 john.doe라면 john.doe를 사용하여 Delegated Administrator에 로그인합니다.
사용자 로그인에 다른 값을 추가로 사용할 수 있도록 Delegated Administrator를 사용자 정의할 수 있습니다. 예를 들어, 메일 주소(mail)를 추가할 수 있습니다.
config-commda 프로그램은 다음 예와 같이 resource.properties 파일에서 loginAuth-idAttr 등록 정보를 사용하여 이 값을 uid로 설정합니다.
loginAuth-searchBase=<$rootSuffix> servicepackage-cosdefbasedn = <$rootSuffix> loginAuth-idAttr-1=uid |
여기서 <$rootSuffix>는 해당 디렉토리의 루트 접미어입니다.
resource.properties 파일은 다음 위치에 있습니다.
da_base/data/WEB-INF/classes/sun/comm/cli/server/servlet/ resource.properties |
resource.properties 파일을 편집하여 사용자 로그인에 대한 값을 추가로 설정할 수 있습니다.
예를 들어, 메일 주소(예: john.doe@sesta.com)를 사용하여 로그인할 수 있도록 하려면 resource.properties 파일에 다음 행을 추가합니다.
loginAuth-searchBase=<$rootSuffix> servicepackage-cosdefbasedn = <$rootSuffix> loginAuth-idAttr-1=uid loginAuth-idAttr-2=mail |
여기서 <$rootSuffix>는 해당 디렉토리의 루트 접미어입니다.
값을 새로 추가할 때마다 loginAuth-idAttr 등록 정보를 1씩 증가시켜야 합니다. 이 예에서는 두 번째 값이 추가되므로 -2를 loginAuth-idAttr에 추가합니다.
loginAuth-idAttr 등록 정보의 여러 인스턴스를 추가할 수 있습니다.
loginAuth-idAttr-1=uid loginAuth-idAttr-2=mail | loginAuth-idAttr-n=<login-in value> |
기본적으로 Delegated Administrator에서는 사용자에게 서비스 패키지를 지정하지 않고 새 사용자를 생성할 수 있습니다.
모든 새 사용자에게 하나 이상의 서비스 패키지를 지정하도록 기본 설정을 변경할 수 있습니다.
텍스트 편집기에서 daconfig.properties 파일을 엽니다.
daconfig.properties 파일은 기본적으로 다음 디렉토리에 있습니다.
/var/opt/SUNWcomm/da/WEB-INF/classes/com/sun/ comm/da/resources/daconfig.properties |
user.atleastOneServicePackage 등록 정보의 값을 false에서 true로 변경합니다.
기본적으로 이 값은 false입니다.
예를 들면 다음과 같습니다.
user.atleastOneServicePackage=true
이 값을 true로 설정한 후에는 Delegated Administrator 콘솔에서 새 사용자 만들기 마법사를 사용할 때 하나 이상의 서비스 패키지를 지정해야 성공적으로 새 사용자를 생성할 수 있습니다.
새 Calendar Server 표준 시간대를 추가하여 Delegated Administrator를 사용자 정의할 수 있습니다. 그러면 Delegated Administrator가 새 표준 시간대를 사용하여 조직, 사용자, 그룹 및 자원을 관리할 수 있습니다.
표준 시간대를 추가하면 새로 생성된 사용자의 기본 표준 시간대로 설정할 수 있습니다.
Calendar Server에서 표준 시간대를 추가합니다.
이 단계를 수행하려면 timezones.ics 파일 및 기타 Calendar Server 파일을 편집해야 합니다. 지침은 Sun Java System Calendar Server 관리 설명서의 “Calendar Server 표준 시간대 관리” 장에 있는 “새 표준 시간대 추가”를 참조하십시오.
UserCalendarService.xml, DomainCalendarService.xml 및 Resources.properties 파일을 백업합니다.
xml 파일은 기본적으로 다음 디렉토리에 있습니다.
/opt/SUNWcomm/lib/services
Resources.properties 파일은 기본적으로 다음 디렉토리에 있습니다.
/var/opt/SUNWcomm/da/WEB-INF/classes/com/sun/ \ comm/da/resources |
또한 Delegated Administrator를 업그레이드하기 전에 사용자 정의한 구성 데이터를 보존하거나 Delegated Administrator 구성 프로그램을 다시 실행하십시오.
UserCalendarService.xml 및 DomainCalendarService.xml 파일을 편집하여 Delegated Administrator에서 새 표준 시간대를 추가합니다.
이러한 xml 파일은 기본적으로 다음 디렉토리에 위치합니다.
/opt/SUNWcomm/lib/services
UserCalendarService.xml 및 DomainCalendarService.xml 파일 모두에서 다음과 같은 항목 제목을 찾습니다.
<AttributeSchema name="icstimezone" type="single choice" syntax="string" any="optional|adminDisplay"> <ChoiceValues> |
<ChoiceValues>의 목록에 새 표준 시간대 값을 추가합니다.
Access Manager amadmin 유틸리티를 실행하여 현재 서비스를 삭제하고 업데이트된 서비스를 추가합니다.
UserCalendarService.xml 및 DomainCalendarService.xml 파일 모두에 대해 다음 amadmin 명령을 실행합니다.
./amadmin -u <admin> -w <password> -r DomainCalendarService |
./amadmin -u <admin> -w <password> -s $PATH/DomainCalendarService.xml |
또한 새 표준 시간대를 기본값으로 설정하려면 두 작업을 모두 수행한 후 이 amadmin 명령을 실행할 수 있습니다. (다음 작업은 기본 표준 시간대를 변경하는 방법을 설명합니다.)
변경 내용을 적용하려면 웹 컨테이너를 다시 시작합니다.
UserCalendarService.xml 및 DomainCalendarService.xml 파일에서 다음 값을 편집합니다.
<DefaultValues> <Value>America/Denver</Value> </DefaultValues> |
xml 파일의 다음 항목 아래에서 <DefaultValues>를 찾을 수 있습니다.
<AttributeSchema name="icstimezone" |
Access Manager amadmin 유틸리티를 실행하여 현재 서비스를 삭제하고 업데이트된 서비스를 추가합니다.
UserCalendarService.xml 및 DomainCalendarService.xml 파일 모두에 대해 다음 amadmin 명령을 실행합니다.
./amadmin -u <admin> -w <password> -r DomainCalendarService |
./amadmin -u <admin> -w <password> -s $PATH/DomainCalendarService.xml |
변경 내용을 적용하려면 웹 컨테이너를 다시 시작합니다.
Delegated Administrator 데이터 디렉토리 아래에 있는 Resources.properties 파일을 편집합니다.
Resources.properties 파일은 기본적으로 다음 디렉토리에 있습니다.
/var/opt/SUNWcomm/da/WEB-INF/classes/com/sun/ \ comm/da/resources |
Resources.properties를 편집하려면 rsrc.Timezone 등록 정보를 검색하고 해당 목록에 새 표준 시간대를 추가합니다.
이 파일을 편집하고 나면 Delegated Administrator 콘솔의 해당 목록 상자에 새 표준 시간대가 나타납니다.