Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

https://developer.ibm.com/learningpaths/secure-context-constraints-openshift/scc-tutorial/

Steps

Login and create our demo project

Code Block
themeEmacs
oc login -u kubeadmin https://api.crc.testing:6443

oc new-project demo
oc project demo

Apply our default deployment

Code Block
themeEmacs
git clone https://github.com/IBM/scc-tutorial-assets.git
cd scc-tutorial-assets
oc apply -f deploy_default.yaml

See what SCC was applied using the describe command:

Code Block
themeEmacs
oc get pod/scc-tutorial-deploy-default-58db6b6f58-ww54l -o yaml 
Code Block
apiVersion: v1
kind: Pod
metadata:
  annotations:
    openshift.io/scc: restricted-v2
...
spec:
  containers:
  - command:
    - sh
    - -c
    - echo "Hello from user $(id -u)" && sleep infinity
    image: ubi8/ubi-minimal
    imagePullPolicy: Always
    name: ubi-minimal
    resources: {}
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        drop:
        - ALL
      runAsNonRoot: true
      runAsUser: 1000660000
...
securityContext:
    fsGroup: 1000660000
    seLinuxOptions:
      level: s0:c26,c5
    seccompProfile:
      type: RuntimeDefault
  serviceAccount: default
  serviceAccountName: default
...

In the above we can see the following values were applied:

Code Block
 openshift.io/scc: restricted-v2
Code Block
 securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        drop:
        - ALL
      runAsNonRoot: true
      runAsUser: 1000660000
Code Block
securityContext:
    fsGroup: 1000660000
    seLinuxOptions:
      level: s0:c26,c5
    seccompProfile:
      type: RuntimeDefault
Code Block
  serviceAccount: default
  serviceAccountName: default

Login to the POD

Code Block
themeEmacs
oc rsh pod/scc-tutorial-deploy-default-58db6b6f58-ww54l

or 

kubectl -n demo exec -it pod/scc-tutorial-deploy-default-58db6b6f58-ww54l bash

....



References

...