System Administration Question #019e3a4f
Qual é a diferença entre um perfil de segurança e um contexto de segurança?
Security Contexts configuram Clusters e Namespaces em tempo de execução. Security profiles são mecanismos do plano de controle para impor configurações específicas no Security Context.
Security Contexts configuram Pods e Containers em tempo de execução. Security profiles são mecanismos do plano de controle para impor configurações específicas no Security Context.
Security Profiles configuram Pods e Containers em tempo de execução. Security Contexts são mecanismos do plano de controle para impor configurações específicas no Security Profile.
Security Profiles configuram Clusters e Namespaces em tempo de execução. Security Contexts são mecanismos do plano de controle para impor configurações específicas no Security Profile.
Official Explanation / Community Explanations
Resumo
Um Security Context define configurações de privilégio e controle de acesso para Pods e Containers em tempo de execução, como IDs de usuário, grupos, opções SELinux e capacidades. Um Security Profile é um mecanismo do plano de controle (por exemplo, Pod Security Standards ou controladores de admissão personalizados) que impõe configurações específicas no Security Context, garantindo conformidade com políticas organizacionais.
Como Funciona
- Security Context: Configurado no nível do Pod ou Container na especificação do Pod (
.spec.securityContext). Ele se aplica diretamente aos processos em execução, controlando capacidades Linux, runAsUser, fsGroup, seLinuxOptions, etc. É um atributo de tempo de execução. - Security Profile: Um objeto de política de nível superior (por exemplo, PodSecurityPolicy, restrições do OPA Gatekeeper ou políticas do Kyverno) que valida ou modifica Pods durante a admissão. Ele impõe que os Security Contexts atendam a certos critérios (por exemplo, proibir contêineres privilegiados, exigir sistema de arquivos raiz somente leitura). Profiles são mecanismos do plano de controle que operam antes da criação do Pod.
Por que a Resposta Correta está Correta
A afirmação correta é: "Security Contexts configuram Pods e Containers em tempo de execução. Security profiles são mecanismos do plano de controle para impor configurações específicas no Security Context." Isso reflete com precisão que Security Contexts são configurações de tempo de execução aplicadas a Pods/Containers individuais, enquanto Security Profiles são políticas de tempo de admissão que impõem restrições nesses Security Contexts.
Por que as Respostas Incorretas estão Erradas
- A afirmação de que Security Contexts configuram Clusters e Namespaces está incorreta; Security Contexts são de nível de Pod/Container, não de cluster/namespace. A segurança em nível de cluster é tratada por outros recursos como RBAC, NetworkPolicies ou PodSecurityAdmission.
- A afirmação de que Security Profiles configuram Pods e Containers em tempo de execução está incorreta; Security Profiles não são configurações de tempo de execução, mas políticas de controle de admissão. Eles não configuram Pods diretamente; eles impõem regras sobre Security Contexts.
- A afirmação de que Security Contexts são mecanismos do plano de controle está incorreta; Security Contexts são atributos de tempo de execução, não políticas do plano de controle. O plano de controle impõe políticas via Security Profiles.
- A afirmação de que Security Profiles configuram Clusters e Namespaces é enganosa; embora os profiles possam ser aplicados no escopo do namespace, eles não configuram clusters/namespaces em si—eles impõem restrições nos Security Contexts dos Pods.