14.5. 동기화 예


이 섹션에는 RFC 2307,Active Directory 및 보강된 Active Directory 스키마의 예가 포함되어 있습니다. 다음 예제는 두 개의 멤버가 있는 admins 라는 그룹을 동기화합니다. JaneJim. 각 예제에서는 다음을 설명합니다.

  • 그룹 및 사용자를 LDAP 서버에 추가하는 방법
  • LDAP 동기화 구성 파일의 내용
  • 동기화 후 OpenShift Container Platform에 생성되는 결과 그룹 레코드
참고

이러한 예에서는 모든 사용자를 해당 그룹의 직접 멤버로 가정합니다. 특히, 어떠한 그룹도 다른 그룹의 멤버가 될 수 없습니다. 중첩 그룹을 동기화하는 방법에 대한 자세한 내용은 중첩 멤버십 동기화 예제 를 참조하십시오.

14.5.1. RFC 2307 스키마를 사용하여 그룹 동기화

RFC 2307 스키마에서는 사용자(Jane 및 Jim)와 그룹 모두 LDAP 서버에 최상위 항목으로 존재하며, 그룹 멤버십은 그룹 속성에 저장됩니다. 다음의 ldif 조각에서는 이 스키마의 사용자 및 그룹을 정의합니다.

RFC 2307 스키마를 사용하는 LDAP 항목: rfc2307.ldif

  dn: ou=users,dc=example,dc=com
  objectClass: organizationalUnit
  ou: users

  dn: cn=Jane,ou=users,dc=example,dc=com
  objectClass: person
  objectClass: organizationalPerson
  objectClass: inetOrgPerson
  cn: Jane
  sn: Smith
  displayName: Jane Smith
  mail: jane.smith@example.com

  dn: cn=Jim,ou=users,dc=example,dc=com
  objectClass: person
  objectClass: organizationalPerson
  objectClass: inetOrgPerson
  cn: Jim
  sn: Adams
  displayName: Jim Adams
  mail: jim.adams@example.com

  dn: ou=groups,dc=example,dc=com
  objectClass: organizationalUnit
  ou: groups

  dn: cn=admins,ou=groups,dc=example,dc=com 1
  objectClass: groupOfNames
  cn: admins
  owner: cn=admin,dc=example,dc=com
  description: System Administrators
  member: cn=Jane,ou=users,dc=example,dc=com 2
  member: cn=Jim,ou=users,dc=example,dc=com

1
그룹은 LDAP 서버의 최상위 항목입니다.
2
그룹 멤버와 함께 그룹 속성이 식별을 위한 참조 정보로 나열됩니다.

이 그룹을 동기화하려면 먼저 구성 파일을 생성해야 합니다. RFC 2307 스키마를 사용하려면 사용자 항목 및 그룹 항목에 대한 LDAP 쿼리 정의와 내부 OpenShift Container Platform 레코드에서 해당 항목을 표시하는 데 사용할 속성을 제공해야 합니다.

명확히 하기 위해, OpenShift Container Platform에서 생성한 그룹의 경우 사용자용 필드 또는 관리자용 필드에 가급적 고유 이름 이외의 속성을 사용해야 합니다. 예를 들면 이메일로 OpenShift Container Platform 그룹의 사용자를 구분하고, 그룹 이름을 공통 이름으로 사용합니다. 다음 구성 파일에서는 이러한 관계를 생성합니다.

참고

사용자 정의 이름 매핑을 사용하는 경우 구성 파일이 다릅니다.

RFC 2307 스키마를 사용하는 LDAP 동기화 구성: rfc2307_config.yaml

kind: LDAPSyncConfig
apiVersion: v1
url: ldap://LDAP_SERVICE_IP:389 1
insecure: false 2
rfc2307:
    groupsQuery:
        baseDN: "ou=groups,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    groupUIDAttribute: dn 3
    groupNameAttributes: [ cn ] 4
    groupMembershipAttributes: [ member ] 5
    usersQuery:
        baseDN: "ou=users,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    userUIDAttribute: dn 6
    userNameAttributes: [ uid ] 7
    tolerateMemberNotFoundErrors: false
    tolerateMemberOutOfScopeErrors: false

1
이 그룹의 레코드가 저장된 LDAP 서버의 IP 주소 및 호스트입니다.
2
false인 경우 보안 LDAP(ldaps://) URL이 TLS를 사용하여 연결되고 안전하지 않은 LDAP(ldap://) URL은 TLS로 업그레이드됩니다. true인 경우 ldaps:// URL을 지정하지 않는 한 서버에 TLS 연결이 이루어지지 않습니다. 이 경우 URL은 계속 TLS를 사용하여 연결을 시도합니다.
3
LDAP 서버에서 그룹을 고유하게 식별하는 속성입니다. groupUIDAttribute로 DN을 사용할 때는 groupsQuery 필터를 지정할 수 없습니다. 세분화된 필터링의 경우 허용 목록 / 블랙리스트 메서드를 사용합니다.
4
그룹 이름으로 사용할 속성입니다.
5
멤버십 정보를 저장하는 그룹의 속성입니다.
6
LDAP 서버에서 사용자를 고유하게 식별하는 속성입니다. userUIDAttribute로 DN을 사용할 때는 usersQuery 필터를 지정할 수 없습니다. 세분화된 필터링의 경우 허용 목록 / 블랙리스트 메서드를 사용합니다.
7
OpenShift Container Platform 그룹 레코드에서 사용자 이름으로 사용할 속성입니다.

rfc2307_config.yaml 파일과의 동기화를 실행하려면 다음을 수행합니다.

$ oc adm groups sync --sync-config=rfc2307_config.yaml --confirm

OpenShift Container Platform은 위 동기화 작업의 결과로 다음과 같은 그룹 레코드를 만듭니다.

rfc2307_config.yaml 파일을 사용하여 생성된 OpenShift Container Platform 그룹

apiVersion: user.openshift.io/v1
kind: Group
metadata:
  annotations:
    openshift.io/ldap.sync-time: 2015-10-13T10:08:38-0400 1
    openshift.io/ldap.uid: cn=admins,ou=groups,dc=example,dc=com 2
    openshift.io/ldap.url: LDAP_SERVER_IP:389 3
  creationTimestamp:
  name: admins 4
users: 5
- jane.smith@example.com
- jim.adams@example.com

1
이 OpenShift Container Platform 그룹이 LDAP 서버와 마지막으로 동기화된 시간으로, ISO 6801 형식으로 되어 있습니다.
2
LDAP 서버에서 그룹의 고유 식별자입니다.
3
이 그룹의 레코드가 저장된 LDAP 서버의 IP 주소 및 호스트입니다.
4
동기화 파일에서 지정한 그룹의 이름입니다.
5
동기화 파일에서 지정한 대로 이름이 지정된 그룹 멤버에 해당하는 사용자입니다.

14.5.1.1. 사용자 정의 이름 매핑이 포함된 RFC2307

사용자 정의 이름 매핑과 그룹을 동기화하면 구성 파일이 이러한 매핑을 포함하도록 아래와 같이 변경됩니다.

사용자 정의 이름 매핑과 RFC 2307 스키마를 사용하는 LDAP 동기화 구성: rfc2307_config_user_defined.yaml

kind: LDAPSyncConfig
apiVersion: v1
groupUIDNameMapping:
  "cn=admins,ou=groups,dc=example,dc=com": Administrators 1
rfc2307:
    groupsQuery:
        baseDN: "ou=groups,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    groupUIDAttribute: dn 2
    groupNameAttributes: [ cn ] 3
    groupMembershipAttributes: [ member ]
    usersQuery:
        baseDN: "ou=users,dc=example,dc=com"
        scope: sub
        derefAliases: never
        pageSize: 0
    userUIDAttribute: dn 4
    userNameAttributes: [ uid ]
    tolerateMemberNotFoundErrors: false
    tolerateMemberOutOfScopeErrors: false

1
사용자 정의 이름 매핑입니다.
2
사용자 정의 이름 매핑에서 키에 사용되는 고유 식별자 속성입니다. groupUIDAttribute로 DN을 사용할 때는 groupsQuery 필터를 지정할 수 없습니다. 세분화된 필터링의 경우 허용 목록 / 블랙리스트 메서드를 사용합니다.
3
사용자 정의 이름 매핑에 고유 식별자가 없는 경우 OpenShift Container Platform 그룹의 이름을 지정하는 속성입니다.
4
LDAP 서버에서 사용자를 고유하게 식별하는 속성입니다. userUIDAttribute로 DN을 사용할 때는 usersQuery 필터를 지정할 수 없습니다. 세분화된 필터링의 경우 허용 목록 / 블랙리스트 메서드를 사용합니다.

rfc2307_config_user_defined.yaml 파일과의 동기화를 실행하려면 다음을 수행합니다.

$ oc adm groups sync --sync-config=rfc2307_config_user_defined.yaml --confirm

OpenShift Container Platform은 위 동기화 작업의 결과로 다음과 같은 그룹 레코드를 만듭니다.

rfc2307_config_user_defined.yaml 파일을 사용하여 생성된 OpenShift Container Platform 그룹

apiVersion: user.openshift.io/v1
kind: Group
metadata:
  annotations:
    openshift.io/ldap.sync-time: 2015-10-13T10:08:38-0400
    openshift.io/ldap.uid: cn=admins,ou=groups,dc=example,dc=com
    openshift.io/ldap.url: LDAP_SERVER_IP:389
  creationTimestamp:
  name: Administrators 1
users:
- jane.smith@example.com
- jim.adams@example.com

1
사용자 정의 이름 매핑에 의해 지정된 그룹의 이름입니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.