Sun Java System Access Manager 7.1 릴리스 노트

영역 모드에서 새 그룹을 만들면 전혀 사용되지 않는 ACI가 포함된 그룹 관리 항목이 생성됩니다. (6485695)

Access Manager가 영역 모드로 설치된 경우 새 그룹을 만들 때마다 Access Manager는 그룹을 관리하는 데 필요한 ACI가 포함된 새 그룹 관리 항목을 동적으로 만듭니다. 영역 모드에서는 이러한 그룹 관리 ACI가 사용되지 않습니다. 하지만 Directory Server가 접미사에서 항목을 처리하는 동안 이를 평가하므로 Access Manager 성능이 저하될 수 있으며, 특히 배포에서 많은 수의 그룹을 만드는 경우 더욱 저하됩니다.

해결 방법: 이 문제의 해결 방법은 두 부분으로 구성되어 있습니다.

그룹 관리자 ACI 생성 중단

다음 절차를 수행하여 새 그룹을 만들 때마다 Access Manager가 그룹 관리 및 해당 ACI를 만들지 않도록 합니다.


주 –

이 절차를 수행하면 새 그룹을 만들 때마다 그룹 관리 및 해당 ACI를 만드는 작업이 완전히 중단됩니다. 이러한 작업이 사용자의 배포 환경에 적합한 경우에만 이 절차를 사용하십시오.


  1. amAdminConsole.xml 파일을 백업합니다. 이 파일은 사용자 플랫폼에 따라 다음 디렉토리에 위치합니다.

    • Solaris 시스템: /etc/opt/SUNWam/config/xml

    • Linux 및 HP-UX 시스템: /etc/opt/sun/identity/config/xml

    • Windows 시스템: javaes-install-dir\identity\config\xml

      여기서 javaes-install-dir은 Java ES 5 설치 디렉토리를 나타내며기본값은 C:\Program Files\Sun\JavaES5입니다.

  2. amAdminConsole.xml 파일에서 명령줄 사이에 나와 있는 다음 그룹 관리 항목을 제거합니다.

    <AttributeSchema name="iplanet-am-admin-console-dynamic-aci-list"
        type="list"
        syntax="string"
        i18nKey="g111">
        <DefaultValues>
    ...
    # Beginning of entry to delete
                    <Value>Group Admin|Group Admin Description|ORGANIZATION:aci: 
    (target="ldap:///GROUPNAME")(targetattr = "*") 
    (version 3.0; acl "Group and people container admin role"; 
    allow (all) roledn = "ldap:///ROLENAME";)##ORGANIZATION:aci: 
    (target="ldap:///ORGANIZATION")
    (targetfilter=(&amp;FILTER(!(|(nsroledn=cn=Top-level Admin Role,dc=iplanet,dc=com)
    (nsroledn=cn=Top-level Help Desk Admin Role,dc=iplanet,dc=com)
    (nsroledn=cn=Top-level Policy Admin Role,dc=iplanet,dc=com)
    (nsroledn=cn=Organization Admin Role,ORGANIZATION)
    (nsroledn=cn=Container Admin Role,ORGANIZATION)
    (nsroledn=cn=Organization Policy Admin Role,ORGANIZATION)))))
    (targetattr != "iplanet-am-web-agent-access-allow-list || 
    iplanet-am-web-agent-access-not-enforced-list|| 
    iplanet-am-domain-url-access-allow || 
    iplanet-am-web-agent-access-deny-list ||nsroledn")
    (version 3.0; acl "Group admin's right to the members"; allow (read,write,search) 
    roledn = "ldap:///ROLENAME";)</Value>
    # End of entry to delete
    ...
        </DefaultValues>
    </AttributeSchema>
  3. amadmin을 사용하여 Access Manager에서관리 콘솔 서비스를 삭제합니다. 예를 들어 Solaris 시스템의 경우 다음을 삭제합니다.

    # cd /opt/SUNWam/bin
    # ./amadmin -u amadmin -w amadmin_password 
    --deleteService iPlanetAMAdminConsoleService
  4. amadmin을 사용하여 관리 콘솔 서비스를 2단계에서 편집한 amAdminConsole.xml 파일에서 Access Manager로 다시 로드합니다. 예를 들면 다음과 같습니다.

    # ./amadmin -u amadmin -w amadmin_password 
    -t /etc/opt/SUNWam/config/xml/amAdminConsole.xml
  5. Access Manager 웹 컨테이너를 다시 시작합니다. Directory Server에서 ACI를 제거하려면 다음 절차에서 설명하는 대로 해당 절차를 마친 후 잠시 기다렸다가 웹 컨테이너를 다시 시작합니다.

기존 그룹 관리 ACI 제거


주 –

다음 절차에서는 ldapsearchldapmodify 유틸리티를 사용하여 그룹 관리 ACI를 찾아서 제거합니다. 배포에서 Directory Server 6.0을 사용하는 경우 DSCC(Directory Server Control Center) 또는 dsconf 명령을 사용하여 이 기능을 수행할 수도 있습니다. 자세한 내용은 Directory Server 6.0 설명서를 참조하십시오.

http://docs.sun.com/app/docs/coll/1224.1


다음 절차에서는 Directory Server에 이미 있는 그룹 관리 ACI를 제거합니다.

  1. 그룹 관리 ACI를 제거하려면 ldapmodify와 함께 사용할 LDIF 파일을 만듭니다. 이러한 ACI를 찾으려면 ldapsearch를 사용하거나 원하는 경우 다른 디렉토리 검색 도구를 사용합니다.

    예를 들어 Remove_Group_ACIs.ldif라는 예제 LDIF 파일의 다음 항목은 New Group이라는 그룹의 ACI를 제거합니다.

    dn: ROOT_SUFFIX
    changetype: modify
    delete: aci
    aci: (target="ldap:///cn=New Group,ou=Groups,o=isp")(targetattr = "*") 
    (version 3.0; acl "Group and people container admin role"; allow (all) 
    roledn = "ldap:///cn=cn=New Group_ou=Groups_o=isp,o=isp";)
    
    dn: ROOT_SUFFIX
    changetype: modify
    delete: aci
    aci: (target="ldap:///ou=People,o=isp")(targetattr="nsroledn")
    (targattrfilters="add=nsroledn:(!(nsroledn=*)),
    del=nsroledn:(!(nsroledn=*))") (version 3.0; 
    acl "Group admin's right to add user to people container"; allow (add) 
    roledn = "ldap:///cn=cn=New Group_ou=Groups_o=isp,o=isp";)
    
    dn: ROOT_SUFFIX
    changetype: modify
    delete: aci
    aci: (target="ldap:///o=isp")
    (targetfilter=(&(|(memberof=*cn=New Group,ou=Groups,o=isp)
    (iplanet-am-static-group-dn=*cn=New Group,ou=Groups,o=isp))
    (!(|(nsroledn=cn=Top-level Admin Role,o=isp)
    (nsroledn=cn=Top-level Help Desk Admin Role,o=isp)
    (nsroledn=cn=Top-level Policy Admin Role,o=isp)
    (nsroledn=cn=Organization Admin Role,o=isp)(
    nsroledn=cn=Container Admin Role,o=isp)
    (nsroledn=cn=Organization Policy Admin Role,o=isp)))))
    (targetattr != "iplanet-am-web-agent-access-allow-list || 
    iplanet-am-web-agent-access-not-enforced-list || 
    iplanet-am-domain-url-access-allow || 
    iplanet-am-web-agent-access-deny-list ||nsroledn")
    (version 3.0; acl "Group admin's right to the members"; 
    allow (read,write,search) 
    roledn = "ldap:///cn=cn=New Group_ou=Groups_o=isp,o=isp";) 
    aci: (target="ldap:///o=isp")(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,o=isp"; )
  2. 이전 단계에서 만든 LDIF 파일을 ldapmodify와 함께 사용하여 Directory Server에서 그룹 ACI를 제거합니다. 예를 들면 다음과 같습니다.

    # ldapmodify -h ds-host -p 389 -D "cn=Directory Manager" 
    -w ds-bind-password -f Remove_Group_ACIs.ldif
  3. Access Manager 웹 컨테이너를 다시 시작합니다.