Você pode usar o espaço de trabalho Autenticação para configurar o SSO no SaltStack Config para funcionar com um sistema de autenticação compatível com os protocolos OAuth e OIDC.
Sobre o SSO OAuth e OIDC
O single sign-on (SSO) OAuth é uma funcionalidade que muitas organizações configuram durante a implementação do SaltStack Config. O SSO oferece muitos benefícios, entre eles:
- Redução do tempo que os usuários gastam entrando em serviços para obter a mesma identidade. Depois que os usuários entrarem em um dos serviços de uma instituição, eles serão automaticamente autenticados em qualquer outro serviço que use o SSO.
- Redução da fadiga de senhas. O usuário só precisa se lembrar de um conjunto de credenciais, em vez de várias.
Muitos serviços fornecem implementações do protocolo OAuth com suporte para OIDC, incluindo OKTA, Google, Microsoft, GitLab, Zendesk, Apple, Keycloak, Salesforce e muitos outros.
Como o OAuth e o OIDC funcionam com o SaltStack Config
Quando um usuário tenta fazer login no SaltStack Config usando uma identidade OAuth:
- O SaltStack Config solicita autorização para acessar recursos de serviços desse usuário.
- Se o usuário autorizar a solicitação, o SaltStack Config receberá uma concessão de autorização.
- O SaltStack Config solicita um token de acesso do servidor de autorização (API), apresentando a autenticação de sua própria identidade.
- Se a identidade do aplicativo for autenticada e a concessão de autorização for válida, o servidor de autorização (API) emitirá um token de acesso ao SaltStack Config.
- O SaltStack Config solicita o recurso do servidor de recursos (API) e apresenta o token de acesso para autenticação.
- Se o token de acesso for válido, o servidor de recursos (API) servirá o recurso ao aplicativo, e o usuário terá permissão para fazer login no SaltStack Config.
Terminologia de autenticação OAuth e OIDC
Termo | Definição |
---|---|
OAuth | O OAuth 2.0 é um protocolo aberto (também às vezes chamado de padrão) para delegação de acesso no qual o usuário pode realizar ações em um site após a sua identidade ter sido autenticada com um token de segurança. Ele costuma ser usado como uma maneira de os usuários darem acesso para os aplicativos às suas informações em outros aplicativos de terceiros sem lhes fornecer suas credenciais de acesso (senhas). OAuth é um single sign-on (SSO) baseado em navegador. O OAuth permite que tokens de acesso sejam emitidos para clientes de terceiros por um servidor de autorização, com a aprovação do proprietário do recurso. Em seguida, o terceiro usa o token de acesso para acessar os recursos protegidos que são hospedados pelo servidor de recursos. |
OIDC | Open ID Connect O Open ID Connect (OIDC) é uma camada de identidade simples sobre o protocolo OAuth 2.0. O OIDC permite que os clientes verifiquem as identidades do usuário com base na autenticação realizada por um servidor de autorização. Ele também pode obter informações de perfil básicas sobre o usuário entre aplicativos. |
Proprietário de recursos | O proprietário de recursos é o usuário que autoriza um aplicativo a acessar sua conta. O acesso do aplicativo à conta do usuário está limitado ao escopo da autorização concedida, como acesso de leitura ou gravação. |
Cliente | O cliente é o aplicativo de terceiros que precisa de acesso à conta do usuário, o que, neste caso, é o SaltStack Config. |
Servidor de autorização | O servidor de autorização hospeda as contas de usuário protegidas e suas credenciais. Ele verifica a identidade do usuário e, em seguida, emite tokens de acesso ao cliente. Ele é frequentemente acessado por meio da API do serviço. |
Servidor de recursos | O servidor de recursos é o servidor de API usado para acessar as informações do usuário. Ele lida com solicitações autenticadas depois que o cliente obteve um token de acesso. Implantações menores normalmente têm apenas um servidor de recursos e muitas vezes são criadas como parte da mesma base de código ou da mesma implantação que o servidor de autorização. Implantações em grande escala podem ter mais de um servidor de recursos. Cada um deles é distintamente separado, mas todos compartilham o mesmo servidor de autorização. |
Etapas pré-configuração
Antes de configurar o OAuth e o OIDC no SaltStack Config, certifique-se de que você tenha o acesso necessário ao seu serviço OAuth 2.0 para a sua organização (OKTA ou Google) e que esteja relativamente familiarizado com o processo de registro de aplicativos.
Registre o SaltStack Config como um aplicativo no OKTA ou Google
No site do seu serviço OAuth, insira informações básicas sobre o SaltStack Config, como nome, site, etc. Depois de registrar o aplicativo, você receberá um segredo de cliente que precisará fornecer ao SaltStack Config.
Uma das coisas mais importantes ao criar o aplicativo é registrar uma ou mais URLs de redirecionamento que ele usará. As URLs de redirecionamento são onde o serviço OAuth 2.0 retornará o usuário depois que o aplicativo for autorizado.
Configurar um provedor de identidade
Para configurar o SSO usando o serviço OAuth ou OIDC preferencial da sua organização:
- Clique em Administração > Autenticação no menu lateral.
- Clique em Criar.
- No menu Tipo de configuração, selecione OIDC.
- No campo Nome, atribua um nome descritivo a essa configuração.
- No menu Provedor OIDC, selecione OKTA ou Google.
- Preencha os seguintes campos com as informações sobre a sua instalação do SaltStack Config:
- URI Base
- URL da API (somente para configurações OKTA)
- Key
- Segredo
Observação: Para obter descrições desses campos, consulte Campos de informações OIDC. - Clique em Salvar.
A configuração OIDC para o SaltStack Config está agora completa.
Configurar o RBAC para OIDC
Para o OIDC, o usuário primeiramente precisará fazer login no SaltStack Config para ser adicionado como usuário no banco de dados de usuários local. Depois que os usuários fizerem login inicialmente, suas funções e permissões serão gerenciadas da mesma forma que você gerenciaria usuários cujas credenciais estão armazenadas localmente SaltStack Config no servidor RaaS.
Após o login inicial do usuário, você poderá usar o espaço de trabalho Funções para atribuir funções e permissões apropriadas a esse usuário. Para obter mais informações sobre o espaço de trabalho Funções, consulte Funções e permissões.
Campos de informações OIDC
Todos os campos de informações de autenticação OIDC são necessários. Insira as informações da sua configuração de autenticação OIDC da seguinte maneira.
Campo | Descrição |
---|---|
Nome | O nome da conexão de autenticação usada pelo SSE. Esse nome aparecerá na barra lateral quando você estiver conectado ao espaço de trabalho Autenticação e deverá ser exclusivo se você estiver definindo várias configurações. |
Provedor OIDC | Selecione seu provedor de identidade OIDC nesse menu para visualizar as configurações específicas do seu provedor. |
URI Base | A URL base usada pela sua organização no SaltStack Config, também conhecida como endereço do servidor host. Essa URL é formatada como um FQDN ou endereço IP, como https://example.com . |
URL da API | A URL da API fornecida pelo seu provedor de identidade. Esse campo só será exibido se seu o provedor de identidade for o OKTA. |
Key | A chave fornecida pelo seu provedor de identidade. No OKTA, a chave é chamada de ID do cliente. |
Segredo | O segredo fornecido pelo seu provedor de identidade. No OKTA, a chave é chamada de Segredo do Cliente. |