Administração do GitHub
Objetivo
Como um admin, o seu objetivo é apenas manter tudo funcionando sem problemas para os usuários.
Equipes
É possível criar equipes/teams na sua organização com permissões de acesso.
O GitHub permite que você sincronize as equipes com gruops de IdP (provedores de identidade), como o Microsoft Entra ID. Com essa sincronização, você pode gerenciar tarefas, gerenciar a integração de noos membros, novas permissões e etc. (OBS.: Esse reurso só fucniona se você tiver o GitHub enterprise Cloud e um domínio verificado.)
Os membros de uma equipe com permissões de Mantenedor de equipe ou Administrador do repositório podem:
- Criar uma nova equipe e alterar as existentes
- Excluir ou renomear uma equipe
- Adicionar membros da organição a uma equipe ou removê-los
- Sincronizar a associação de uma equipe a um grupo do IdP
- Adicionar colaboradores externos (pessoas que não são membros explicitamente da sua organização) a repositórios da equipe
- Habilitar ou desabilitar as discussões na página da equipe
- Alterar a visibilidade da equipe dentro da organização
- Gerenciar a atribuição de revisão de código automática para as solicitações de PRs
- Agendar lembretes
- Alterar a imagem de perfil da equipe
Boas práticas
- Criar equipes alinhadas com a hierarquia do grupo ou da empresa (trazendo o mundo real para o virtual)
- Simplificar processos de revisão de PR criando equipes com base nos interesses ou numa tecnologia específica e os individuos podem optar por participar dessas equipes de acordo com os seus interesses ou habilidades técnicas.
- Sincronizar as equipes do GitHub com o seu IdP.
Organização
Os membros de uma organização com permissões de proprietários podem:
- Convidar usuários para entrar na organização ou remover eles
- Organizar os usuários em uma equipe e conceder perissões de mantenedor de equipe aos membros da organização
- Adicionar colaboradores externos a repositórios
- Conceder níveis de permissão de repositorio a determinados repositórios
- Configurar a segurança da organização
- Configurar a cobrança ou atribuir um gerente de cobrança para a organização
- Extrair vários tipos de informações sobre os repositórios por meio de scripts
OBS.: É recomendavel configurar apenas uma organização para os seus usuários e repositórios. Se por algum motivo seja obrigatório a criação de mais de uma organização, você deve saber que:
- Não é possivel duplicar uma organização ou compartilhar configurações entre duas organizações
- Dependendo das politicas dos provedores de software, pode acontecer de ter custos adicionar se precisar instalar alguns aplicativos em varias organizaçãoes
- Gerenciar varias organizações é bem mais complexo
Enterprise
Os membros de uma empresa que possui o GitHub Enterprise Cloud e Server que possuem as permissões de proprietarios podem:
- Habilitar o logon único da SAML para a sua conta corporativa, permitindo que cada membro vincule sua identidade externa em seu IdP à conta do GitHub
- Adicionar ou remover organizações da empresa
- Configurar a cobrança ou atribuir um gerente de cobrança a todas as organizações na empresa
- Configurar as politicas e outras configurações que se aplicam a todas as organizações, repositorios e membros da empresa
- Extrair varios tipos de informações sobre as organizações por meio de scripts
- Usar o GitHub Connect para integrar o GitHub Enterprise Server ao GitHub.com
Gerenciar a autenticação dos usuários no GitHub
Nome e senha
Os admins podem permitir que os usuários façam login usando o método padrão. Mas, o GitHub não dá mais suporte à autenticação de senha para operações git ou para o uso da API.
Tokens de acesso pessoal (PATs)
Essa é uma alternativa mais segura ao uso de senha ao usar a API do GitHub ou a linha de comando.
Os usuários devem gerar um token por meio da opção de configurações do GitHub e vinculam as permissões de token a um repositório ou a uma organização.
Quando eles quiserem interagir com a linha de comando do git, por exemplo, eles podem inserir o token quando lhes fores solicitados o nome de usuários e a senha.
Chaves SSH
Os usuáarios podem se conectar a servidores e serviços remotos e se autenticar por meio de SSH.
Ao configurar o SSH, os usuários geram uma chave SSH, adicionam-na ao ssh-agent e, em seguida, adicionam a chave à sua conta do GitHub. Adicionar a chave SSH ao agente SSH garante que ela tenha uma frase secreta como camada extra de segurança. Os usuários podem configurar a cópia local do Git deles para fornecer a frase secreta automaticamente, ou podem fornecê-la manualmente sempre que usarem a ferramenta de linha de comando do Git para interagir com o GitHub.
Você pode usar chaves SSH com um repositório de uma organização que utiliza o login unico SSO via SAML.
Deploy keys/Chaves de implantação
Essas chaves são um outro tipo de chave SSH que permite o usuário acesso a apenas a um repositório.
Autenticação de dois fatores (2FA)
Essa autenticação também conhecida como autenticação multifator (MFA), adiciona uma camada extra de proteção à seua conta do Github.
É possivel impor a autenticação para os membros da empresa.
OBS.:
- Para organizações no GitHub Team e no GitHub Enterprise Cloud, é possivel exigir que os membros, colaboradores externos habilitem esssa autenticação para suas contas pessoais.
- Para EMUs (Usuários Gerenciados corporativos) e GitHub Enterprise Server, os admins podem exigir para somente contas gerenciadas por empresas, mas não pdem impor para as contas pessoais dos usuários.
SSO do SAML
Você pode configurar o SSO do SAML para proteger acesso aos recursos da sua organização, como repositórios, issues, PRs, etc. Ao tentar acessar esses recursos, GitHub redireciona os usuários para autenticar com o IdP da sua organização.
O GitHub dá suporte à provedores que implemenam o padão SAML 2.0.
LDAPL (Lightweight Directory Acess Protocol)
Disponivel apenas para o GitHub Enterprise Server.