스태프 서비스, 스태프 플러그인 및 스태프 해상도 문제점 해결

권한 역할에 대한 스태프 지정 문제점을 해결하려면 다음 정보를 사용하십시오.

이 타스크의 수행 목적 및 시기

관련 주제는 다음과 같습니다.

추가 정보는 기술 지원 검색 페이지에서 검색할 수 있습니다.

스태프 verb 전개 중 오류 발생
LDAP 스태프 플러그인을 사용 중인 경우, 플러그인 구성 매개변수 값이 올바르지 않으면 전개에 실패할 수 있습니다. 필수 매개변수를 모두 설정했는지 확인하십시오. BaseDN 매개변수를 LDAP 디렉토리 트리의 루트로 설정하려면 빈 문자열을 지정하고 BaseDN 매개변수를 두 개의 어포스트로피(') 문자(")로 설정하십시오. 큰따옴표(")를 사용하지 마십시오. BaseDN 매개변수를 설정하지 않으면 전개 시 NullPointerException 예외가 발생합니다.
스태프 저장소의 항목이 작업 항목 지정에 반영되지 않음
스태프 조회에서 검색되는 최대 사용자 ID 수는 사용 중인 XSL 변환 파일에 정의된 Threshold 변수로 지정합니다. 예를 들어, LDAP 스태프 플러그인에 사용된 XSL 변환 파일은 Linux 및 UNIX 플랫폼에서는 install-root/ProcessChoreographer/Staff에 있고 Windows 플랫폼에서는 install-root\ProcessChoreographer\Staff에 있는 LDAPTransformation.xsl입니다. 기본 Threshold 값은 20입니다. 이 값을 변경하려면 다음을 수행하십시오.
  1. 새 스태프 플러그인 프로바이더 구성을 작성하여 XSL 파일의 자체 버전을 제공하십시오.
  2. 필요에 따라 XSL 파일에서 다음 항목을 조정하십시오.
     <xsl:variable name="Threshold">20</xsl:variable>
주: Threshold 값을 높게 지정하면 성능이 저하될 수 있습니다. 그러므로 100보다 큰 값은 지정하지 마십시오.
타스크 또는 프로세스 인스턴스에 대한 예상하지 않은 스태프 지정
타스크의 특정 역할에 대한 스태프 verb를 정의하지 않거나 스태프 분석에 실패하거나 결과를 리턴하지 않으면 기본 스태프 지정이 수행됩니다. 기본 스태프 지정으로 예상하지 않은 사용자 권한이 부여될 수 있습니다. 예를 들어, 프로세스 시작자에게 프로세스 관리자 권한이 부여될 수 있습니다. 또한 많은 권한이 종속적 artifact에서 상속됩니다. 예를 들어, 프로세스 관리자는 모든 인라인 타스크의 관리자도 될 수 있습니다.

다음 테이블은 각 상황에 적용되는 기본값을 설명합니다.

표 1. 비즈니스 프로세스의 역할
비즈니스 프로세스의 역할 프로세스 모델에 역할이 정의되지 않은 경우... 프로세스 모델에 역할이 정의되어 있으나 스태프 분석에 실패하거나 올바른 결과를 리턴하지 않은 경우...
프로세스 관리자 프로세스 시작자는 프로세스 관리자가 됨 다음 예외가 발생하며 프로세스가 시작되지 않음

EngineAdministratorCannotBeResolvedException

프로세스 독서자 독서자 없음 독서자 없음
표 2. 인라인 휴먼 타스크 및 에스컬레이션의 역할
인라인 휴먼 타스크 및 에스컬레이션의 역할 타스크 모델에 역할이 정의되지 않은 경우... 타스크 모델에 역할이 정의되어 있으나 스태프 분석에 실패하거나 올바른 결과를 리턴하지 않은 경우...
타스크 관리자 상속만 적용 상속만 적용
타스크 잠재적 인스턴스 작성자 모든 사용자는 잠재적 인스턴스 작성자가 됨 모든 사용자는 잠재적 인스턴스 작성자가 됨
타스크 잠재적 시작자 모든 사용자는 잠재적 시작자가 됨 모든 사용자는 잠재적 시작자가 됨
타스크 잠재적 소유자 모든 사용자는 잠재적 소유자가 됨 관리자는 잠재적 소유자가 됨
타스크 편집자 편집자 없음 편집자 없음
타스크 독서자 상속만 적용 상속만 적용
에스컬레이션 수신자 관리자는 에스컬레이션 수신자가 됨 관리자는 에스컬레이션 수신자가 됨
인라인 타스크에는 다음 상속 규칙이 적용됩니다.
  • 프로세스 관리자는 모든 인라인 타스크, 서브타스크, 후속 타스크 및 에스컬레이션에 대한 관리자가 됩니다.
  • 프로세스 독서자는 모든 인라인 타스크, 서브타스크, 후속 타스크 및 에스컬레이션에 대한 독서자가 됩니다.
  • 타스크 관리자는 이러한 모든 타스크의 모든 서브타스크, 후속 타스크 및 에스컬레이션에 대한 관리자가 됩니다.
  • 타스크 독서자는 이러한 모든 타스크의 모든 서브타스크, 후속 타스크 및 에스컬레이션에 대한 독서자가 됩니다.
  • 타스크 역할의 구성원은 타스크의 에스컬레이션, 서브타스크 및 후속 타스크에 대한 독서자가 됩니다.
  • 에스컬레이션 수신자는 에스컬레이트된 타스크에 대한 독서자가 됩니다.
표 3. 독립형 휴먼 타스크 및 에스컬레이션의 역할
독립형 휴먼 타스크 및 에스컬레이션의 역할 타스크 모델에 역할이 정의되지 않은 경우... 타스크 모델에 역할이 정의되어 있으나 스태프 분석에 실패하거나 올바른 결과를 리턴하지 않은 경우...
타스크 관리자 오리지네이터는 관리자가 됨 AdministratorCannotBeResolvedException 예외가 발생하며 타스크가 시작되지 않음
타스크 잠재적 인스턴스 작성자 모든 사용자는 잠재적 인스턴스 작성자가 됨 모든 사용자는 잠재적 인스턴스 작성자가 됨
타스크 잠재적 시작자 오리지네이터는 잠재적 시작자가 됨 CannotCreateWorkItemException 예외가 발생하며 타스크가 시작되지 않음
잠재적 소유자 모든 사용자는 잠재적 소유자가 됨 관리자는 잠재적 소유자가 됨
편집자 편집자 없음 편집자 없음
독서자 상속만 적용 상속만 적용
에스컬레이션 수신자 관리자는 에스컬레이션 수신자가 됨 관리자는 에스컬레이션 수신자가 됨

독립형 타스크에는 다음 상속 규칙이 적용됩니다.

  • 타스크 관리자는 이러한 모든 타스크의 모든 서브타스크, 후속 타스크 및 에스컬레이션에 대한 관리자가 됩니다.
  • 타스크 독서자는 이러한 모든 타스크의 모든 서브타스크, 후속 타스크 및 에스컬레이션에 대한 독서자가 됩니다.
  • 타스크 역할의 구성원은 타스크의 에스컬레이션, 서브타스크 및 후속 타스크에 대한 독서자가 됩니다.
  • 에스컬레이션 수신자는 에스컬레이트된 타스크에 대한 독서자가 됩니다.
주: 비즈니스 플로우 관리자 API를 통해 메소드를 호출한 경우, J2EE 역할 BPESystemAdministrator의 구성원은 관리자 권한을 가지며 J2EE 역할 BPESystemMonitor의 구성원은 독서자 권한을 가집니다.
주: 휴먼 타스크 관리자 API를 통해 메소드를 호출한 경우, J2EE 역할 TaskSystemAdministrator의 구성원은 관리자 권한을 가지며 J2EE 역할 TaskSystemMonitor의 구성원은 독서자 권한을 가집니다.
스태프 활동이 중지되었습니다.
다음 문제점 중 하나 이상이 발생할 수 있습니다.
  • 비즈니스 프로세스가 탐색을 시작했더라도 휴먼 타스크를 청구할 수 없습니다.
  • SystemOut.log 파일에 CWWB0057I: 처리되지 않은 실패로 인해 'MyProcess' 프로세스의 'MyStaffActivity' 활동이 중지되었습니다...

라는 메시지가 포함되어 있습니다.이 메시지는 WebSphere Application Server 보안이 사용 가능하지 않을 수도 있음을 표시합니다. people 권한을 사용하는 프로세스 및 휴먼 타스크는 보안이 사용 가능해야 하고 사용자 레지스트리가 구성되어야 합니다. 다음 단계를 수행하십시오.

  1. WebSphere 보안이 사용 가능한지 확인하십시오. 관리 콘솔에서 Security > 글로벌 보안으로 이동한 후 글로벌 보안 사용 가능 선택란을 선택했는지 확인하십시오.
  2. 사용자 레지스트리가 구성되어 있는지 확인하십시오. 관리 콘솔에서 보안 > 사용자 레지스트리로 이동한 후 활성 사용자 레지스트리 속성을 선택하십시오.
  3. 활동이 중지된 경우 활동을 다시 시작하십시오.
스태프 저장소에 대한 변경사항이 작업 항목 지정에 즉시 반영되지 않습니다.

Business Process Choreographer는 스태프 디렉토리(예: LDAP(Lightweight Directory Access Protocol) 서버)에 대해 평가한 스태프 지정 결과를 런타임 데이터베이스에 캐시합니다. 스태프 디렉토리를 변경하면 변경사항이 데이터베이스 캐시에 즉시 반영되지 않습니다.

관리 안내서에는 이 캐시를 새로 고치는 다음 세 가지 방법이 설명되어 있습니다.

  • 관리 콘솔을 사용하여 스태프 조회 결과 새로 고치기. 중요한 변경을 수행하거나 대부분의 스태프 조회에 대한 결과를 새로 고치려는 경우 이 방법을 사용하십시오.
  • 관리 명령을 사용하여 스태프 조회 결과 새로 고치기. wsadmin 도구를 사용하여 관리 스크립트를 작성하거나 스태프 조회 결과의 서브세트만 즉시 새로 고치려는 경우 이 방법을 사용하십시오.
  • refresh 데몬을 사용하여 스태프 조회 결과 새로 고치기. 만기된 모든 스태프 조회 결과를 정기적으로 또는 자동으로 새로 고치기를 설정하려면 이 방법을 사용하십시오.
주: 사용자의 그룹 멤버쉽이 사용자가 로그인하고 있는 동안 변경되는 경우, 선행하는 메소드가 Group verb에서 리턴하는 캐시된 값을 새로 고치지 않습니다. 그룹 멤버쉽은 기본적으로 두 시간 후에 만기되는 사용자의 로그인 세션(WebSphere 보안 LTPA 토큰)에 캐시됩니다. 또한 프로세스 탐색에 사용되는 프로세스 시작자 ID의 그룹 멤버쉽 목록은 새로 고칠 수 없습니다.
스태프 분석 관련 오류 및 경고 메시지
스태프 분석 시 스태프 저장소에 액세스하는 중에 일반 오류가 발생할 수 있습니다. 이들 오류에 대한 세부사항을 보려면 다음 추적 설정을 확인하면 됩니다. com.ibm.bpe.*=all: com.ibm.task.*=all:com.ibm.ws.staffsupport.ws.*=all

다음 일반 오류 상황은 경고 또는 오류 메시지를 통해 표시됩니다.

  • trace.log 파일에서 Could not connect to LDAP server는 LDAP 서버에 대한 연결 실패를 나타냅니다. 네트워크 설정 및 사용 중인 스태프 플러그인 프로바이더의 구성(특히, 프로바이더 URL)을 검사하고 LDAP 서버에 SSL 연결이 필요한지 검증하십시오.
  • System.out 또는 System.err 파일에서 javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: Element type "xsl:template" must be followed by either attribute specifications, ">" or "/>"LDAPTransformation.xsl 파일을 읽을 수 없음을 나타냅니다. 스태프 플러그인 프로바이더 구성을 검사하고 구성된 XSLT 파일에서 오류를 확인하십시오.
  • trace.log 파일에서 LDAP object not found. dn: uid=unknown,cn=users,dc=ibm,dc=com [LDAP: error code 32 - No Such Object]는 LDAP 입력 항목을 찾을 수 없음을 나타냅니다. 타스크 모델의 스태프 verb 매개변수 및 LDAP 디렉토리 내용을 검사하여 타스크 모델의 불일치 사항을 확인하십시오.
  • trace.log 파일에서 Requested attribute "uid" not found in: uid=test222,cn=users,dc=ibm,dc=com은 조회된 LDAP 오브젝트에서 속성을 찾을 수 없음을 나타냅니다. 타스크 모델의 스태프 verb 매개변수 및 LDAP 디렉토리 내용을 검사하여 타스크 모델의 불일치 사항을 확인하십시오. 또한 스태프 프로바이더 구성의 XSLT 파일에서 오류를 확인하십시오.
그룹 작업 항목 및 "Group" verb에 대한 사항
Group verb 사용 시, 다음과 같은 특별한 상황이 발생할 수 있습니다.
  • 그룹 이름은 지정했으나 그룹 구성원에게 권한이 부여되지 않았습니다.
    • WebSphere 보안용 로컬 OS 레지스트리를 사용 중인 경우에는 축약 이름을 지정하고 LDAP 레지스트리를 사용 중인 경우에는 dn 그룹을 지정하십시오.
    • 그룹 이름에서 대소문자를 구분했는지 확인하십시오.

    WebSphere 보안용 LDAP 사용자 레지스트리를 구성하고 권한에서 대소문자 구분 안 함 옵션을 선택한 경우에 이러한 상황이 발생할 수 있습니다. 이 경우, 해당 옵션을 선택 취소하거나 LDAP 그룹 dn을 모두 대문자로 지정하십시오.

  • 그룹 멤버쉽에 대한 변경사항이 권한에 즉시 반영되지 않습니다. 이 경우는 관련 사용자가 계속 로그온하고 있을 때 발생할 수 있습니다. 사용자의 그룹 멤버쉽은 로그인 세션에 캐시되며 (기본적으로) 두 시간 후에 만기됩니다. 로그인 세션이 만기될 때까지 대기하거나(기본값은 두 시간) Application Server를 다시 시작할 수 있습니다. 휴먼 타스크 관리자에서 제공한 새로 고치기 방법은 이 verb에는 적용되지 않습니다. 프로세스 시작자의 그룹 멤버쉽 목록은 새로 고칠 수 없습니다.

ⓒ Copyright IBM Corporation 2005, 2006.
이 Information Center는 Eclipse 기술을 기반으로 합니다. (http://www.eclipse.org)