검색

9.7. 액세스 제어 설계

download PDF
디렉터리 클라이언트의 ID를 설정하는 데 사용할 인증 체계를 결정한 후 해당 체계를 사용하여 디렉터리에 포함된 정보를 보호하는 방법을 결정합니다. 액세스 제어는 특정 클라이언트가 특정 정보에 액세스할 수 있도록 지정할 수 있지만 다른 클라이언트는 그렇지 않습니다.
액세스 제어는 하나 이상의 ACL( 액세스 제어 목록 )을 사용하여 정의됩니다. 디렉터리의 ACL은 권한(예: 읽기, 쓰기, 검색 및 비교)을 허용하거나 거부하는 일련의 ACI( 액세스 제어 정보 )로 구성되며, 지정된 항목 및 해당 속성으로 구성됩니다.
ACL을 사용하면 디렉터리 트리의 모든 수준에서 권한을 설정할 수 있습니다.
  • 전체 디렉터리입니다.
  • 디렉터리의 특정 하위 트리입니다.
  • 디렉터리의 특정 항목.
  • 특정 항목 특성 세트입니다.
  • 지정된 LDAP 검색 필터와 일치하는 모든 항목입니다.
또한 특정 사용자, 특정 그룹에 속한 모든 사용자에 대해 또는 디렉터리의 모든 사용자에 대해 권한을 설정할 수 있습니다. 마지막으로 IP 주소(IPv4 또는 IPv6) 또는 DNS 이름과 같은 네트워크 위치에 대한 액세스를 정의할 수 있습니다.

9.7.1. ACI 형식 정보

보안 정책을 설계할 때 디렉터리에 ACI가 표시되는 방식을 이해하는 것이 도움이 됩니다. 또한 디렉터리에 설정할 수 있는 권한을 이해하는 데 도움이 됩니다. 이 섹션에서는 ACI 메커니즘에 대한 간략한 개요를 제공합니다. ACI 형식에 대한 자세한 내용은 Red Hat Directory Server 관리 가이드를 참조하십시오.
디렉터리 ACI는 다음과 같은 일반적인 형식을 사용합니다. 대상 권한 bind_rule
ACI 변수는 다음과 같습니다.
  • 대상. ACI가 대상으로 하는 항목(일반적으로 하위 트리), 대상 속성 또는 둘 다에 해당하는 항목(일반적으로 하위 트리)을 지정합니다. 대상은 ACI가 적용되는 디렉터리 요소를 식별합니다. ACI는 하나의 항목만 대상으로 지정할 수 있지만 여러 속성을 대상으로 지정할 수 있습니다. 또한 대상에 LDAP 검색 필터가 포함될 수 있습니다. 공통 특성 값이 포함된 널리 사용되는 항목에 대해 권한을 설정할 수 있습니다.
  • 권한. 이 ACI에서 설정하는 실제 권한을 식별합니다. 권한 변수는 ACI가 지정된 대상에 대한 읽기 또는 검색과 같은 특정 유형의 디렉터리 액세스를 허용하거나 거부함을 나타냅니다.
  • 바인딩 규칙. 권한이 적용되는 바인딩 DN 또는 네트워크 위치를 식별합니다. 바인딩 규칙은 LDAP 필터를 지정할 수도 있으며 해당 필터가 바인딩 클라이언트 애플리케이션에 대해 true로 평가되면 ACI가 클라이언트 애플리케이션에 적용됩니다.
따라서 ACIS는 다음과 같이 표시할 수 있습니다. " 디렉터리 오브젝트 대상의 경우 bind_rule이 true인 경우 허용 또는 거부 권한을 거부합니다.
permission bind_rule 은 쌍으로 설정되며 모든 대상에 대해bind_rule 쌍이 여러 개 있을 수 있습니다. 지정된 대상에 대해 여러 액세스 제어를 효과적으로 설정할 수 있습니다. 예를 들면 다음과 같습니다.
target (permission bind_rule)(permission bind_rule)...
Babs Jensen으로 바인딩하는 모든 사람이 Babs Jensen의 전화 번호에 쓸 수 있도록 권한을 설정할 수 있습니다. 이 권한의 바인딩 규칙은 "Babs Jensen으로 바인딩하는 경우"를 나타내는 부분입니다. 대상은 Babs Jensen의 전화 번호이며 권한은 쓰기 액세스입니다.

9.7.1.1. 대상

디렉터리에 생성된 모든 ACI가 대상으로 하는 항목을 결정합니다. 디렉터리 분기 지점을 대상으로 하는 항목에는 해당 분기 지점과 권한 범위의 모든 하위 항목이 포함됩니다. 대상 항목이 ACI에 대해 명시적으로 정의되지 않은 경우 ACI는 ACI 문이 포함된 디렉터리 항목을 대상으로 합니다. targetattr 매개변수를 하나 이상의 속성을 대상으로 설정합니다. targetattr 매개변수가 설정되지 않은 경우 특성을 대상으로 하지 않습니다. 자세한 내용은 Red Hat Directory Server 관리 가이드 의 해당 섹션을 참조하십시오.
모든 ACI에 대해 하나의 항목 또는 단일 LDAP 검색 필터와 일치하는 항목만 대상으로 지정할 수 있습니다.
대상 항목 외에도 항목의 속성을 대상으로 지정할 수 있습니다. 이 경우 속성 값의 하위 집합에만 사용 권한이 적용됩니다. 대상 속성의 이름을 명시적으로 지정하거나 ACI의 대상으로 하지 않는 속성의 이름을 명시적으로 지정하여 특성의 대상 집합을 설정합니다.Sets of attributes by explicitly naming those attributes that are targeted or by explicitly naming the attributes that are targeted by the ACI. 대상의 속성을 제외하면 오브젝트 클래스 구조에서 허용하는 몇 가지 특성을 제외한 모든 권한에 대한 권한이 설정됩니다.

9.7.1.2. 권한

권한은 액세스를 허용하거나 거부할 수 있습니다. 일반적으로 권한 거부를 방지합니다( 9.7.2.2절. “액세스 허용 또는 거부”에 설명된 이유로). 권한은 디렉터리 서비스에서 수행되는 모든 작업이 될 수 있습니다.
권한 설명
읽기 디렉터리 데이터를 읽을 수 있는지 여부를 나타냅니다.
쓰기 디렉터리 데이터를 변경하거나 만들 수 있는지 여부를 나타냅니다. 이 권한은 디렉터리 데이터를 삭제할 수 있지만 항목 자체는 삭제할 수 없습니다. 전체 항목을 삭제하려면 사용자에게 삭제 권한이 있어야 합니다.
검색
디렉터리 데이터를 검색할 수 있는지 여부를 나타냅니다. 해당 읽기의 읽기 권한과는 다릅니다. 이 경우 검색 작업의 일부로 반환되는 경우 디렉터리 데이터를 볼 수 있습니다.
예를 들어, 공통 이름을 검색하는 것은 물론 사람의 방 번호에 대한 읽기 권한이 허용되면, 방 번호는 공통 이름 검색의 일부로 반환될 수 있지만, 방 번호 자체는 검색 제목으로 사용할 수 없습니다. 이 조합을 사용하여 사용자가 특정 공간에 있는 사람을 확인하기 위해 디렉토리를 검색하지 못하도록 합니다.
비교 데이터를 비교 작업에 사용할 수 있는지 여부를 나타냅니다.Indicates whether the data may be used in comparison operations. 비교 권한은 검색할 수 있는 기능을 의미하지만 실제 디렉터리 정보는 검색 결과로 반환되지 않습니다. 대신 비교된 값이 일치하는지 여부를 나타내는 간단한 부울 값이 반환됩니다. 디렉터리 인증 중에 userPassword 속성 값을 일치시키는 데 사용됩니다.
자체 쓰기 그룹 관리에만 사용됩니다. 이 권한을 사용하면 사용자가 그룹에 자신을 추가하거나 삭제할 수 있습니다.
add 하위 항목을 만들 수 있는지 여부를 나타냅니다. 이 권한을 사용하면 사용자가 대상 항목 아래에 하위 항목을 생성할 수 있습니다.
delete 항목을 삭제할 수 있는지 여부를 나타냅니다. 이 권한을 사용하면 사용자가 대상 항목을 삭제할 수 있습니다.
proxy 사용자가 Directory Manager를 제외한 다른 DN을 사용하여 이 DN의 권한이 있는 디렉터리에 액세스할 수 있음을 나타냅니다.

9.7.1.3. 바인딩 규칙

바인딩 규칙은 일반적으로 권한에 따라 바인딩 DN을 나타냅니다. 또한 날짜 또는 IP 주소와 같은 바인딩 특성을 지정할 수 있습니다.
바인딩 규칙은 ACI가 사용자의 자체 항목에만 적용되도록 쉽게 표현합니다. 이를 통해 사용자는 다른 사용자의 항목을 업데이트할 위험이 발생하지 않고 자체 항목을 업데이트할 수 있습니다.
바인딩 규칙은 ACI가 특정 상황에 적용 가능함을 나타냅니다.
  • 바인딩 작업이 특정 IP 주소(IPv4 또는 IPv6) 또는 DNS 호스트 이름에서 도달하는 경우에만 사용됩니다. 이는 종종 모든 디렉터리 업데이트가 지정된 시스템 또는 네트워크 도메인에서 발생하도록 하는 데 사용됩니다.
  • 예를 들어, 그 사람이 익명을 묶는 것입니다. 익명 바인딩에 대한 권한을 설정하면 디렉터리에 바인딩하는 모든 사용자에게 권한이 적용됩니다.
  • 디렉터리에 성공적으로 바인딩하는 모든 사용자의 경우 이를 통해 익명 액세스를 방지하는 동안 일반적인 액세스가 가능합니다.
  • 클라이언트가 항목의 즉시 상위로 바인딩된 경우에만 해당합니다.
  • 사용자가 바인딩된 항목이 특정 LDAP 검색 기준을 충족하는 경우에만 해당합니다.
Directory Server는 이러한 종류의 액세스를 보다 쉽게 표현하기 위해 여러 키워드를 제공합니다.
  • 상위. 바인딩 DN이 즉시 상위 항목인 경우 바인딩 규칙이 true입니다. 즉, 디렉터리 분기에서 즉각적인 하위 항목을 관리할 수 있도록 특정 권한을 부여할 수 있습니다.
  • 자체. 바인딩 DN이 액세스를 요청하는 항목과 동일한 경우 바인딩 규칙이 true입니다. 개인이 자신의 항목을 업데이트할 수 있도록 특정 권한을 부여할 수 있습니다.
  • 모두. 바인딩 규칙은 디렉터리에 성공적으로 바인딩된 모든 사용자에게 적용됩니다.
  • 모든 사람. 바인딩 규칙은 모든 사람에게 적용됩니다. 이 키워드는 익명 액세스를 허용하거나 거부하는 데 사용됩니다.

9.7.2. 권한 설정

기본적으로 모든 사용자는 Directory Manager를 제외하고 모든 종류의 액세스 권한이 거부됩니다. 결과적으로 사용자가 디렉터리에 액세스할 수 있도록 디렉터리를 위해 일부 ACI를 설정해야 합니다.
디렉터리에서 ACI를 설정하는 방법에 대한 자세한 내용은 Red Hat Directory Server 관리 가이드를 참조하십시오.

9.7.2.1. 우선순위 규칙

사용자가 디렉터리 항목에 대한 모든 종류의 액세스를 시도하면 Directory Server는 디렉터리에 설정된 액세스 제어를 검사합니다. 액세스를 결정하기 위해 디렉터리 서버는 우선순위 규칙을 적용합니다. 이 규칙은 두 개의 충돌하는 권한이 있는 경우 액세스를 거부하는 권한은 항상 액세스 권한을 부여하는 권한보다 우선합니다.
예를 들어 디렉터리의 루트 수준에서 쓰기 권한이 거부되고 해당 권한이 디렉터리에 액세스하는 모든 사용자에게 적용되는 경우 쓰기 액세스를 허용할 수 있는 기타 권한에 관계없이 사용자는 디렉터리에 쓸 수 없습니다. 디렉터리에 특정 사용자 쓰기 권한을 허용하려면 해당 사용자를 포함하지 않도록 원래의 deny-for-write 범위를 설정해야 합니다. 그런 다음 사용자에게 해당 사용자에 대한 추가 allow-for-write 권한이 있어야 합니다.

9.7.2.2. 액세스 허용 또는 거부

디렉터리 트리에 대한 액세스는 명시적으로 허용 또는 거부할 수 있지만 디렉터리에 대한 액세스를 명시적으로 거부해야 합니다. 우선순위 규칙으로 인해 디렉터리가 명시적으로 액세스를 금지하는 규칙을 발견하면 디렉터리에 액세스 권한을 부여할 수 있는 충돌하는 권한과 관계없이 액세스를 금지합니다.
사용자 또는 클라이언트 애플리케이션의 가능한 최소 하위 집합만 포함하도록 허용 액세스 규칙의 범위를 제한합니다. 예를 들어 사용자가 디렉터리 항목의 모든 속성에 쓸 수 있도록 권한을 설정할 수 있지만 Directory Administrators 그룹의 멤버를 제외한 모든 사용자는 uid 속성에 쓰는 권한을 거부할 수 있습니다. 또는 다음과 같은 방법으로 쓰기 액세스를 허용하는 두 가지 액세스 규칙을 작성합니다.
  • uid 특성을 제외한 모든 속성에 대한 쓰기 권한을 허용하는 하나의 규칙을 생성합니다. 이 규칙은 모든 사람에게 적용되어야 합니다.
  • uid 속성에 대한 쓰기 권한을 허용하는 하나의 규칙을 생성합니다. 이 규칙은 Directory Administrators 그룹의 멤버에게만 적용되어야 합니다.
허용 권한만 제공하면 명시적 거부 권한을 설정할 필요가 없습니다.

9.7.2.3. 액세스 거부 시기

명시적 거부 권한을 설정할 필요는 없지만 유용한 몇 가지 상황이 있습니다.
  • 복잡한 ACL 분배가 포함된 대규모 디렉터리 트리가 있습니다.
    보안상의 이유로 특정 사용자, 그룹 또는 물리적 위치에 대한 액세스를 갑자기 거부해야 할 수 있습니다. 기존 ACL을 신중하게 검사하여 허용 권한을 적절하게 제한하는 방법을 이해하는 대신 분석을 수행할 시간이 있을 때까지 명시적 거부 권한을 일시적으로 설정합니다. ACL이 복잡한 경우 장기적으로는 ACI가 관리 오버헤드에만 추가됩니다. 가능한 한 빨리 명시적 거부 권한을 방지하기 위해 ACL을 다시 작업한 다음 전체 액세스 제어 체계를 단순화합니다.
  • 액세스 제어는 요일 또는 하루 1시간을 기반으로 해야 합니다.
    예를 들어, 일요일 오후 11시부터 모든 쓰기 활동이 거부될 수 있습니다. (2300) - 월요일부터 오전 1:00. (0100). 관리 관점에서는 이러한 종류의 시간 기반 액세스를 명시적으로 제한하는 ACI를 관리하는 것이 모든 allow-for-write ACI에 대한 디렉터리를 검색하고 이 시간 프레임에서 범위를 제한하는 것보다 더 쉽게 관리할 수 있습니다.
  • 디렉터리 관리 권한을 여러 사용자에게 위임할 때 권한을 제한해야 합니다.
    사람 또는 사용자 그룹이 트리의 일부 측면을 수정하지 않고 디렉터리 트리의 일부를 관리할 수 있도록 허용하려면 명시적 거부 권한을 사용합니다.
    예를 들어 메일 관리자가 공통 이름 속성에 대한 쓰기 액세스를 허용하지 않도록 하려면 공통 이름 속성에 대한 쓰기 액세스를 명시적으로 거부하는 ACI를 설정합니다.

9.7.2.4. 액세스 제어 규칙 위치

액세스 제어 규칙은 디렉터리의 모든 항목에 배치할 수 있습니다. 관리자는 종종 오브젝트 클래스 domainComponent,country,organization,organizationalUnit,inetOrgPerson 또는 그룹을 사용하여 항목에 액세스 제어 규칙을 배치합니다.
ACL 관리를 단순화하기 위해 규칙을 가능한 한 그룹으로 구성합니다. 규칙은 일반적으로 대상 항목 및 해당 항목의 모든 하위 항목에 적용됩니다. 따라서 개별 리프(예: 사람) 항목 간에 분산하는 대신 디렉터리 또는 디렉터리 분기 지점의 루트 지점에 액세스 제어 규칙을 배치하는 것이 가장 좋습니다.

9.7.2.5. 필터링된 액세스 제어 규칙 사용

Directory Server ACI 모델의 강력한 기능 중 하나는 LDAP 검색 필터를 사용하여 액세스 제어를 설정하는 기능입니다. LDAP 검색 필터를 사용하여 정의된 기준 세트와 일치하는 디렉터리 항목에 대한 액세스를 설정합니다.
예를 들어 Marketing으로 설정된 organizationalUnit 속성이 포함된 모든 항목에 대해 읽기 액세스를 허용합니다.
필터링된 액세스 제어 규칙을 사용하면 사전 정의된 액세스 수준을 허용합니다. 디렉터리에 홈 주소 및 전화 번호 정보가 포함되어 있다고 가정합니다. 어떤 사람들은 이 정보를 공개하고 싶은 반면, 다른 사람들은 이 정보를 공개하고자 합니다. 이러한 문제를 해결하는 방법은 여러 가지가 있습니다.
  • publish HomeContactInfo 라는 모든 사용자의 디렉터리 항목에 속성을 만듭니다.
  • publish home ContactInfo 속성이 true 로 설정된 항목에 대해서만 home Cryostat 및 homePostalAddress 속성에 대한 읽기 액세스 권한을 부여하는 액세스 제어 규칙을 설정합니다. LDAP 검색 필터를 사용하여 이 규칙의 대상을 표현합니다.
  • 디렉터리 사용자가 자체 publish HomeContactInfo 속성의 값을 true 또는 false 로 변경할 수 있도록 허용합니다. 이러한 방식으로 디렉터리 사용자는 이 정보를 공개적으로 사용할 수 있는지 여부를 결정할 수 있습니다.
LDAP 검색 필터 사용 및 ACI에서 LDAP 검색 필터 사용에 대한 자세한 내용은 Red Hat Directory Server 관리 가이드를 참조하십시오.

9.7.3. ACI 보기: 효과적인 권한 얻기

항목에 설정된 액세스 제어를 확인하여 세분화된 액세스 제어 또는 효율적인 입력 관리를 수행할 수 있습니다. get effective 권한 은 항목 내의 각 속성에 설정된 액세스 제어 권한을 반환하는 확장된 ldapsearch 이며 LDAP 클라이언트에서 서버의 액세스 제어 구성에서 사용자가 수행할 수 있는 작업을 결정할 수 있습니다.
액세스 제어 정보는 두 개의 액세스 그룹, 즉 항목 및 속성에 대한 권한으로 나뉩니다. "입력 권리"는 특정 항목으로 제한되는 수정 또는 삭제와 같은 권한을 의미합니다. "속성 권리"는 디렉터리 전체에서 해당 속성의 모든 인스턴스에 대한 액세스 권한을 의미합니다.
이러한 종류의 세부 액세스 제어는 다음과 같은 상황에서 필요할 수 있습니다.
  • 관리자는 특정 그룹 또는 사용자가 항목에 대한 액세스 액세스 허용 및 기타 사용자를 제한하는 등 1분 동안 get effective rights 명령을 사용할 수 있습니다. 예를 들어 Cryostat 관리자 그룹의 멤버는 제목급여 와 같은 특성을 검색하고 읽을 수 있는 권한이 있을 수 있지만 HR 그룹 멤버만 수정하거나 삭제할 수 있는 권한이 있습니다.
  • 사용자는 get effective rights 옵션을 사용하여 개인 항목에서 보거나 수정할 수 있는 속성을 결정할 수 있습니다. 예를 들어 사용자는 homePostalAddresscn 과 같은 속성에 액세스할 수 있어야 하지만 제목급여 에 대한 읽기 액세스 권한만 있을 수 있습니다.
-E 스위치를 사용하여 실행된 ldapsearch 는 일반 검색 결과의 일부로 특정 항목에 대한 액세스 제어를 반환합니다. 다음 검색은 사용자가 자신의 개인 입력에 대한 권리를 보여줍니다.
ldapsearch -x -p 389 -h server.example.com -D "uid=tmorris,ou=people,dc=example,dc=com" -W -b "uid=tmorris,ou=people,dc=example,dc=com" -E !1.3.6.1.4.1.42.2.27.9.5.2:dn:uid=tmorris,ou=people,dc=example,dc=com "(objectClass=*)"

version: 1
dn: uid=tmorris,ou=People,dc=example,dc=com
givenName: Ted
sn: Morris
ou: Accounting
ou: People
l: Santa Clara
manager: uid=dmiller,ou=People,dc=example,dc=com
roomNumber: 4117
mail: tmorris@example.com
facsimileTelephoneNumber: +1 408 555 5409
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
uid: tmorris
cn: Ted Morris
userPassword: {SSHA}bz0uCmHZM5b357zwrCUCJs1IOHtMD6yqPyhxBA==
entryLevelRights: vadn
attributeLevelRights: givenName:rsc, sn:rsc, ou:rsc, l:rscow, manager:rsc, roomNumber:rscwo, mail:rscwo, facsimileTelephoneNumber:rscwo, objectClass:rsc, uid:rsc, cn:rsc, userPassword:wo
이 예에서 Ted Paulris는 entryLevel belows의 결과에 표시된 대로 자체 항목에서 DN을 추가, 보기, 삭제 또는 이름을 변경할 수 있는 권한이 있습니다. 즉, attributeLevels 결과에 표시된 대로 암호에 대한 자체 쓰기 및 자체 삭제 권한만 읽고, 검색, 비교, 자체 수정 또는 자체 삭제(l-delete)할 수 있습니다.
기본적으로 유효 권한 정보는 값이 없거나 항목에 존재하지 않는 항목의 속성에 대해 반환되지 않습니다. 예를 들어 userPassword 값이 제거되면 위의 항목에 대한 향후 유효 권한 검색은 self-write 및 self-delete 권한이 허용될 수 있더라도 userPassword 에 대한 유효한 권한을 반환하지 않습니다. 마찬가지로, read , compare, search 권한이 있는 Street 속성이 추가된 경우, Street: rscattributeLevel rights 결과에 나타납니다.
존재하지 않는 속성 또는 운영 속성과 같이 일반적으로 검색 결과에 포함되지 않은 속성에 대한 권한을 반환할 수 있습니다. 별표(*)를 사용하면 존재하지 않는 속성을 포함하여 항목에 대해 가능한 모든 속성에 대한 권한이 반환됩니다.
ldapsearch -x -E !1.3.6.1.4.1.42.2.27.9.5.2:dn:uid=scarter,ou=people,dc=example,dc=com "(objectclass=*)" "*"
더하기 기호(+)를 사용하면 일반적으로 ldapsearch 별표(*)로 반환되지 않는 항목의 작동 속성을 반환합니다. 예를 들면 다음과 같습니다.
ldapsearch -x -E !1.3.6.1.4.1.42.2.27.9.5.2:dn:uid=scarter,ou=people,dc=example,dc=com "(objectclass=*)" "+"
별표(*) 및 더하기 기호(+)를 함께 사용하여 항목의 모든 속성을 반환할 수 있습니다.

9.7.4. ACI 사용: 일부 힌트 및 팁

보안 정책을 구현할 때 이 팁을 고려하십시오. 디렉터리 보안 모델을 관리하고 디렉터리의 성능 특성을 개선하는 데 도움이 될 수 있습니다.
  • 디렉터리의 ACI 수를 최소화합니다.
    Directory Server는 50,000개 이상의 ACI를 평가할 수 있지만 많은 ACI 문을 관리하기가 어렵습니다. 많은 ACI를 사용하면 사용자 관리자가 특정 클라이언트에서 사용할 수 있는 디렉터리 오브젝트를 즉시 확인할 수 있습니다.
    Directory Server는 매크로를 사용하여 디렉터리의 ACI 수를 최소화합니다. 매크로는 ACI에서 DN 또는 DN의 일부를 나타내는 데 사용되는 자리 표시자입니다. 매크로를 사용하여 ACI의 대상 부분 또는 바인딩 규칙 부분 또는 둘 다에서 DN을 나타냅니다. 매크로 ACI에 대한 자세한 내용은 Red Hat Directory Server 관리 가이드의 "액세스 제어 관리" 장을 참조하십시오.
  • 권한 균형을 허용 및 거부합니다.
    기본 규칙은 액세스 권한이 부여되지 않은 모든 사용자에 대한 액세스를 거부하는 것이지만 하나의 ACI를 사용하여 트리의 루트에 가까운 액세스 권한과 리프 항목에 가까운 일부 거부 ACI를 사용하여 ACI 수를 줄이는 것이 좋습니다. 이 시나리오에서는 리프 항목에 가까운 여러 허용 ACI를 사용하지 않을 수 있습니다.
  • 지정된 ACI에서 가장 작은 속성 세트를 식별합니다.
    오브젝트에서 속성 하위 집합에 대한 액세스를 허용하거나 거부할 때 가장 작은 목록이 허용되는 속성 세트인지 또는 거부되는 특성 집합인지 확인합니다. 그런 다음 ACI를 표현하여 가장 작은 목록만 관리해야 합니다.
    예를 들어 person 오브젝트 클래스는 많은 수의 특성을 포함합니다. 사용자가 이러한 속성 중 하나 또는 두 개만 업데이트할 수 있도록 허용하려면 몇 가지 속성에 대한 쓰기 액세스 권한을 허용하도록 ACI를 작성합니다. 그러나 사용자가 하나 또는 두 개의 특성을 제외한 모든 속성을 업데이트할 수 있도록 하려면 ACI를 생성하여 몇 개의 이름이 지정된 특성에 대한 쓰기 액세스를 허용합니다.
  • LDAP 검색 필터를 신중하게 사용합니다.
    검색 필터는 액세스를 관리하는 오브젝트의 이름을 직접 지정하지 않습니다. 따라서 사용 시 예기치 않은 결과가 발생할 수 있습니다. 디렉터리가 더 복잡해지면 특히 그렇습니다. ACI에서 검색 필터를 사용하기 전에 동일한 필터를 사용하여 ldapsearch 작업을 실행하여 변경 결과가 디렉터리에 미치는 영향을 명확하게 파악합니다.
  • 디렉터리 트리의 다른 부분에서 ACI를 복제하지 마십시오.
    겹치는 ACI를 보호합니다. 예를 들어 디렉터리 루트 지점에는 commonNamegivenName 속성에 대한 그룹 쓰기 액세스 권한이 있고 commonName 속성에 대해 동일한 그룹 쓰기 액세스 권한을 허용하는 다른 ACI가 있는 경우 하나의 컨트롤만 그룹에 대한 쓰기 액세스 권한을 부여하도록 ACI를 다시 작업하는 것이 좋습니다.
    디렉터리가 점점 복잡해지면 실수로 ACI가 중복될 위험이 빠르게 증가합니다. ACI가 겹치는 것을 방지하면 보안 관리가 더 쉬워지고 디렉터리에 포함된 총 ACI 수를 줄일 수 있습니다.
  • 이름 ACI.
    ACI 이름을 지정하는 것은 선택 사항이지만 각 ACI에 짧고 의미 있는 이름을 지정하는 것은 보안 모델을 관리하는 데 도움이 됩니다.
  • 디렉토리 내에서 ACI를 가능한 한 밀접하게 함께 그룹화합니다.
    ACI 배치를 디렉터리 루트 지점 및 주요 디렉토리 분기 지점으로 제한하십시오. ACI 그룹화는 전체 ACI 목록을 관리하고 디렉터리에 있는 총 ACI 수를 최소로 유지하는 데 도움이 됩니다.
  • 바인딩 DN이 cn=Joe와 같지 않은 경우 쓰기 거부와 같은 이중 음수를 사용하지 마십시오.
    이 구문은 서버에 완벽하게 허용되지만 사용자 관리자가 혼동을 줄 수 있습니다.

9.7.5. 루트 DN(Directory Manager)에 ACI 적용

일반적으로 액세스 제어 규칙은 Directory Manager 사용자에게 적용되지 않습니다. 디렉터리 관리자는 일반 사용자 데이터베이스가 아닌 dse.ldif 파일에 정의되어 있으므로 ACI 대상에는 해당 사용자가 포함되지 않습니다.
유지 관리 관점에서도 의미가 있습니다. 디렉터리 관리자는 유지 관리 작업을 수행하고 사고에 응답하기 위해 높은 수준의 액세스 권한이 필요합니다.
그러나 Directory Manager 사용자의 권한 때문에 권한이 없는 액세스 또는 공격이 root 사용자로 수행되지 않도록 특정 수준의 액세스 제어가 권장될 수 있습니다.
RootDN 액세스 제어 플러그인은 Directory Manager 사용자와 관련된 특정 액세스 제어 규칙을 설정합니다.
  • 시간 범위에 대한 시간 기반 액세스 제어 (예: 8a.m. ~ 5p.m). (0800에서1700).
  • 주간 액세스 제어이므로 명시적으로 정의된 요일에서만 액세스가 허용됩니다.
  • 지정된 IP 주소, 도메인 또는 서브넷만 명시적으로 허용 또는 거부되는 IP 주소 규칙
  • 지정된 호스트 이름, 도메인 이름 또는 하위 도메인만 명시적으로 허용되거나 거부되는 호스트 액세스 규칙
다른 액세스 제어 규칙과 마찬가지로 규칙 슈퍼세드 허용 규칙을 거부합니다.
중요
Directory Manager에 항상 승인 수준의 액세스 권한이 있는지 확인합니다. 디렉터리 관리자는 시간외로 유지 관리 작업을 수행하거나(사용자 로드가 켜진 경우) 또는 실패에 응답해야 할 수 있습니다. 이 경우 엄격한 시간 또는 일 기반 액세스 제어 규칙을 설정하면 디렉터리 관리자가 디렉터리를 적절하게 관리할 수 없게 될 수 있습니다.
루트 DN 액세스 제어 규칙은 기본적으로 비활성화되어 있습니다. RootDN 액세스 제어 플러그인을 활성화해야 하는 다음 적절한 액세스 제어 규칙을 설정할 수 있습니다.
참고
플러그인 항목에는 Directory Manager에 대한 액세스 제어 규칙 세트가 하나만 있으며 전체 디렉터리에 대한 모든 액세스 권한에 적용됩니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.