15.4. 보안 컨텍스트 제약 조건 생성

OpenShift CLI(oc)를 사용하여 SCC(보안 컨텍스트 제약 조건)를 생성할 수 있습니다.

사전 요구 사항

  • OpenShift CLI(oc)를 설치합니다.
  • cluster-admin 역할의 사용자로 클러스터에 로그인합니다.

절차

  1. 이름이 scc_admin.yaml인 YAML 파일에 SCC를 정의합니다.

    SecurityContextConstraints 오브젝트 정의

    kind: SecurityContextConstraints
    apiVersion: security.openshift.io/v1
    metadata:
      name: scc-admin
    allowPrivilegedContainer: true
    runAsUser:
      type: RunAsAny
    seLinuxContext:
      type: RunAsAny
    fsGroup:
      type: RunAsAny
    supplementalGroups:
      type: RunAsAny
    users:
    - my-admin-user
    groups:
    - my-admin-group

    필요한 경우 requiredDropCapabilities 필드를 원하는 값으로 설정하여 SCC의 특정 기능을 삭제할 수 있습니다. 지정된 기능은 컨테이너에서 삭제됩니다. 모든 기능을 삭제하려면 ALL 을 지정합니다. 예를 들어 KILL,MKNOD, SYS_CHROOT 기능을 삭제하는 SCC를 생성하려면 SCC 오브젝트에 다음을 추가합니다.

    requiredDropCapabilities:
    - KILL
    - MKNOD
    - SYS_CHROOT
    참고

    허용된 기능과 requiredDropCapabilities 모두에서 기능을 나열할 수 없습니다.

    CRI-O는 Docker 문서에 있는 동일한 기능 값 목록을 지원합니다.

  2. 파일에서 전달하여 SCC 생성:

    $ oc create -f scc_admin.yaml

    출력 예

    securitycontextconstraints "scc-admin" created

검증

  • SCC가 생성되었는지 확인합니다.

    $ oc get scc scc-admin

    출력 예

    NAME        PRIV      CAPS      SELINUX    RUNASUSER   FSGROUP    SUPGROUP   PRIORITY   READONLYROOTFS   VOLUMES
    scc-admin   true      []        RunAsAny   RunAsAny    RunAsAny   RunAsAny   <none>     false            [awsElasticBlockStore azureDisk azureFile cephFS cinder configMap downwardAPI emptyDir fc flexVolume flocker gcePersistentDisk gitRepo glusterfs iscsi nfs persistentVolumeClaim photonPersistentDisk quobyte rbd secret vsphere]