From 1db59c85d7d81146179ba82d1fd463723f6ec5d9 Mon Sep 17 00:00:00 2001 From: "donatohorn@gmail.com" Date: Sun, 17 Jul 2022 20:42:31 -0300 Subject: [PATCH 1/5] [pt-br] add content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md --- .../configure-runasusername.md | 148 ++++++++++++++++++ .../windows/run-as-username-container.yaml | 17 ++ .../examples/windows/run-as-username-pod.yaml | 14 ++ 3 files changed, 179 insertions(+) create mode 100644 content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md create mode 100644 content/pt-br/examples/windows/run-as-username-container.yaml create mode 100644 content/pt-br/examples/windows/run-as-username-pod.yaml diff --git a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md new file mode 100644 index 0000000000..f976f0aca9 --- /dev/null +++ b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md @@ -0,0 +1,148 @@ +--- +title: Configurando `RunAsUserName` Para Pods e Contêineres Windows +content_type: task +weight: 20 +update_date: 2022-07-17 +origin_version: 1.24 +contributors: DonatoHorn +reviewers: +--- + + + +{{< feature-state for_k8s_version="v1.18" state="stable" >}} + +Esta página mostra como usar a configuração `runAsUserName` para Pods +e contêineres que serão executados em nós Windows. Isso é aproximadamente +equivalente à configuração `runAsUser` específica do Linux, permitindo a você +executar aplicativos em um contêiner com um nome de usuário diferente do padrão. + +## {{% heading "prerequisites" %}} + +Você precisa ter um cluster Kubernetes, e a ferramenta de linha de comando Kubectl +deve ser configurada para se comunicar com o seu cluster. Espera-se que o cluster +tenha nós `worker Windows`, onde os Pods com contêineres executando as cargas de trabalho do Windows, +serão agendados. + + + +## Defina o nome de usuário para um Pod + +Para especificar o nome de usuário com o qual executar os processos de contêiner do Pod, +inclua o campo `securityContext` ([SecurityContext](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) +na especificação do Pod, e dentro dela, o campo `WindowsOptions` ([WindowsSecurityContextOptions](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) +contendo o campo `runAsUserName`. + +As opções de contexto de segurança do Windows que você especificar para um Pod, +se aplicam a todos os Contêineres do Pod, inclusive os de inicialização. + +Aqui está um arquivo de configuração para um Pod do Windows que possui o campo +`runAsUserName` definido: + +{{< codenew file="windows/run-as-username-pod.yaml" >}} + +Crie o Pod: + +```shell +kubectl apply -f https://k8s.io/examples/windows/run-as-username-pod.yaml +``` + +Verifique se o contêiner do pod está em execução: + +```shell +kubectl get pod run-as-username-pod-demo +``` + +Abra um shell para o Contêiner em execução: + +```shell +kubectl exec -it run-as-username-pod-demo -- powershell +``` + +Verifique se o shell está executando com o nome de usuário correto: + +```powershell +echo $env:USERNAME +``` + +A saída deve ser: + +``` +ContainerUser +``` + +## Defina o nome de usuário para o Contêiner + +Para especificar o nome de usuário com o qual executar os processos de um Contêiner, +inclua o campo `SecurityContext` ([SecurityContext] +(/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) +no manifesto do Contêiner, e dentro dele, o campo `WindowsOptions` +([WindowsSecurityContextOptions] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) +contendo o campo `runAsUserName`. + +As opções de contexto de segurança do Windows que você especificar para um Contêiner, +se aplicam apenas a esse Contêiner individual, e substituem as configurações feitas +no nível do Pod. + +Aqui está o arquivo de configuração para um pod que possui um Contêiner, +e o campo `runAsUserName` está definido no nível do Pod e no nível do Contêiner: + +{{< codenew file="windows/run-as-username-container.yaml" >}} + +Crie o Pod: + +```shell +kubectl apply -f https://k8s.io/examples/windows/run-as-username-container.yaml +``` + +Verifique se o Contêiner do Pod está em execução: + +```shell +kubectl get pod run-as-username-container-demo +``` + +Abra um shell para o contêiner em execução: + +```shell +kubectl exec -it run-as-username-container-demo -- powershell +``` + +Verifique se o shell está executando o usuário correto, (aquele definido no nível do Contêiner): + +```powershell +echo $env:USERNAME +``` + +A saída deve ser: + +``` +ContainerAdministrator +``` + +## Limitações de nomes de usuários no Windows + +Para usar esse recurso, o valor definido no campo `runAsUserName` deve ser um nome +de usuário válido. Deve ter o seguinte formato: `DOMAIN\USER`, onde ` DOMAIN\` +é opcional. Os nomes de usuário do Windows não diferenciam letras maiúsculas +e minúsculas. Além disso, existem algumas restrições em relação ao `DOMÍNIO` e `USUÁRIO`: +- O campo `runAsUserName`: não pode estar vazio, e não pode conter caracteres + de contrôle (Valores ASCII : `0x00-0x1F`, `0x7F`) +- O nome de `DOMÍNIO` NetBios, ou um nome de DNS: cada um com suas próprias restrições: + - Nomes NetBios: máximo de 15 caracteres, não podem iniciar com `.` (ponto), + e não podem conter os seguintes caracteres: `\ / : * ? " < > |` + - Nomes DNS: máximo de 255 caracteres, contendo apenas caracteres alfanuméricos, + pontos, e traços, e não podem iniciar ou terminar com um `.` (ponto) ou `-` (traço). +- O `USUÁRIO`: deve ter no máximo 20 caracteres, não pode conter *somente* pontos ou espaços, + e não pode conter os seguintes caracteres: `" / \ [ ] : ; | = , + * ? < > @`. + +Exemplos de valores aceitáveis para o campo `runAsUserName`: `ContainerAdministrator`, +`ContainerUser`, `NT AUTHORITY\NETWORK SERVICE`, `NT AUTHORITY\LOCAL SERVICE`. + +Para mais informações sobre estas limitações, verifique [aqui](https://support.microsoft.com/en-us/help/909264/naming-conventions-in-active-directory-for-computers-domains-sites-and) e [aqui](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.localaccounts/new-localuser?view=powershell-5.1). + +## {{% heading "whatsnext" %}} + +* [Guia para agendar contêineres Windows em Kubernetes](/docs/concepts/windows/user-guide/) +* [Gerenciando Identidade de Cargas de Trabalho com Contas de Serviço Gerenciadas em Grupo (GMSA)](/docs/concepts/windows/user-guide/#managing-workload-identity-with-group-managed-service-accounts) +* [Configure GMSA para pods e contêineres Windows](/docs/tasks/configure-pod-container/configure-gmsa/) + diff --git a/content/pt-br/examples/windows/run-as-username-container.yaml b/content/pt-br/examples/windows/run-as-username-container.yaml new file mode 100644 index 0000000000..77b7b2d188 --- /dev/null +++ b/content/pt-br/examples/windows/run-as-username-container.yaml @@ -0,0 +1,17 @@ +apiVersion: v1 +kind: Pod +metadata: + name: run-as-username-container-demo +spec: + securityContext: + windowsOptions: + runAsUserName: "ContainerUser" + containers: + - name: run-as-username-demo + image: mcr.microsoft.com/windows/servercore:ltsc2019 + command: ["ping", "-t", "localhost"] + securityContext: + windowsOptions: + runAsUserName: "ContainerAdministrator" + nodeSelector: + kubernetes.io/os: windows diff --git a/content/pt-br/examples/windows/run-as-username-pod.yaml b/content/pt-br/examples/windows/run-as-username-pod.yaml new file mode 100644 index 0000000000..d62bf93efc --- /dev/null +++ b/content/pt-br/examples/windows/run-as-username-pod.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Pod +metadata: + name: run-as-username-pod-demo +spec: + securityContext: + windowsOptions: + runAsUserName: "ContainerUser" + containers: + - name: run-as-username-demo + image: mcr.microsoft.com/windows/servercore:ltsc2019 + command: ["ping", "-t", "localhost"] + nodeSelector: + kubernetes.io/os: windows \ No newline at end of file From 545c2fddfe2d03cba5ff95cbed28a8c082265e9a Mon Sep 17 00:00:00 2001 From: "donatohorn@gmail.com" Date: Fri, 22 Jul 2022 17:51:14 -0300 Subject: [PATCH 2/5] [pt-br] content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md --- .../tasks/configure-pod-container/configure-runasusername.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md index f976f0aca9..16b1d01f74 100644 --- a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md +++ b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md @@ -2,10 +2,6 @@ title: Configurando `RunAsUserName` Para Pods e Contêineres Windows content_type: task weight: 20 -update_date: 2022-07-17 -origin_version: 1.24 -contributors: DonatoHorn -reviewers: --- From 075fc7e4abd75efa0232cad0971b3e434eaf614b Mon Sep 17 00:00:00 2001 From: "donatohorn@gmail.com" Date: Sat, 13 Aug 2022 13:46:44 -0300 Subject: [PATCH 3/5] [pt-br] add content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md --- .../configure-runasusername.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md index 16b1d01f74..4116a9c5f8 100644 --- a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md +++ b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md @@ -30,7 +30,7 @@ na especificação do Pod, e dentro dela, o campo `WindowsOptions` ([WindowsSecu contendo o campo `runAsUserName`. As opções de contexto de segurança do Windows que você especificar para um Pod, -se aplicam a todos os Contêineres do Pod, inclusive os de inicialização. +se aplicam a todos os contêineres do Pod, inclusive os de inicialização. Aqui está um arquivo de configuração para um Pod do Windows que possui o campo `runAsUserName` definido: @@ -49,7 +49,7 @@ Verifique se o contêiner do pod está em execução: kubectl get pod run-as-username-pod-demo ``` -Abra um shell para o Contêiner em execução: +Abra um shell para o contêiner em execução: ```shell kubectl exec -it run-as-username-pod-demo -- powershell @@ -67,21 +67,21 @@ A saída deve ser: ContainerUser ``` -## Defina o nome de usuário para o Contêiner +## Defina o nome de usuário para o contêiner -Para especificar o nome de usuário com o qual executar os processos de um Contêiner, +Para especificar o nome de usuário com o qual executar os processos de um contêiner, inclua o campo `SecurityContext` ([SecurityContext] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) -no manifesto do Contêiner, e dentro dele, o campo `WindowsOptions` +no manifesto do contêiner, e dentro dele, o campo `WindowsOptions` ([WindowsSecurityContextOptions] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) contendo o campo `runAsUserName`. -As opções de contexto de segurança do Windows que você especificar para um Contêiner, -se aplicam apenas a esse Contêiner individual, e substituem as configurações feitas +As opções de contexto de segurança do Windows que você especificar para um contêiner, +se aplicam apenas a esse contêiner individual, e substituem as configurações feitas no nível do Pod. -Aqui está o arquivo de configuração para um pod que possui um Contêiner, -e o campo `runAsUserName` está definido no nível do Pod e no nível do Contêiner: +Aqui está o arquivo de configuração para um pod que possui um contêiner, +e o campo `runAsUserName` está definido no nível do Pod e no nível do contêiner: {{< codenew file="windows/run-as-username-container.yaml" >}} @@ -91,7 +91,7 @@ Crie o Pod: kubectl apply -f https://k8s.io/examples/windows/run-as-username-container.yaml ``` -Verifique se o Contêiner do Pod está em execução: +Verifique se o contêiner do Pod está em execução: ```shell kubectl get pod run-as-username-container-demo @@ -103,7 +103,7 @@ Abra um shell para o contêiner em execução: kubectl exec -it run-as-username-container-demo -- powershell ``` -Verifique se o shell está executando o usuário correto, (aquele definido no nível do Contêiner): +Verifique se o shell está executando o usuário correto, (aquele definido no nível do contêiner): ```powershell echo $env:USERNAME @@ -122,7 +122,7 @@ de usuário válido. Deve ter o seguinte formato: `DOMAIN\USER`, onde ` DOMAIN\` é opcional. Os nomes de usuário do Windows não diferenciam letras maiúsculas e minúsculas. Além disso, existem algumas restrições em relação ao `DOMÍNIO` e `USUÁRIO`: - O campo `runAsUserName`: não pode estar vazio, e não pode conter caracteres - de contrôle (Valores ASCII : `0x00-0x1F`, `0x7F`) + de controle (Valores ASCII : `0x00-0x1F`, `0x7F`) - O nome de `DOMÍNIO` NetBios, ou um nome de DNS: cada um com suas próprias restrições: - Nomes NetBios: máximo de 15 caracteres, não podem iniciar com `.` (ponto), e não podem conter os seguintes caracteres: `\ / : * ? " < > |` From f73467052e2c0832af25e08a0f5ddcec92eadd6e Mon Sep 17 00:00:00 2001 From: "donatohorn@gmail.com" Date: Wed, 17 Aug 2022 23:58:00 -0300 Subject: [PATCH 4/5] [pt-br] add content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md --- .../tasks/configure-pod-container/configure-runasusername.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md index 4116a9c5f8..76f5b5e30e 100644 --- a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md +++ b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md @@ -138,7 +138,7 @@ Para mais informações sobre estas limitações, verifique [aqui](https://suppo ## {{% heading "whatsnext" %}} -* [Guia para agendar contêineres Windows em Kubernetes](/docs/concepts/windows/user-guide/) +* [Guia Para Agendar Contêineres Windows em Kubernetes](/docs/concepts/windows/user-guide/) * [Gerenciando Identidade de Cargas de Trabalho com Contas de Serviço Gerenciadas em Grupo (GMSA)](/docs/concepts/windows/user-guide/#managing-workload-identity-with-group-managed-service-accounts) -* [Configure GMSA para pods e contêineres Windows](/docs/tasks/configure-pod-container/configure-gmsa/) +* [Configure GMSA Para Pods e Contêineres Windows](/docs/tasks/configure-pod-container/configure-gmsa/) From a17b10da26c59e9b77d2a49b093d33cb63b0e0f7 Mon Sep 17 00:00:00 2001 From: "donatohorn@gmail.com" Date: Thu, 15 Dec 2022 08:22:18 -0300 Subject: [PATCH 5/5] [pt-br] Add content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md --- .../configure-runasusername.md | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md index 76f5b5e30e..ca8d0e1a9c 100644 --- a/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md +++ b/content/pt-br/docs/tasks/configure-pod-container/configure-runasusername.md @@ -1,5 +1,5 @@ --- -title: Configurando `RunAsUserName` Para Pods e Contêineres Windows +title: Configurando RunAsUserName Para Pods e Contêineres Windows content_type: task weight: 20 --- @@ -17,7 +17,7 @@ executar aplicativos em um contêiner com um nome de usuário diferente do padr Você precisa ter um cluster Kubernetes, e a ferramenta de linha de comando Kubectl deve ser configurada para se comunicar com o seu cluster. Espera-se que o cluster -tenha nós `worker Windows`, onde os Pods com contêineres executando as cargas de trabalho do Windows, +tenha nós de carga de trabalho Windows, onde os Pods com contêineres executando as cargas de trabalho do Windows, serão agendados. @@ -25,14 +25,14 @@ serão agendados. ## Defina o nome de usuário para um Pod Para especificar o nome de usuário com o qual executar os processos de contêiner do Pod, -inclua o campo `securityContext` ([SecurityContext](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) +inclua o campo `securityContext` ([PodSecurityContext](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) na especificação do Pod, e dentro dela, o campo `WindowsOptions` ([WindowsSecurityContextOptions](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) contendo o campo `runAsUserName`. As opções de contexto de segurança do Windows que você especificar para um Pod, se aplicam a todos os contêineres do Pod, inclusive os de inicialização. -Aqui está um arquivo de configuração para um Pod do Windows que possui o campo +Veja abaixo um arquivo de configuração para um Pod do Windows que possui o campo `runAsUserName` definido: {{< codenew file="windows/run-as-username-pod.yaml" >}} @@ -43,7 +43,7 @@ Crie o Pod: kubectl apply -f https://k8s.io/examples/windows/run-as-username-pod.yaml ``` -Verifique se o contêiner do pod está em execução: +Verifique se o contêiner do Pod está em execução: ```shell kubectl get pod run-as-username-pod-demo @@ -70,10 +70,9 @@ ContainerUser ## Defina o nome de usuário para o contêiner Para especificar o nome de usuário com o qual executar os processos de um contêiner, -inclua o campo `SecurityContext` ([SecurityContext] -(/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) +inclua o campo `SecurityContext` ([SecurityContext](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#securitycontext-v1-core)) no manifesto do contêiner, e dentro dele, o campo `WindowsOptions` -([WindowsSecurityContextOptions] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) +([WindowsSecurityContextOptions](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#windowssecuritycontextoptions-v1-core)) contendo o campo `runAsUserName`. As opções de contexto de segurança do Windows que você especificar para um contêiner, @@ -120,15 +119,15 @@ ContainerAdministrator Para usar esse recurso, o valor definido no campo `runAsUserName` deve ser um nome de usuário válido. Deve ter o seguinte formato: `DOMAIN\USER`, onde ` DOMAIN\` é opcional. Os nomes de usuário do Windows não diferenciam letras maiúsculas -e minúsculas. Além disso, existem algumas restrições em relação ao `DOMÍNIO` e `USUÁRIO`: +e minúsculas. Além disso, existem algumas restrições em relação ao `DOMAIN` e `USER`: - O campo `runAsUserName`: não pode estar vazio, e não pode conter caracteres de controle (Valores ASCII : `0x00-0x1F`, `0x7F`) -- O nome de `DOMÍNIO` NetBios, ou um nome de DNS: cada um com suas próprias restrições: +- O nome de `DOMAIN` NetBios, ou um nome de DNS, cada um com suas próprias restrições: - Nomes NetBios: máximo de 15 caracteres, não podem iniciar com `.` (ponto), e não podem conter os seguintes caracteres: `\ / : * ? " < > |` - Nomes DNS: máximo de 255 caracteres, contendo apenas caracteres alfanuméricos, pontos, e traços, e não podem iniciar ou terminar com um `.` (ponto) ou `-` (traço). -- O `USUÁRIO`: deve ter no máximo 20 caracteres, não pode conter *somente* pontos ou espaços, +- O `USER`: deve ter no máximo 20 caracteres, não pode conter *somente* pontos ou espaços, e não pode conter os seguintes caracteres: `" / \ [ ] : ; | = , + * ? < > @`. Exemplos de valores aceitáveis para o campo `runAsUserName`: `ContainerAdministrator`,