| |
| Sun Java[TM] System Identity Manager 7.1 관리 | |
12장
감사 기록이 장에서는 Sun Java� System Identity Manager 감사 시스템에서 이벤트를 기록하는 방법에 대해 설명합니다. 해당 정보는 다음과 같이 구성됩니다.
개요Identity Manager 감사의 목적은 누가 언제 어떤 Identity Manager 객체에 대해 무엇을 수행했는지 기록하는 것입니다.
감사 이벤트는 하나 이상의 게시자에 의해 처리됩니다. 기본적으로 Identity Manager에서는 저장소 게시자를 사용하여 감사 이벤트를 저장소에 기록합니다. 관리자는 감사 그룹과 함께 필터링을 사용하여 기록할 감사 이벤트의 하위 집합을 선택할 수 있습니다. 처음부터 활성화되는 하나 이상의 감사 그룹을 각 게시자에게 할당할 수 있습니다.
주
사용자 위반 모니터링 및 관리에 대한 자세한 내용은 11장, "아이디 감사"를 참조하십시오.
Identity Manager의 감사 대상기본 감사는 대부분 내부 Identity Manager 구성 요소에서 수행합니다. 그러나 작업 흐름이나 Java 코드에서 이벤트를 생성할 수 있는 인터페이스가 있습니다.
기본 Identity Manager 감사 기기에서는 다음 네 가지 주 영역을 집중적으로 감사합니다.
- 제공자 - 제공자라는 내부 구성 요소에서 감사 이벤트를 생성할 수 있습니다.
- 뷰 처리기 - 뷰 구조에서 뷰 처리기는 감사 레코드를 생성해야 합니다. 뷰 처리기는 객체가 만들어지거나 수정될 때마다 감사해야 합니다.
- 세션 - checkinObject, createObject, runTask, login 및 logout과 같은 세션 메소드는 감사 가능한 작업을 완료한 후 감사 레코드를 만듭니다. 대부분의 기기는 뷰 처리기로 보내집니다.
- 작업 흐름 - 기본적으로 승인 작업 흐름만 감사 레코드를 생성하도록 지정되어 있습니다. 이러한 작업 흐름은 요청이 승인 또는 거부될 때 감사 이벤트를 생성합니다. 감사 로거와 연결되는 작업 흐름 기능 인터페이스는 com.waveset.session.WorkflowServices 응용 프로그램을 통해 제공됩니다.
이벤트 만들기Identity Manager에서 내부 감사를 처리하지만 경우에 따라 사용자 정의 작업 흐름에서 감사 이벤트를 기록할 수도 있습니다.
작업 흐름에서 감사
모든 작업 흐름 프로세스에서 감사 이벤트를 생성하려면 com.waveset.session.WorkflowServices 응용 프로그램을 사용합니다. 표 12-1에서는 이 응용 프로그램에 사용할 수 있는 인수에 대해 설명합니다.
기본 객체, 작업 및 상태 이름의 목록을 보려면 표 12-18을 참조하십시오.
예
코드 예 12-1은 간단한 작업 흐름 작업을 보여 줍니다. 여기에서는 ResourceAdministrator가 수행한 ADSIResource1이라는 자원 삭제 작업을 기록할 이벤트의 생성을 보여 줍니다.
코드 예 12-2에서는 승인 프로세스에서 각 사용자가 적용한 변경 사항을 추적하는 작업 흐름에 특정 속성을 추가할 수 있는 방법을 세밀한 수준으로 보여 줍니다. 이러한 추가는 일반적으로 사용자의 입력을 요청하는 ManualAction 다음에 수행됩니다.
ACTUAL_APPROVER는 승인 표에서 승인하고 있는 경우 실제로 승인한 사람을 기준으로 하는 양식 및 작업 흐름에서 설정됩니다. APPROVER는 승인이 할당된 사람을 식별합니다.
코드 예 12-2 승인 프로세스에서 변경 사항을 추적하기 위해 추가되는 속성
<Action name='Audit the Approval' application='com.waveset.session.WorkflowServices'>
<Argument name='op' value='audit'/>
<Argument name='type' value='User'/>
<Argument name='name' value='$(CUSTOM_DESCRIPTION)'/>
<Argument name='action' value='approve'/>
<Argument name='accountId' value='$(accountId)'/>
<Argument name='status' value='success'/>
<Argument name='resource' value='$(RESOURCE_IF_APPLICABLE)'/>
<Argument name='loginApplication' value='$(loginApplication)'/>
<Argument name='attributes'>
<map>
<s>fullname</s><ref>user.accounts[Lighthouse].fullname</ref>
<s>jobTitle</s><ref>user.accounts[Lighthouse].jobTitle</ref>
<s>location</s><ref>user.accounts[Lighthouse].location</ref>
<s>team</s><ref>user.waveset.organization</ref>
<s>agency</s><ref>user.accounts[Lighthouse].agency</ref>
</map>
</Argument>
<Argument name='originalAttributes'>
<map>
<s>fullname</s>
<s>User's previous fullname</s>
<s>jobTitle</s>
<s>User's previous job title</s>
<s>location</s>
<s>User's previous location</s>
<s>team</s>
<s>User's previous team</s>
<s>agency</s>
<s>User's previous agency</s> </map>
</Argument>
<Argument name='attributes'>
<map>
<s>firstname</s>
<s>Joe</s>
<s>lastname</s>
<s>New</s>
</map>
</Argument>
<Argument name='subject'>
<또�>
<ref>ACTUAL_APPROVER</ref>
<ref>APPROVER</ref>
</or>
</Argument>
<Argument name='approver' value='$(APPROVER)'/>
</Action>
감사 구성감사 구성은 하나 이상의 게시자와 여러 개의 미리 정의된 그룹으로 구성됩니다.
감사 그룹은 객체 유형, 작업 및 작업 결과를 기반으로 모든 감사 이벤트의 하위 집합을 정의합니다. 각 게시자에는 하나 이상의 감사 그룹이 할당됩니다. 기본적으로 저장소 게시자는 모든 감사 그룹에 할당됩니다.
감사 게시자는 특정 감사 대상에 감사 이벤트를 전달합니다. 기본 저장소 게시자는 저장소에 감사 레코드를 작성합니다. 각 감사 게시자에게는 구현별 옵션이 있을 수 있습니다. 감사 게시자에는 텍스트 포매터가 할당될 수 있으며 이 텍스트 포매터는 감사 이벤트를 텍스트로 표시합니다.
감사 구성(#ID#Configuration:AuditConfiguration) 객체는 sample/auditconfig.xml 파일에 정의됩니다. 이 구성 객체는 일반 객체인 확장을 가집니다. 이 객체의 최상위 수준에는 다음 속성이 있습니다.
filterConfiguration
filterConfiguration 속성은 하나 이상의 이벤트가 이벤트 필터를 통과할 수 있도록 설정하는 데 사용되는 이벤트 그룹을 나열합니다. filterConfiguration 속성에 나열되는 각 그룹에는 표 12-2에 나열된 속성이 들어 있습니다.
표 12-2 filterConfiguration 속성
속성
유형
설명
groupName
String
이벤트 그룹 이름입니다.
displayName
String
그룹 이름을 나타내는 메시지 카탈로그 키입니다.
enabled
String
전체 그룹의 활성화 또는 비활성화 여부를 나타내는 부울 플래그입니다. 이 속성은 필터링 객체를 최적화합니다.
enabledEvents
List
그룹에서 활성화하는 이벤트를 설명하는 일반 객체 목록입니다. 이벤트를 나열해야 이벤트 로깅을 활성화할 수 있습니다. 나열된 각 객체에는 다음 속성이 있어야 합니다.
코드 예 12-3은 기본 자원 관리 그룹입니다.
코드 예 12-3 기본 자원 관리 그룹
<Object name='Resource Management'>
<Attribute name='enabled' value='true'/>
<Attribute name='displayName'
value='UI_RESOURCE_MGMT_GROUP_DISPLAYNAME'/>
<Attribute name='enabledEvents'>
<List>
<Object>
<Attribute name='objectType' value='Resource'/>
<Attribute name='actions' value='ALL'/>
<Attribute name='results' value='ALL'/>
</Object>
<Object>
<Attribute name='objectType' value='ResourceObject'/>
<Attribute name='actions' value='ALL'/>
<Attribute name='results' value='ALL'/>
</Object>
</List>
</Attribute>
</Object>
Identity Manager에서는 다음과 같은 기본 이벤트 그룹을 제공합니다.
Identity Manager 관리 인터페이스의 감사 이벤트 페이지(configure/auditeventconfig.jsp)에서 각 그룹을 구성할 수 있습니다. 이 페이지에서는 각 그룹에 대한 성공 또는 실패 이벤트를 구성할 수 있습니다. 인터페이스에서는 그룹의 enabledEvents를 추가 또는 수정할 수 없지만 Identity Manager 디버그 페이지를 사용하여 이 작업을 수행할 수 있습니다.
기본 이벤트 그룹과 이 그룹에서 활성화하는 이벤트에 대해서는 다음 절에서 설명합니다.
계정 관리
이 그룹은 기본적으로 활성화됩니다.
표 12-3 기본 계정 관리 이벤트 그룹
유형
작업
Resource Account
만들기, 업데이트, 삭제, 활성화, 비활성화, 거부, 승인, 이름 변경
Identity Manager Account
만들기, 업데이트, 삭제, 활성화, 비활성화, 이름 변경
준수 관리
이 그룹은 기본적으로 활성화됩니다.
구성 관리
이 그룹은 기본적으로 활성화됩니다.
표 12-5 기본 구성 관리 이벤트 그룹
유형
작업
Configuration
모든 작업
UserForm
모든 작업
Rule
모든 작업
EmailTemplate
모든 작업
LoginConfig
모든 작업
Policy
모든 작업
XMLData
가져오기
Log
모든 작업
Identity Manager 로그인/로그오프
이 그룹은 기본적으로 활성화됩니다.
표 12-6 기본 Identity Manager 로그인/로그오프 이벤트 그룹
유형
작업
User
로그인, 로그오프, 자격 증명 만료
Administrator
로그인, 로그오프, 자격 증명 만료
비밀번호 관리
이 그룹은 기본적으로 활성화됩니다.
자원 관리
이 그룹은 기본적으로 활성화됩니다.
표 12-8 기본 자원 관리 이벤트 그룹 및 이벤트
유형
작업
Resource
모든 작업
Resource Object
모든 작업
ResourceForm
모든 작업
ResourceAction
모든 작업
AttrParse
모든 작업
역할 관리
이 그룹은 기본적으로 비활성화됩니다.
보안 관리
이 그룹은 기본적으로 활성화됩니다.
표 12-10 기본 보안 관리 이벤트 그룹 및 이벤트
유형
작업
ObjectGroup
모든 작업
AdminGroup
모든 작업
Administrator
모든 작업
EncryptionKey
모든 작업
작업 관리
이 그룹은 기본적으로 비활성화됩니다.
표 12-11 작업 관리 이벤트 그룹 및 이벤트
유형
작업
TaskInstance
모든 작업
TaskDefinition
모든 작업
TaskSchedule
모든 작업
TaskResult
모든 작업
ProvisioningTask
모든 작업
외부 변경 사항 Identity Manager
이 그룹은 기본적으로 비활성화됩니다.
Service Provider Edition
이 그룹은 기본적으로 활성화됩니다.
표 12-13 Service Provider Edition 이벤트 그룹 및 이벤트
유형
작업
IDMXUser
만들기, 수정, 삭제, 사용자 이름 복구, 시도 응답, 인증 응답 업데이트, 사전 작업 및 사후 작업 콜아웃
extendedTypes
com.waveset.object.Type 클래스에 추가하는 각각의 새 유형을 감사할 수 있습니다. 새 유형에는 두 자로 된 고유한 데이터베이스 키가 할당되어야 하며, 이 키는 데이터베이스에 저장됩니다. 새 유형은 모두 다양한 감사 보고 인터페이스에 추가됩니다. 필터링하지 않고 데이터베이스에 기록할 각각의 새 유형은 enabledEvents 속성에 대해 설명한 대로 감사 이벤트 그룹 enabledEvents 속성에 추가해야 합니다.
연관된 com.waveset.objectType이 없는 대상을 감사하거나 기존 유형을 더욱 세밀하게 표시하려는 경우가 있을 수 있습니다.
예를 들어, WSUser 객체는 저장소에 있는 사용자의 계정 정보를 모두 저장합니다. 감사 프로세스에서는 각 이벤트를 USER 유형으로 표시하는 대신, WSUser 객체를 Resource Account 및 Identity Manager Account이라는 두 개의 다른 감사 유형으로 분할합니다. 객체를 이와 같이 분할하면 감사 로그에서 특정 계정 정보를 쉽게 찾을 수 있습니다.
extendedObjects 속성에 추가하여 확장된 감사 유형을 추가합니다. 확장된 각 객체에는 다음 표에 나열된 속성이 있어야 합니다.
표 12-14 확장된 객체 속성
인수
유형
설명
name
String
AuditEvents를 구성할 때와 이벤트 필터링 중에 사용되는 유형 이름입니다.
displayName
String
유형 이름을 나타내는 메시지 카탈로그 키입니다.
logDbKey
String
로그 테이블에 이 객체를 저장할 때 사용할 두 자로 된 데이터베이스 키입니다. 예약된 값을 보려면 로그 데이터베이스 키를 참조하십시오.
supportedActions
List
객체 유형에서 지원하는 작업입니다. 이 속성은 사용자 인터페이스에서 감사 쿼리를 만들 때 사용됩니다. 이 값이 null이면 모든 작업이 이 객체 유형에 대해 쿼리할 수 있는 값으로 표시됩니다.
mapsToType
String
(선택 사항) 적용 가능한 경우 이 유형에 매핑되는 com.waveset.object.Type의 이름입니다. 이 속성은 객체의 조직 구성원을 이벤트에서 아직 지정하지 않은 경우 이를 확인할 때 사용됩니다.
organizationalMembership
List
(선택 사항) 이 유형의 이벤트에 조직 구성원이 아직 할당되지 않은 경우 이 이벤트가 배치되어야 하는 조직 아이디의 기본 목록입니다.
내부 기호를 새로 추가할 때 키가 중복되지 않도록 모든 고객별 키는 # 기호로 시작해야 합니다.
코드 예 12-4는 확장된 유형의 Identity Manager Account입니다.
코드 예 12-4 확장된 유형의 Identity Manager Account
<Object name='LighthouseAccount'>
<Attribute name='displayName' value='LG_LIGHTHOUSE_ACCOUNT'/>
<Attribute name='logDbKey' value='LA'/>
<Attribute name='mapsToType' value='User'/>
<Attribute name='supportedActions'>
<List>
<String>Disable</String>
<String>Enable</String>
<String>Create</String>
<String>Modify</String>
<String>Delete</String>
<String>Rename</String>
</List>
</Attribute>
</Object>
extendedActions
감사 작업은 일반적으로 com.waveset.security.Right 객체에 매핑됩니다. 새 권한 객체를 추가할 때 데이터베이스에 저장되는 두 자로 된 고유한 logDbKey를 지정해야 합니다. 감사해야 하는 특정 작업에 해당하는 권한이 없는 경우가 발생할 수 있습니다. 이럴 경우 extendedActions 속성의 객체 목록에 이 작업을 추가하여 작업을 확장할 수 있습니다.
각 extendedActions 객체에는 표 12-15에 나열된 속성이 들어 있어야 합니다.
표 12-15 extendedAction 속성
속성
유형
설명
name
String
AuditEvents를 구성할 때와 이벤트 필터링 중에 사용되는 작업 이름입니다.
displayName
String
작업 이름을 나타내는 메시지 카탈로그 키입니다.
logDbKey
String
로그 테이블에 이 작업을 저장할 때 사용할 두 자로 된 데이터베이스 키입니다.
예약된 값을 보려면 로그 데이터베이스 키를 참조하십시오.
내부 기호를 새로 추가할 때 키가 중복되지 않도록 모든 고객별 키는 # 기호로 시작해야 합니다.
코드 예 12-5는 로그아웃에 대한 작업 추가 방법을 보여 줍니다.
코드 예 12-5 로그아웃에 대한 작업 추가
<Object name='Logout'>
<Attribute name='displayName' value='LG_LOGOUT'/>
<Attribute name='logDbKey' value='LO'/>
</Object>
extendedResults
감사 유형 및 작업을 확장하는 것 외에 결과를 추가할 수도 있습니다. 기본적으로 성공과 실패라는 두 가지 결과가 있습니다. extendedResults 속성의 객체 목록에 이 결과를 추가하여 결과를 확장할 수 있습니다.
각 extendedResults 객체에는 표 12-16에 설명된 속성이 들어 있어야 합니다.
표 12-16 extendedResults 속성
속성
유형
설명
name
String
AuditEvents에서 상태를 설정할 때와 이벤트 필터링 중에 사용되는 결과 이름입니다.
displayName
String
결과 이름을 나타내는 메시지 카탈로그 키입니다.
logDbKey
String
로그 테이블에 이 결과를 저장할 때 사용할 한 자로 된 데이터베이스 키입니다. 예약된 값을 보려면 데이터베이스 키 절을 참조하십시오.
새 내부 키를 추가할 때 키가 중복되지 않도록 모든 고객별 키에는 0에서 9 사이의 값을 사용해야 합니다.
publishers
게시자 목록의 각 항목은 일반 객체입니다. 각 게시자에는 다음과 같은 속성이 있습니다.
표 12-17 게시자 속성
속성
유형
설명
class
String
게시자 클래스 이름입니다.
displayName
String
게시자 이름을 나타내는 메시지 카탈로그 키입니다.
description
String
게시자에 대한 설명입니다.
filters
List
이 게시자에 할당된 감사 그룹 목록입니다.
formatter
String
텍스트 포매터 이름(있는 경우)입니다.
options
List
게시자 옵션 목록. 이 옵션은 게시자 전용입니다. 이 목록의 각 항목은 PublisherOption을 맵으로 표시합니다. 이에 대한 예는 sample/auditconfig.xml을 참조하십시오.
데이터베이스 스키마Identity Manager 데이터베이스에는 감사 데이터를 저장할 때 다음 두 테이블을 사용합니다.
waveset.log
이 절에서는 waveset.log 테이블에 있는 여러 열 이름과 데이터 유형을 나열합니다. 데이터 유형은 Oracle 데이터베이스 정의의 유형을 사용하며 데이터베이스마다 약간 다릅니다. 지원되는 모든 데이터베이스의 데이터 스키마 값 목록은 부록 C, "감사 로그 데이터베이스 스키마"를 참조하십시오.
공간을 최적화하기 위해 일부 열 값이 데이터베이스에 키로 저장됩니다. 키 정의에 대한 자세한 내용은 로그 데이터베이스 키 절을 참조하십시오.
- objectType CHAR(2) - 감사 중인 객체 유형을 나타내는 두 자로 된 키입니다.
- action CHAR(2) - 수행된 작업을 나타내는 두 자로 된 키입니다.
- actionStatus CHAR(1) - 수행된 작업 결과를 나타내는 한 자로 된 키입니다.
- reason CHAR(2) - 실패가 발생한 경우 ReasonDenied 객체를 설명하는 두 자로 된 데이터베이스 키입니다. ReasonDenied는 메시지 카탈로그 항목을 래핑하는 클래스이며 잘못된 자격 증명 및 권한 부족과 같은 일반적인 실패에 사용됩니다.
- actionDateTime VARCHAR(21) - 위의 작업이 수행된 날짜와 시간입니다. 이 값은 GMT 시간으로 저장됩니다.
- objectName VARCHAR(128) - 작업 중에 실행된 객체 이름입니다.
- resourceName VARCHAR(128) - 적용 가능한 경우 작업 중에 사용된 자원 이름입니다. 자원을 참조하지 않는 이벤트도 있지만, 대부분의 경우 작업이 수행된 자원을 기록할 수 있는 더욱 세부적인 정보를 제공합니다.
- accountName VARCHAR(255) - 적용 가능한 경우 실행 중인 계정 아이디입니다.
- server VARCHAR(128) - 작업이 수행된 서버이며 이벤트 로거에서 자동으로 할당합니다.
- message VARCHAR(255) - 오류 메시지 등을 비롯하여 작업과 관련된 모든 현지화된 메시지입니다. 텍스트는 현지화되어 저장되므로 국제화되지 않습니다.
- interface VARCHAR(50) - 작업이 수행된 Identity Manager 인터페이스(예: 관리자, 사용자, IVR 또는 SOAP 인터페이스)입니다.
- acctAttrChanges VARCHAR(4000) - 만들기 및 업데이트 중에 변경된 계정 속성을 저장합니다. 자원 계정 또는 Identity Manager 계정 객체에 대한 만들기 또는 업데이트 중에는 항상 속성 변경 사항 필드가 채워집니다. 작업 중에 변경된 모든 속성은 이 필드에 문자열로 저장됩니다. 데이터의 형식은 NAME=VALUE NAME2=VALUE2입니다. 이름 또는 값에 대해 "contains" SQL 문을 실행하여 이 필드를 쿼리할 수 있습니다.
코드 예 12-6은 acctAttrChanges 열에 있는 값입니다.
코드 예 12-6 acctAttrChanges 열의 값
COMPANY="COMPANY" DEPARTMENT="DEPT" DESCRIPTION="DSMITH
DESCRIPTION" FAX NUMBER="5122222222" HOME ADDRESS="12282
MOCKINGBIRD LANE" HOME CITY="AUSTIN" HOME PHONE="5122495555"
HOME STATE="TX" HOME ZIP="78729" JOB TITLE="DEVELOPER"
MOBILE PHONE="5125551212" WORK PHONE="5126855555"
EMAIL="someone@somecompany.COM" EXPIREPASSWORD="TRUE"
FIRSTNAME="DANIEL" FULLNAME="DANIEL SMITH" LASTNAME="SMITH"
- acctAttr01label-acctAttr05label VARCHAR(50) - 이 다섯 개의 추가 NAME 슬롯은 큰 블롭이 아닌 자체의 열에 저장될 최대 다섯 개까지의 속성으로 수준을 올릴 수 있는 열입니다. 자원 스키마 구성 페이지에서 "audit?" 설정을 사용하여 속성의 수준을 올릴 수 있으며 이 속성을 데이터 마이닝에 사용할 수 있습니다.
- acctAttr01value-acctAttr05value VARCHAR(128) - 블롭 열이 아닌 별도의 열에 저장될 최대 다섯 개까지의 속성으로 수준을 올릴 수 있는 다섯 개의 추가 VALUE 슬롯입니다.
- parm01label-parm05label VARCHAR(50) - 이벤트와 관련된 매개 변수를 저장하는 데 사용되는 다섯 개의 슬롯입니다. 클라이언트 IP와 세션 아이디를 예로 들 수 있습니다.
- parm01value-parm05value VARCHAR(128) - 이벤트와 관련된 매개 변수를 저장하는 데 사용되는 다섯 개의 슬롯입니다. 클라이언트 IP와 세션 아이디를 예로 들 수 있습니다.
- id VARCHAR(50) - 저장소에서 각 레코드에 할당한 고유한 아이디이며 waveset.logattr 테이블에서 참조됩니다.
- name VARCHAR(128) - 생성된 이름이며 각 레코드에 할당됩니다.
waveset.logattr
waveset.logattr 테이블은 각 이벤트의 조직 구성원 아이디를 저장하며 조직별로 감사 로그의 범위를 설정하는 데 사용됩니다.
로그 데이터베이스 키objectType, 작업, actionStatus 및 이유 열은 공간을 절약하기 위해 데이터베이스에 키로 저장됩니다.
ObjectType, 작업 및 결과
표 12-18에서는 데이터베이스에 키로 저장되는 objectType, 작업 및 결과에 대해 설명합니다.
표 12-18 키로 저장되는 objectType, 작업 및 결과
objectType 이름
DbKey
작업 이름
DbKey
결과 이름
DbKey
Account
AN
Approve
AP
Success
S
관리자
AD
Bypass Verify
BV
Failure
F
AdminGroup
AG
Cancel Reconcile
CR
Attribute Definition
AF
challengeResponse
CD
Application
AP
Change Password
CP
Capability
US
Create
CT
구성
CN
Connect
CO
검색
DS
Delete
DL
EmailTemplate
ET
Deprovision
DP
Extract
ER
Disable
DS
ExtractTask
EX
Disconnect
DC
Identity Manager Account
LA
사용 설정
EN
IDMXUser
UX
Execute
LN
LoadConfig
LD
Export
EP
LoadTask
LT
Import
IM
LoginConfig
LC
List
LI
Policy
PO
Load
LD
Provisioning Task
PT
Login
LG
Resource
RS
Update
MO
Resource Account
RA
Logout
LO
Resource Form
RF
Native Changes
NC
Resource Object
RE
사후 작업
PT
RiskReportTask
RR
사전 작업
PE
역할
RL
Provision
PV
규칙
RU
Reset Password
RP
사용자
US
Reprovision
RV
TaskDefinition
TD
Reject
RJ
TaskInstance
TI
Terminate
TR
TaskSchedule
TS
usernameRecovery
UR
TaskTemplate
TT
TaskResult
TR
UserForm
UF
WorkItem
WI
XMLDATA
XD
이유
표 12-19에서는 데이터베이스에 키로 저장되는 이유에 대해 설명합니다.
표 12-19 키로 저장되는 이유
이유 이름
텍스트
DbKey
PolicyViolation
정책 {0} 위반: {1}
PV
InvalidCredentials
잘못된 자격 증명
CR
InsufficientPrivileges
권한 부족
IP
DatabaseAccessFailed
데이터베이스 액세스 실패
DA
AccountDisabled
계정 비활성
DI
감사 로그 손상 방지다음과 같은 형태의 감사 로그 손상을 방지하도록 Identity Manager를 구성할 수 있습니다.
모든 Identity Manager 감사 로그 레코드에는 서버별로 고유한 순서 번호와 레코드 및 순서 번호에 대한 암호화된 해시가 있습니다. 손상 검색 보고서를 만들 때 서버별로 감사 로그에 다음이 있는지 검색합니다.
손상 방지 로깅 구성
손상 방지 로깅을 구성하려면 다음 단계를 수행합니다.
- 보고서> 새로 만들기> 감사 로그 손상 보고서를 선택하여 손상 보고서를 만듭니다.
- 손상 보고서 정의 페이지(그림 12-1 참조)가 표시되면 보고서의 제목을 입력한 다음 저장합니다.
그림 12-1 감사 로그 손상 보고서 구성
다음의 선택 매개 변수를 지정할 수도 있습니다.
- 보고서 요약 - 보고서를 설명하는 요약을 입력합니다.
- 서버의 시작 순서 '<server_name>' - 서버의 시작 순서 번호를 입력합니다.
- 이 옵션을 사용하면 이전 로그 항목을 손상된 것으로 플래그 지정하지 않고 삭제할 수 있으며 보고서 범위를 제한하여 성능을 개선할 수 있습니다.
- 전자 메일로 보고서 보내기 - 보고서 결과를 지정한 전자 메일 주소로 보낼 수 있습니다.
- 이 옵션을 선택하면 페이지가 새로 고침되고 전자 메일 주소를 입력하라는 메시지가 표시됩니다. 그러나 텍스트 내용을 전자 메일로 보내는 것은 안전하지 않습니다. 계정 아이디나 계정 내역과 같은 중요한 정보가 노출될 수 있습니다.
- 기본 PDF 옵션 대체 - 이 보고서의 기본 PDF 옵션을 대체하려면 이 옵션을 선택합니다.
- 조직 - 이 보고서에 액세스해야 하는 조직을 선택합니다.
- 그런 다음 구성 > 감사를 선택하여 감사 구성 페이지(그림 12-2 참조)를 엽니다.
그림 12-2 손상 방지 감사 로깅 구성
- 사용자 정의 게시자 사용을 선택한 다음 저장소 게시자 링크를 누릅니다.
- 손상 방지 감사 로그 활성화를 선택한 다음 확인을 누릅니다.
- 저장을 눌러 설정을 저장합니다.
이 옵션을 다시 해제할 수도 있지만, 이렇게 하면 감사 로그 손상 보고서에서 서명되지 않은 항목이 이와 같이 플래그 표시되므로 이러한 항목을 무시하도록 보고서를 다시 구성해야 합니다.
사용자 정의 게시자 사용Identity Manager에서는 사용자 정의 감사 게시자에 감사 이벤트를 제출할 수 있습니다. 다음과 같은 사용자 정의 게시자를 사용할 수 있습니다.
이러한 게시자에 대한 소스 코드는 참조 키트에 있습니다. 인터페이스에 대한 설명서도 참조 키트에서 Javadoc 형식으로 제공합니다.
게시자 개발
모든 게시자는 AuditLogPublisher 인터페이스를 구현합니다. 인터페이스에 대한 자세한 내용은 Javadoc를 참조하십시오. 개발자는 AbstractAuditLogPublisher 클래스를 확장할 수 있습니다. 이 클래스는 구성을 구문 분석하고 게시자에 대해 모든 필수 옵션이 제공되었는지 확인합니다. 참조 키트에서 예 게시자를 참조하십시오.
게시자에는 인수 없는 구성자가 있어야 합니다.
라이프사이클
다음 단계에서는 게시자의 라이프사이클에 대해 설명합니다.
1-3단계는 Identity Manager가 시작될 때와 감사 구성이 업데이트될 때마다 실행됩니다. 종료가 호출되기 전에 감사 이벤트가 생성되지 않는 경우 4단계는 발생하지 않습니다.
configure(Map) 메소드는 동일한 게시자 객체에서 한 번만 호출됩니다. 게시자는 즉석에서 만들어지는 구성 변경 사항에 대비할 필요가 없습니다. 감사 구성이 업데이트되면 먼저 현재 게시자가 종료된 후 새 게시자가 만들어집니다.
3단계의 configure() 메소드는 WavesetException을 발생시킬 수 있습니다. 이 경우 게시자는 무시되고 게시자에 대한 다른 호출이 수행되지 않습니다.
구성
게시자에는 0개 이상의 옵션이 있을 수 있습니다. getConfigurationOptions() 메소드는 게시자에서 지원하는 옵션 목록을 반환합니다. 옵션은 PublisherOption 클래스를 사용하여 캡슐화됩니다. 이 클래스에 대한 자세한 내용은 Javadoc를 참조하십시오. 감사 구성 뷰어에서 게시자의 구성 인터페이스를 작성할 때 이 메소드를 호출합니다.
Identity Manager에서는 서버 시작 시와 감사 구성이 변경된 후에 configure(Map) 메소드를 사용하여 게시자를 구성합니다.
포매터 개발
참조 키트에는 다음과 같은 포매터에 대한 소스 코드가 포함됩니다.
포매터는 AuditRecordFormatter 인터페이스를 구현해야 합니다. 또한 포매터에는 인수 없는 구성자가 있어야 합니다. 자세한 내용은 참조 키트에 있는 Javadoc를 참조하십시오.
게시자/포매터 등록
#ID#Configuration:SystemConfiguration 객체의 감사 속성에서는 등록된 게시자와 포매터를 모두 나열합니다. 이러한 게시자와 포매터만 감사 구성 사용자 인터페이스에서 사용할 수 있습니다.