From f97bac279197f222d22d2384927599cb8ab15cce Mon Sep 17 00:00:00 2001 From: lacatoire Date: Sun, 8 Feb 2026 19:14:15 +0100 Subject: [PATCH] Add new questions for Security and Storage domains Security (+34 questions): - docker_bench_security.yaml: Docker Bench for Security (8) - seccomp_profiles.yaml: seccomp profiles (6) - apparmor_selinux.yaml: AppArmor/SELinux (6) - docker_secrets.yaml: secrets management (8) - readonly_containers.yaml: read-only containers (6) Storage & Volumes (+26 questions): - tmpfs_mounts.yaml: tmpfs mounts (6) - storage_driver_comparison.yaml: storage driver comparison (8) - system_cleanup.yaml: docker system df/prune (6) - volume_plugins_nfs.yaml: volume plugins and NFS (6) --- README.md | 9 +++ data/5_Security/apparmor_selinux.yaml | 54 ++++++++++++++ data/5_Security/docker_bench_security.yaml | 72 +++++++++++++++++++ data/5_Security/docker_secrets.yaml | 72 +++++++++++++++++++ data/5_Security/readonly_containers.yaml | 54 ++++++++++++++ data/5_Security/seccomp_profiles.yaml | 54 ++++++++++++++ .../storage_driver_comparison.yaml | 72 +++++++++++++++++++ .../6_storage_and_volumes/system_cleanup.yaml | 54 ++++++++++++++ data/6_storage_and_volumes/tmpfs_mounts.yaml | 54 ++++++++++++++ .../volume_plugins_nfs.yaml | 54 ++++++++++++++ 10 files changed, 549 insertions(+) create mode 100644 data/5_Security/apparmor_selinux.yaml create mode 100644 data/5_Security/docker_bench_security.yaml create mode 100644 data/5_Security/docker_secrets.yaml create mode 100644 data/5_Security/readonly_containers.yaml create mode 100644 data/5_Security/seccomp_profiles.yaml create mode 100644 data/6_storage_and_volumes/storage_driver_comparison.yaml create mode 100644 data/6_storage_and_volumes/system_cleanup.yaml create mode 100644 data/6_storage_and_volumes/tmpfs_mounts.yaml create mode 100644 data/6_storage_and_volumes/volume_plugins_nfs.yaml diff --git a/README.md b/README.md index 213bd15..a342e79 100644 --- a/README.md +++ b/README.md @@ -108,6 +108,11 @@ The goal is to help candidates: * [Describe and demonstrate how to configure RBAC with UCP.](data/5_Security/ucp_rbac_config.yaml) * [Describe and demonstrate how to integrate UCP with LDAP/AD.](data/5_Security/ucp_ldap_ad_integration.yaml) * [Describe and demonstrate how to create UCP client bundles.](data/5_Security/ucp_client_bundle.yaml) +* [Describe Docker Bench for Security.](data/5_Security/docker_bench_security.yaml) +* [Describe seccomp profiles.](data/5_Security/seccomp_profiles.yaml) +* [Describe AppArmor and SELinux with Docker.](data/5_Security/apparmor_selinux.yaml) +* [Describe Docker secrets management.](data/5_Security/docker_secrets.yaml) +* [Describe read-only containers.](data/5_Security/readonly_containers.yaml) ### Domain 6: Storage and Volumes (10% of exam) @@ -120,6 +125,10 @@ The goal is to help candidates: * [Describe and demonstrate how storage can be used across cluster nodes.](data/6_storage_and_volumes/volume_cluster.yaml) * [Describe how to provision persistent storage to a Kubernetes pod using persistentVolumes.](data/6_storage_and_volumes/peristent_volumes.yaml) * [Describe the relationship between container storage interface drivers, storageClass, persistentVolumeClaim and volume objects in Kubernetes.](data/6_storage_and_volumes/relationship_storage_volume.yaml) +* [Describe tmpfs mounts.](data/6_storage_and_volumes/tmpfs_mounts.yaml) +* [Compare storage drivers.](data/6_storage_and_volumes/storage_driver_comparison.yaml) +* [Describe docker system df and prune commands.](data/6_storage_and_volumes/system_cleanup.yaml) +* [Describe volume plugins and NFS.](data/6_storage_and_volumes/volume_plugins_nfs.yaml) ## Contributions diff --git a/data/5_Security/apparmor_selinux.yaml b/data/5_Security/apparmor_selinux.yaml new file mode 100644 index 0000000..1afb17e --- /dev/null +++ b/data/5_Security/apparmor_selinux.yaml @@ -0,0 +1,54 @@ +questions: + - uuid: b4d2e8a1-c5f3-4976-9d07-6b1a3e7f2c89 + question: What type of access control do AppArmor and SELinux provide for Docker containers? + answers: + - { value: 'Discretionary Access Control (DAC)', correct: false } + - { value: 'Role-Based Access Control (RBAC)', correct: false } + - { value: 'Mandatory Access Control (MAC)', correct: true } + - { value: 'Attribute-Based Access Control (ABAC)', correct: false } + help: https://docs.docker.com/engine/security/apparmor/ + + - uuid: e7f1c3b5-a2d4-4868-b9e0-8d6a1f5c4b27 + question: What is the name of the default AppArmor profile that Docker applies to containers? + answers: + - { value: 'docker-apparmor', correct: false } + - { value: 'container-default', correct: false } + - { value: 'docker-default', correct: true } + - { value: 'apparmor-docker-profile', correct: false } + help: https://docs.docker.com/engine/security/apparmor/ + + - uuid: 9a5b1d8e-f4c2-4637-a0b3-7e6d3c1f9a45 + question: Which flag is used to specify a custom AppArmor profile when running a Docker container? + answers: + - { value: '--apparmor-profile=', correct: false } + - { value: '--security-opt apparmor=', correct: true } + - { value: '--cap-add apparmor=', correct: false } + - { value: '--mac-profile=', correct: false } + help: https://docs.docker.com/engine/security/apparmor/ + + - uuid: 2c8f4a6d-b1e3-4d59-87b0-5e9a3d7c1f62 + question: How do you apply SELinux label options to a Docker container at runtime? + answers: + - { value: '--selinux=