Sun Java System Calendar Server 6 2005Q4 관리 설명서

1장 개요

Sun JavaTM System Calendar Server 62005Q4(Calendar Server)는 기업 및 서비스 공급자를 위해 중앙 집중식 달력 및 예약 기능을 제공하는 확장 가능한 웹 기반 솔루션입니다. Calendar Server는 이벤트와 태스크를 모두 관리하는 개인 및 그룹 달력 기능뿐 아니라 회의실, 장비 등의 자원을 관리하는 달력 기능도 지원합니다.

기본 구성 시나리오에 관한 자세한 내용은 Sun Java System Communications Services 6 2005Q4 Deployment Planning Guide를 참조하십시오.

이 장은 다음 내용으로 구성되어 있습니다.


주 –

이번 장과 다음 장에서 지정되는 정규화된 디렉토리 경로는 Solaris 플랫폼에서의 경로입니다. Solaris에서의 기본 경로는 다음과 같습니다.

/opt/SUNWics5/cal

/var/opt/SUNWics5

/etc/opt/SUNWics5

Linux®에서의 기본 경로는 다음과 같습니다.

/opt/sun/calendar

/var/opt/sun/

/etc/opt/sun

Linux 사용자는 Solaris 기본값을 표시하는 명령 중 기본 경로를 대체해야 합니다.


Calendar Server 설치

Calendar Server의 설치와 구성이 이전 Calendar Server 릴리스(2003Q4 버전 이전)에서 크게 변경되었습니다. Calendar Server에는 더 이상 독립형 설치 프로그램이 없습니다.

Calendar Server 2003Q4(6.0) 이상이 설치되어 있지 않은 경우에는 Sun Java Enterprise System 설치 프로그램을 사용하여 2005Q4 버전을 설치해야 합니다. 이 설치 프로그램을 사용하면 다른 Sun 구성 요소 제품과 패키지도 설치할 수 있습니다. Java Enterprise System 설치 프로그램에 대한 자세한 내용은 Sun Java Enterprise System 2005Q4 Installation Guide for UNIX를 참조하십시오.

이전 버전의 Sun Java Enterprise System에서 업그레이드하려는 경우 Sun Java System 2005Q4 Upgrade and Migration Guide에 업그레이드 프로세스가 나와 있습니다.

이전 버전의 Calendar Server에서 마이그레이션하는 방법에 대한 자세한 내용은 4 장, 데이터베이스 마이그레이션 유틸리티의 정보를 참조하십시오.

설치 후 구성

Calendar Server 를 설치하고 나면 구성을 수행해야 합니다. 설치 프로그램은 설치 프로세스의 일부로 구성을 수행하지는 않습니다.

Procedure고급 태스크 목록

단계
  1. Directory Server 설치 스크립트 comm_dssetup.pl을 실행하여 Sun Java System Directory Server 5를 구성합니다(스크립트가 아직 실행되지 않은 경우).

    이 스크립트는 다음 디렉토리에 있습니다. /opt/SUNWcomds/sbin .

    실행 정보는 2 장, Directory 준비 스크립트(comm_dssetup.pl) 을 참조하십시오.

  2. Calendar Server 구성 프로그램(csconfigurator.sh)을 실행하여 사이트 특정 요구 사항을 구성하고 새 ics.conf 구성 파일을 만듭니다.

    ics.conf 파일에 포함된 매개 변수에 대한 설명을 보려면 부록 E, Calendar Server 구성 매개 변수 를 참조하십시오.

    이 프로그램은 다음 디렉토리에 있습니다. /opt/SUNWics5/sbin

    csconfigurator.sh 실행에 대한 자세한 내용은 3 장, Calendar Server 구성 프로그램(csconfigurator.sh) 을 참조하십시오.

Calendar Server 특별 계정

Calendar Server 특별 계정에는 다음이 포함됩니다.

Calendar Server 관리자(calmaster)

Calendar Server 관리자는 Calendar Server를 관리할 수 있는 특정 사용자 아이디로 해당 비밀번호를 가지고 있습니다. 예를 들어, Calendar Server 관리자는 Calendar Server 서비스 시작/중지, 사용자 추가/삭제, 달력 작성/삭제 등의 작업을 수행할 수 있습니다. 이 사용자는 Calendar Server에 대해 관리자 권한을 갖지만 Directory Server에 대한 관리자 권한을 반드시 갖지는 않습니다.

Calendar Server 관리자의 기본 사용자 아이디는 calmaster이지만 원한다면 Calendar Server 구성 중에 다른 사용자를 지정할 수 있습니다. 설치한 후에 ics.conf 파일의 service.admin.calmaster.userid 매개 변수에서 다른 사용자로 지정할 수도 있습니다.

Calendar Server 관리자에게 지정하는 사용자 아이디는 Directory Server에서 유효한 사용자 계정이어야 합니다. 구성 과정에서 Calendar Server 관리자 계정이 Directory Server에 없으면 구성 프로그램이 직접 해당 계정을 만듭니다.

다음 표에서는 ics.conf 파일의 관리자 구성 매개 변수를 설명합니다.

표 1–1 Calendar Server 관리자(calmaster) 구성 매개 변수

매개 변수 

설명 

service.admin.calmaster.userid

Calendar Server 관리자로 지정된 사람의 사용자 아이디입니다. Calendar Server 설치 과정에서 이 필수 값을 제공해야 합니다. 기본값은 "calmaster"입니다.

service.admin.calmaster.cred

Calendar Server 관리자로 지정된 사용자 아이디의 비밀번호입니다. 설치 과정에서 이 필수 값을 제공해야 합니다. 

caldb.calmaster

Calendar Server 관리자의 전자 메일 주소입니다. 기본값은 "root@localhost"입니다.

service.admin.calmaster.overrides.

accesscontrol

Calendar Server 관리자가 액세스 제어를 무시할 수 있는지 여부를 나타냅니다. 기본값은 "no"입니다.

service.admin.calmaster.wcap.

allowgetmodifyuserprefs

 

Calendar Server 관리자가 WCAP 명령을 사용하여 사용자 기본 설정을 얻고 지정할 수 있는지 여부를 나타냅니다. 기본값은 "no"입니다.

service.admin.ldap.enable

service.admin.calmaster.userid에 지정된 사용자의 사용자 인증에 LDAP 서버를 사용할 수 있습니다. 기본값은 “yes”입니다.

Calendar Server 사용자 및 그룹

이 특수 계정은 Calendar Server에서 실행되는 사용자 아이디 및 그룹 아이디입니다. 특별히 피할 만한 다른 이유가 있지 않은 한 기본값인 icsusericsgroup을 사용하며, 이 값이 없는 경우 구성 프로그램에서 자동으로 만들어집니다.

하지만 Calendar Server 구성 프로그램을 실행할 때 icsuser icsgroup이 아닌 다른 값으로 지정할 수 있습니다. 이러한 값은 ics.conf 파일의 local.serveruidlocal.servergid 매개 변수에 각각 저장됩니다.

수퍼유저(root)

수퍼유저(root)로 로그인하거나 수퍼유저가 되어야 Calendar Server를 설치할 수 있습니다. 또한 수퍼유저는 명령줄 유틸리티를 사용하여 Calendar Server를 관리할 수 있습니 다. 하지만 일부 작업에서는 Calendar Server 파일의 액세스 문제를 방지하기 위해 수퍼유저 대신 icsuser icsgroup(또는 관리자가 선택한 값)이 되어야 합니다.

프록시 관리자 로그인

관리자가 사용자 달력을 관리할 수 있으려면 구성 파일 ics.conf에서 매개 변수를 설정해야 합니다. 기본값인 "no"는 이러한 종류의 프록시 인증이 허용되지 않는다는 것을 의미합니다.

Communications Express를 사용하는 경우 이 매개 변수는 "yes"로 설정되어야 합니다.

이 매개 변수를 설정하고 프록시 로그인의 작동 여부를 확인하는 방법에 대해서는 로그인 및 인증 구성을 참조하십시오.

Calendar Server 최종 사용자 관리

최종 사용자는 웹 그래픽 사용자 인터페이스(GUI), Sun Java System Communications Express를 사용하여 클라이언트 컴퓨터에서 Calendar Server에 연결합니다. 사용자는 LDAP 디렉토리에 고유한 항목이 있어야 합니다. 각 사용자는 하나 이상의 달력을 가지며 하나 이상의 그룹에 속할 수 있습니다.

적절한 권한이 있는 관리자는 Delegated Administrator 유틸리티(명령줄) 또는 콘솔(GUI)을 사용하여 사용자 LDAP 항목 또는 자원 LDAP 항목을 추가, 삭제 또는 수정할 수 있습니다.

Delegated Administrator 유틸리티(commadmin)에 대한 자세한 내용은 Sun Java System Communications Services 6 2005Q4 Delegated Administrator Guide를 참조하십시오.

Delegated Administrator 콘솔에 대한 자세한 내용은 콘솔 온라인 도움말을 참조하십시오.

또한 필요한 경우 ldapmodify를 사용하여 LDAP 항목을 직접 수정할 수 있습니다. ldapmodify에 대한 자세한 내용은 Sun ONE Directory Server Resource Kit 5.2 Tools Reference를 참조하십시오.


주의 – 주의 –

Java Enterprise System 배포 이전에 사용되던 csuser와 같은 유틸리티 프로그램은 여전히 Calendar Server와 함께 번들로 제공됩니다. 배포에서 Access Manager를 사용하는 경우에는 사용자, 도메인 또는 자원의 관리나 생성에 이 유틸리티를 사용하지 마십시오. 몇 가지 예외가 있습니다. 이 설명서에서는 그러한 예외가 적용되는 경우에 알맞은 유틸리티를 소개합니다.


이 절에서는 사용자와 사용자 달력 관리에 대해 다음 내용으로 구성되어 있습니다.

Calendar Server 사용자 만들기

Calendar Server 사용자는 수동 또는 자동으로 만들 수 있습니다.

Calendar Server 사용자 인증

Calendar Server에서는 Sun Java System Directory Server와 같은 Directory Server가 사용자를 인증(및 사용자 기본 설정을 저장)해야 합니다. 하지만 LDAP 이외의 Directory Server에 정의된 사용자에게 액세스를 허용하기 위해 Calendar Server에는 Calendar Server API(CSAPI)가 포함되어 있으며, 이 API를 사용하여 LDAP 이외의 디렉토리에 액 세스하기 위한 플러그 인을 작성할 수 있습니다. CSAPI에 대한 자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.

Calendar Server 사용자 기본 설정

Calendar Server는 사용자가 디렉토리 서버에 저장되어 있는 사용자 기본 설정 속성을 설정하여 달력 데이터 보기를 사용자 정의할 수 있도록 합니다. Calendar Server 구성 매개 변수에 반대되는 사용자 기본 설정은 달력 데이터의 사용자 인터페이스 표현을 참조하며, 사용자 아이디, 전자 메일 주소 그리고 달력 보기 생성 시 사용할 기본 색상과 같은 항목을 포함합니다.

기본 설정 목록을 보려면 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide에서 get_userprefs set_userprefs WCAP 명령을 참조하십시오.

달력 그룹

달력 그룹은 가입한 개별 달력으로 구성된 명명된 목록입니다. 그룹 달력에서는 여러 달력을 하나의 달력으로 묶어서 볼 수 있습니다. 사용자는 Communications Express 그래픽 사용자 인터페이스를 사용하여 그룹을 만듭니다.

예를 들어, 사용자는 개인 달력, 부서 달력 그리고 회사 휴일 달력을 하나의 달력 그룹으로 묶을 수 있습니다. 또한 달력 그룹을 사용하여 여러 달력을 선택한 다음 나란히 표시하거나 달력 소유자를 이벤트에 초대할 수 있습니다.

이 그룹은 LDAP 그룹과 혼동해서는 안 됩니다. 사용자 인터페이스에 만든 그룹은 icsSet 속성의 사용자 LDAP 항목에 저장됩니다. 그러므로 다른 사용자는 LDAP에서 참석자를 검색할 때 이 그룹을 볼 수 없습니다.

Calendar Server 사용자에 대한 자세한 내용은 14 장, 사용자 및 자원 관리을 참조하십시오.

달력 자원

회의실 또는 프로젝터처럼 달력을 사용하여 예약할 수 있는 모든 것이 자원입니다. 품목마다 자원 LDAP 항목이 별도로 존재합니다. 알맞은 도구를 사용하여 LDAP 항목 및 해당 달력을 만듭니다.

Calendar Server 데이터

이 절에서는 Calendar Server 데이터에 대한 다음 정보에 대해 설명합니다.

Calendar Server 데이터 형식

Calendar Server 데이터 형식은 RFC 2445, Internet Calendaring and Scheduling Core Object Specification(iCalendar)을 따릅니다. Calendar Server는 다음 형식을 지원합니다.

CSAPI를 사용하여 변환기 DLL 또는 WCAP 프로토콜용 공유 라이브러리를 개발할 수 있습니다. WCAP 및 CSAPI에 대한 자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.

달력 데이터 가져오기 및 내보내기

달력 데이터는 iCalendar( .ical) 또는 XML(.xml) 형식으로 가져오고 내보낼 수 있습니다. Calendar Server 관리자는 Calendar Server csimportcsexport 유틸리티를 사용하여 달력 데이터를 가져오고 내보낼 수 있습니다. 최종 사용자는 Communications Express 사용자 인터페이스를 사용하여 달력 데이터를 가져오고 내보낼 수 있습니다.

데이터 교환용 달력 링크

달력은 전자 메일 메시지와 웹 페이지에 내장된 링크로 참조할 수 있습니다. 사용자는 달력이 읽기 액세스를 허용하는 한, Calendar Server에 로그인할 필요 없이 해당 링크를 눌러 달력을 볼 수 있습니다. 예를 들어, 다음 링크는 Auditorium이라는 이름의 장소 자원을 지정합니다.

http://calendar.sesta.com:8080/?calid=Auditorium

Calendar Server 경보

Calendar Server는 서버측 전자 메일 경보를 지원하며, 이를 수신자 목록으로 보낼 수 있습니다. 전자 메일 메시지의 형식은 구성 가능하며 사용자나 달력 속성이 아닌 서버 속성으로 관리됩니다. Calendar Server는 이벤트용 ITIP 메소드 PUBLISH, REQUEST, REPLY CANCEL을 포함하는 ITIP/IMIP 표준(RFC 2446 및 RFC 2447)을 제한적으로 지원합니다.

LDAP 데이터 캐시 옵션

LDAP 데이터 캐시 옵션은 LDAP 디렉토리 서버가 완결된 데이터의 가용성이 지연되도록 구성된 경우에도 완결 즉시 LDAP 데이터를 사용할 수 있도록 합니다.

예를 들어, 사이트에서 마스터/슬레이브 LDAP 구성을 배포하여 Calendar Server가 슬레이브 LDAP 디렉토리 서버를 통해 마스터 LDAP 디렉토리에 액세스하고 이로 인해 완결된 LDAP 데이터의 가용성이 지연될 경우 LDAP 데이터 캐시를 사용하면 Calendar Server 클라이언트에 정확한 LDAP 데이터를 제공할 수 있습니다.

이 절은 다음 내용으로 구성되어 있습니다.

LDAP 데이터 캐시 사용 시 고려 사항

다음 지침을 사용하여 사이트에 LDAP 데이터 캐시를 구성해야 할 것인지 여부를 결정합니다.

마스터/슬레이브 LDAP 구성

마스터/슬레이브 LDAP 구성에는 하나의 마스터(루트) 디렉토리 서버와 하나 이상의 슬레이브(소비자 또는 복제) 디렉토리 서버가 포함됩니다. Calendar Server는 직접 또는 슬레이브 디렉토리 서버를 통해 마스터 LDAP 디렉토리 서버에 액세스할 수 있습니다.

LDAP 데이터 캐시

LDAP 데이터 캐시는 마스터 디렉토리 서버가 각 슬레이브 디렉토리 서버를 업데이트하지 않았을 때에도 Calendar Server 클라이언트에 최신 LDAP 데이터를 제공하여 마스터/슬레이브 LDAP 구성 문제를 해결합니다.

LDAP 데이터 캐시가 활성화된 경우 Calendar Server는 완결된 LDAP 데이터를 캐시 데이터베이스(ldapcache.db 파일)에 기록합니다. 기본적으로 LDAP 캐시 데이터베이스는 ldap_cache 데이터베이스 디렉토리에 있지만 필요할 경우 다른 위치를 구성할 수 있습니다.

클라이언트가 단일 사용자의 LDAP 데이터를 변경하면 Calendar Server는 개정된 데이터를 LDAP 캐시 데이터베이스와 슬레이브 디렉토리 서버에 기록합니다. 이후의 클라이언트 작업에서는 캐시 데이터베이스에서 LDAP 데이터를 검색합니다. 이러한 데이터 검색은 단일 사용자에 대한 다음 작업에 적용됩니다.

따라서 LDAP 데이터 캐시 데이터베이스는 다음을 제공합니다.

제한 사항

LDAP 데이터 캐시는 다음을 제공하지 않습니다.

달력 액세스 제어

Calendar Server에서는 액세스 제어 목록(ACL)을 사용하여 달력, 달력 등록 정보 그리고 이벤트, 수행할 작업(태스크)과 같은 달력 구성 요소의 액세스 제어를 결정합니다.

이 절은 다음 내용으로 구성되어 있습니다.

보안 Calendar Server 로그인

사용자가 Communications Express를 통해 Calendar Server에 로그인할 때 기본적으로 인증 프로세스에서는 사용자 아이디와 비밀번호를 비롯한 로그인 정보를 암호화하지 않습니다. 사이트에서 보안 로그인을 원할 경우 Calendar Server가 SSL(Secure Sockets Layer) 프로토콜을 사용하여 로그인 데이터를 암호화하도록 구성합니다. 자세한 내용은 8 장, SSL 구성, SSL 구성을 참조하십시오.

사용자별 액세스 제어

Calendar Server에서는 달력, 달력 등록 정보 및 달력 구성 요소에 대한 액세스를 결정할때 다음 사용자를 인식합니다.

액세스 제어 목록(ACL)

Calendar Server는 액세스 제어 목록(ACL)을 사용하여 달력, 달력 등록 정보 그리고 이벤트, 수행할 작업(태스크)과 같은 달력 구성 요소의 액세스 제어를 결정합니다. ACL은 하나 이상의 액세스 제어 항목(ACE)으로 구성됩니다. ACE는 동일한 달력이나 구성 요소에 집합적으로 적용되는 문자열입니다. ACL에서 각 ACE는 세미콜론으로 구분됩니다. 예를 들면 다음과 같습니다.

ACE는 각각 캐럿(^)으로 구분되는 다음 요소들로 구성됩니다.

예를 들어, ACE jsmith^c^wd^g에서

Who

Who 요소는 ACE의 기본적인 값이며, ACE가 누구에게 적용되는지를 나타냅니다(예: 개별 사용자, 도메인 또는 특정 사용자 유형).

Who는 UPN(Universal Principal Name)이라고도 부릅니다. 사용자의 UPN은 해당 사용자의 로그인 아이디와 도메인을 결합한 것입니다. 예를 들어, 도메인 sesta.com에 있는 사용자 bill의 UPN은 bill@sesta.com입니다.

표 1–2 액세스 제어 항목(ACE) 문자열의 “Who” 형식

형식 

설명 

user

특정 사용자를 참조합니다예: jsmith. 

user@domain

특정 도메인의 특정 사용자를 참조합니다예: jsmith@sesta.com .

@domain

지정된 도메인에서 임의의 사용자를 참조합니다. 

예를 들어,@sesta.com specifies jsmith@sesta.com , sally@sesta.com, and anyone else at sesta.com .

이 형식을 사용하여 도메인 전체 사용자에게 액세스 권한을 부여하거나 거부합니다. 

@

모든사용자를참조합니다 

@@{d|p|o|n}

달력의소유자를참조합니다 

  • @@d – 주 소유자의 도메인

  • @@p – 주 소유자만 해당

  • @@o – 주 소유자를 비롯한 모든 소유자

  • @@n – 소유자가 아님

What

What 요소는 달력, 달력 구성 요소(이벤트나 태스크), 달력 등록 정보 등 액세스 대상을 지정합니다.

표 1–3 액세스 제어 항목(ACE) 문자열의 “What” 값

값 

설명 


c                           

이벤트, 태스크와 같은 달력 구성 요소를 지정합니다.  


p                           

이름, 설명, 소유자를 비롯하여 달력 등록 정보를 지정합니다.  


a                           

구성 요소와 등록 정보를 포함하여 달력 전체(all)를 지정합니다.  

How

How 요소는 읽기, 쓰기, 삭제 등 허가되는 액세스 제어 권한의 유형을 지정합니다.

표 1–4 액세스 제어 항목(ACE) 문자열의 “How” 형식

유형 

설명 

r

읽기 액세스 

w

새 항목 추가 및 기존 항목 변경을 포함하는 쓰기 액세스 

d

삭제 액세스 

s

예약(초대) 액세스. 요청을 수행하고 응답을 받아들이며 다른 ITIP 예약 대화형 작업을 적용할 수 있습니다. 

f

사용 가능/사용 중(가용성) 액세스 전용. 사용 가능/사용 중 액세스란 사용자가 달력의 예약 시간을 조회할 수 있지만 이벤트 세부 정보는 볼 수 없음을 의미합니다. 그 대신 예약된 시간 블록 옆에 “Not Available”이라고만 표시됩니다. 예약된 이벤트가 없는 시간 블록은 그 옆에 “Available”이라고 표시됩니다. 

도메인 액세스를 조회합니다. 

e

응답 액세스를 대신합니다. 이 유형은 달력의 주 소유자를 대신하여 초대를 받아들이거나 거절할 권한을 사용자에게 부여합니다. 이러한 유형의 액세스는 사용자가 주 소유자가 아닌 소유자로 지정된 경우 포함되므로 명시적으로 부여할 필요가 없습니다. 

i

초대 액세스를 대신합니다. 이 유형은 달력의 주 소유자를 대신하여 다른 참석자가 초대된 구성 요소를 만들고 수정하는 권한을 사용자에게 부여합니다. 이러한 유형의 액세스는 사용자가 주 소유자가 아닌 소유자로 지정된 경우 포함되므로 명시적으로 부여할 필요가 없습니다. 

c

취소 액세스를 대신합니다. 이 유형은 사용자가 달력의 주 소유자를 대신하여 참석자가 초대된 구성 요소를 취소할 권한을 사용자에게 부여합니다. 이러한 유형의 액세스는 사용자가 주 소유자가 아닌 소유자로 지정된 경우 포함되므로 명시적으로 부여할 필요가 없습니다. 

z

자체 관리 액세스 - 인증된 사용자에게 ACE를 추가 또는 제거할 수 있는 권한을 부여합니다. 이 권한을 가진 사용자는 자신의 권한을 추가 및 제거할 수 있습니다. 예를 들어 UserA에는 UserB의 달력에 대해 쓰기 액세스 권한이 아닌 자체 관리 액세스 권한이 부여될 수 있습니다. 그러면 UserA는 스스로 UserB의 달력에 대해 쓰기 액세스 권한을 부여하는 ACE를 추가할 수 있습니다. 

주: 이 권한을 통해 UserA가 다른 사용자에게 UserB의 달력에 액세스할 수 있는 권한을 줄 수 없습니다. 예를 들어 자체 관리 권한은 UserA가 UserC에게 UserB의 달력에 액세스할 수 있는 권한을 주도록 허용하지 않습니다. 

Grant

Grant 요소는 d(삭제) 또는 r(읽기) 등 지정된 액세스 유형을 부여 또는 거부할 것인지 여부를 지정합니다.

표 1–5 액세스 제어 항목(ACE) 문자열의 Grant 값

값 

설명 

g

특정 액세스 제어 권한을 부여합니다. 

d

특정 액세스 제어 권한을 거부합니다. 

ACE 예제

다음 예제에서는 ACE 사용 방법을 보여 줍니다.

ACL에 ACE 배치

Calendar Server는 ACL을 읽을 때 가장 먼저 인식하는 ACE를 사용하여 대상에 대한 액세스를 부여하거나 거부합니다. 따라서 ACL의 순서가 중요하며, ACE 문자열은 보다 구체적인 항목이 보다 일반적인 항목보다 먼저 오도록 배치해야 합니다.

예를 들어, 달력 jsmith:sports의 ACL에서 최초의 ACE가 모든 사용자에게 읽기 액세스 권한을 부여한다고 가정합니다. 그리고 Calendar Server는 bjones에게 해당 달력에 대한 읽기 액세스 권한을 거부하는 두 번째 ACE를 인식합니다. 이 경우 Calendar Server는 bjones에게 해당 달력에 대한 읽기 액세스를 부여하고 충돌되는 두 번째 ACE는 무시합니다. 따라서 bjones와 같은 특정 사용자에 대한 액세스 권한이 적용되게 하려면 ACL에서 bjones의 ACE는 달력의 모든 사용자에게 적용되는 ACE와 같이 보다 일반적인 전역 항목보다 앞에 배치되어야 합니다.

Calendar Server 내부 하위 시스템

Sun Java System Calendar Server는 다음 내부 하위 시스템으로 구성되어 있습니다.

다음 그래픽은 이러한 하위 시스템들의 논리적 흐름을 보여 줍니다.

그림 1–1 Calendar Server 내부 하위 시스템의 논리적 흐름

그래픽에는 Calendar Server의 하위 시스템 및 구성 요소에 대한 개념적 보기가 표시됩니다. 이어서 하위 시스템과 구성 요소에 대한 설명이 제공됩니다.

프로토콜 하위 시스템

클라이언트는 HTTP 프로토콜 계층을 통해 요청을 제출하여 달력 데이터를 검색합니다. 이는 달력 요청을 지원하기 위해 스트림라인된 최소 HTTP 서버 구현입니다. 이 작업은 WCAP(Web Calendar Access Protocol) 명령을 URL에 추가하여 수행됩니다.

WCAP는 Calendar Server에 대한 인터페이스를 직접 작성할 수 있는 오픈 프로토콜입니다. WCAP 명령(.wcap 확장자)을 사용하면 일부 관리 명령을 제외하고 대부분의 서버 명령을 수행할 수 있습니다. WCAP 명령을 사용하여 HTML에 포함된 XML 또는 iCalendar 형태로 출력을 요청할 수 있습니다.

WCAP 명령에 대한 자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.

코어 하위 시스템

코어 하위 시스템에는액세스 제어 구성 요소, 데이터 변환기를 사용하여 달력 데이터베이스 구성 요소에서 가져온 데이터의 형식을 지정하는 WCAP 및 CSAPI 플러그 인이 포함되어 있습니다. 코어 하위 시스템은 달력 요청을 처리하고 WCAP 출력을 생성합니다. 코어 하위 시스템은 Calendar Server API(CSAPI)를 비롯한 사용자 인증도 처리합니다.

데이터베이스 하위 시스템

데이터베이스 하위 시스템은 Sleepycat Software의 Berkeley DB를 사용합니다(데이터베이스 API는 공용이 아님). 데이터베이스 하위 시스템은 이벤트, 수행할 작업(태스크), 경보와 같은 달력 데이터를 데이터베이스 시스템에 저장하고 검색합니다. 달력 데이터는 iCalendar 형식을 기반으로 하며 Calendar Server 데이터에 사용되는 스키마는 iCalendar 표준의 수퍼 세트입니다.

데이터베이스 하위 시스템은 저급 형식으로 데이터를 반환하며, 코어 UI 생성기는 저급 데이터를 변환하여 WCAP를 통해 보냅니다.

분산 달력 데이터베이스를 위해 Calendar Server는 분산 와이어 프로토콜(DWP)을 사용하여 네트워킹 기능을 제공합니다. 자세한 내용은 분산 데이터베이스 서비스: csdwpd를 참조하십시오.

달력 데이터베이스에 대한 자세한 내용은 16 장, csdb를 사용하여 Calendar Server 데이터베이스 관리을 참조하십시오.

Calendar Server 서비스

Calendar Server 서비스는 데몬 또는 프로세스로 실행됩니다. 이 서비스는 다음 내용으로 구성되어 있습니다.

관리 서비스: csadmind

csadmind 서비스는 Calendar Server를 관리하는 단일 인증 지점을 제공합니다. csadmind 서비스는 경보 알림, 그룹 예약 요청도 관리합니다.

HTTP 서비스: cshttpd

Calendar Server는 HTTP를 기본 전송으로 사용하므로 cshttpd 서비스는 Calendar Server 최종 사용자로부터의 HTTP 명령을 수신하고 사용자 명령을 수신하며 들어오는 WCAP 명령에 지정된 형식에 따라 달력 데이터를 반환합니다. 데이터는 표준 RFC 2445 iCalendar 형식(text/calendar) 또는 XML 형식(text/xml)으로 지정할 수 있습니다.

자동 백업 서비스: csstored

제대로 구성된 csstored 서비스는 달력 데이터베이스의 자동 백업을 생성합니다. 하지만 서비스는 구성 해제된 상태에서 설치됩니다. csconfigurator.sh 구성 프로그램이 실행될 때 Calendar Server에서 자동 백업을 구성하거나 나중에 이 설명서를 따라 구성하면 됩니다.

서비스가 구성 해제 및 비활성 상태에서 시작되면 자동 백업이 활성화되지 않았다는 메시지를 24시간마다 관리자에게 보냅니다.

백업을 수행하도록 이 서비스를 구성하는 방법에 대한 자세한 내용은 10 장, 자동 백업 구성(csstored)을 참조하십시오.

제대로 구성하면 이 서비스의 기능은 다음과 같습니다.

ENS(이벤트 알림 서비스): csnotifyd 및 enpd

ENS 서비스는 이 개별 서비스로 구성됩니다.


주 –

enpdcsnotifyd 서비스는 cshttpd, csdwpd 또는 csadmind 프로세스와 같은 서버에서 실행될 필요가 없습니다.


분산 데이터베이스 서비스: csdwpd

csdwpd 서비스는 여러 백엔드 서버에 대해 달력 데이터베이스를 배포해야 합니다. csdwpd 서비스를 사용하면 같은 Calendar Server 구성에 있는 여러 백엔드 서버에 달력 데이터베이스를 분산하여 분산 달력 저장소를 만들 수 있습니다.

csdwpd 서비스는 백엔드 서버의 백그라운드에서 실행되며, DWP(데이터베이스 와이어 프로토콜)를 따르는 달력 데이터베이스 액세스 요청을 받아들입니다. DWP는 Calendar Server 데이터베이스에 네트워킹 기능을 제공할 때 사용하는 내부 프로토콜입니다.

Calendar Server API 및 SDK

Calendar Server에는 다음 API 및 SDK가 있습니다.

WCAP(Web Calendar Access Protocol)

Calendar Server는 클라이언트와의 통신을 가능하게 하는 명령 기반의 고급 프로토콜 WCAP 3.0을 지원합니다. 클라이언트는 .wcap 확장자를 사용하는 WCAP 명령을 사용하여 달력 구성 요소, 사용자 기본 설정, 달력 등록 정보 그리고 표준 시간대와 같은 기타 달력 정보를 얻고 수정하며 삭제할 수 있습니다. 시간, 문자열 및 매개 변수와 같은 WCAP 요소는 일반적으로 RFC 2445, RFC 2446 및 RFC 2447 사양을 따릅니다.

WCAP는 다음 형식의 HTTP 메시지로 출력 달력 데이터를 반환합니다.

WCAP 명령을 사용할 경우, login.wcap을 사용하여 로그인하는 Calendar Server 관리자는 다음 기능을 수행할 수 있습니다.

자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.

Calendar Server API(CSAPI)

Calendar Server API(CSAPI)에서는 사용자 로그인 인증, 액세스 제어, 달력 조회와 같은 Calendar Server의 기능 영역을 사용자 정의할 수 있습니다. 예를 들어, 기본적으로 Calendar Server는 LDAP Directory Server의 항목을 사용하여 사용자를 인증하고 사용자 기본 설정을 저장합니다. CSAPI를 사용하면 LDAP Directory Server 기반이 아닌 또 다른 인증 기법을 구현하는 방식으로 기본 Calendar Server 인증을 무시할 수 있습니다.

CSAPI에 대한 자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.

ENS(이벤트 알림 서비스) API

이벤트 알림 서비스(ENS)는 경보 대기열의 이벤트를 검색하고 이 이벤트의 알림을 가입자에게 보내는 경보 디스페처입니다. ENS API에서 프로그래머는 publish-and-subscribe 함수를 수정할 수 있습니다 Calendar Server는 이 함수를 사용하여 이벤트에 가입하거나 가입을 취소하고 또한 가입자에게 이벤트를 알립니다. ENS API는Published API, Subscriber API 및 Publish and Subscribe Dispatcher API와 같은 API로 구성됩니다.

ENS API에 대한 자세한 내용은 Sun Java System Communications Services 6 2005Q4 Event Notification Service Guide를 참조하십시오.

프록시 인증 SDK(authSDK)

Calendar Server는 사용자 인증을 위해 authSDK를 제공합니다. authSDK를 사용하면 기존 포털 서비스와 Calendar Server의 통합이 가능하므로, 재인증할 필요 없이 다양한 응용 프로그램에 액세스할 수 있습니다. authSDK는 DLL/공유 객체 라이브러리와 헤더 파일에 패키지화된 함수로 구성됩니다.

Calendar Server와 authSDK 사이에 설정된 연결은 신뢰할 수 있는 관계를 형성합니다. 사용자가 로그인하고 authSDK에 성공적으로 인증되면 Calendar Server는 프록시가 생성한 인증서를 해당 함수에 적용합니다.

authSDK에 대한 자세한 내용은 Sun Java System Calendar Server 6 2005Q4 Developer’s Guide를 참조하십시오.