# Aplicando os Padrões de Segurança do Pod Através da Configuração do Controlador de Admissão Embutido

LLMS index: [llms.txt](/llms.txt)

---

O Kubernetes fornece um [controlador de admissão](/docs/reference/access-authn-authz/admission-controllers/#podsecurity)
embutido para garantir os [padrões de segurança do Pod](/docs/concepts/security/pod-security-standards).
Você pode configurar esse controlador de admissão para definir padrões e
[isenções](/docs/concepts/security/pod-security-admission/#exemptions) em todo
o cluster.

## Antes de você começar

Após uma release alfa no Kubernetes v1.22, o controlador de admissão
_Pod Security Admission_ tornou-se disponível por padrão no Kubernetes v1.23,
no estado beta. Da versão 1.25 em diante o controlador de admissão _Pod Security
Admission_ está publicamente disponível.


 <p>Para verificar a versão, digite  <code>kubectl version</code>.</p>


Se você não estiver utilizando o Kubernetes 1.36, você
pode verificar a documentação da versão do Kubernetes que você está utilizando.

## Configure o Controlador de Admissão


<div class="alert alert-info" role="note"><h4 class="alert-heading">Nota</h4>A configuração <code>pod-security.admission.config.k8s.io/v1</code> requer o Kubernetes v1.25
ou superior.
Para as versões v1.23 e v1.24, utilize <a href="https://v1-24.docs.kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/">v1beta1</a>.
Para a versão v1.22, utilize <a href="https://v1-22.docs.kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-admission-controller/">v1alpha1</a>.</div>


```yaml
apiVersion: apiserver.config.k8s.io/v1 # veja a nota de compatibilidade
kind: AdmissionConfiguration
plugins:
- name: PodSecurity
  configuration:
    apiVersion: pod-security.admission.config.k8s.io/v1beta1
    kind: PodSecurityConfiguration
    # Padrões aplicados quando o label de modo não é especificado.
    #
    # O valor para o label Level deve ser uma das opções abaixo:
    # - "privileged" (padrão)
    # - "baseline"
    # - "restricted"
    #
    # O valor para o label Version deve ser uma das opções abaixo:
    # - "latest" (padrão)
    # - versão específica no formato "v1.36"
    defaults:
      enforce: "privileged"
      enforce-version: "latest"
      audit: "privileged"
      audit-version: "latest"
      warn: "privileged"
      warn-version: "latest"
    exemptions:
      # Lista de usuários autenticados a eximir.
      usernames: []
      # Lista de RuntimeClasses a eximir.
      runtimeClasses: []
      # Lista de namespaces a eximir.
      namespaces: []
```


<div class="alert alert-info" role="note"><h4 class="alert-heading">Nota</h4>O manifesto acima precisa ser especificado através da opção de linha de comando
<code>--admission-control-config-file</code> do kube-apiserver.</div>
