Por que o seu VPN no Mac pede acesso ao Keychain toda vez
Identifique qual componente gera cada aviso do VPN no Mac, pare as tentativas de conexão duplicadas e repare o acesso ao Keychain sem redefinir todo o chaveiro.
Um clique em Connect deveria produzir uma janela de login. Num Mac, costuma produzir três, e elas raramente partilham o mesmo dono: o chaveiro é dono dos avisos de credenciais locais, a gateway VPN é dona da autenticação, e o cliente é dono dos seus próprios avisos. Em vez de procurar um interruptor que silencie tudo, trate cada janela como um defeito separado com a sua própria correção. O guia abaixo percorre uma tentativa de conexão deliberada e termina com uma verificação que pode repetir.
Nomeie o dono de cada diálogo antes de alterar uma definição
O primeiro passo é contabilidade, não configuração. Faça uma tentativa de conexão e, para cada janela que aparecer, anote quatro campos: o nome da app mostrada no diálogo, o texto exato sem nada de secreto, a fase em que surgiu e o que aconteceu quando a cancelou. Três linhas assim cobrem quase todos os relatórios que já examinei.
A propriedade determina a correção certa, e a correção errada é normalmente o que transforma um aviso em três:
| Window | Who owns it | Correct fix | What not to do |
|---|---|---|---|
| “wants to use your confidential information stored in…” | The item's access control list in your login keychain | Approve the specific client helper, once, after checking the name | Resetting the login keychain, or granting Always Allow to every application |
| “Sign in to <organization>” or an MFA push | The gateway's identity provider | Use the client's supported session renewal, or re-authenticate | Scripting a fixed password or code into the client |
| “Connection failed”, “Update required”, a policy banner | The client or your organization | Read the first error and fix its cause | Hiding notices by editing a preference file the client rewrites |
Um aviso que volta dentro da mesma tentativa é um sinal diferente de um que volta na tentativa seguinte. O primeiro costuma significar que a conexão foi reiniciada por baixo de si; o segundo costuma significar que está a ser pedida novamente uma credencial guardada. Anote qual tem antes de tocar no chaveiro, porque os dois quase não têm nada em comum.
Descubra quantas coisas estão a iniciar o túnel
Quatro mecanismos podem iniciar o mesmo VPN num Mac: uma ação da barra de menus, um item de login, uma regra On Demand e um script ou agente. Quando dois deles disparam, o segundo arranque pode chegar enquanto o primeiro ainda espera autenticação, o que produz uma janela duplicada e nenhum progresso. Liste primeiro o que está configurado: scutil --nc list imprime os serviços VPN conhecidos pelas Definições do Sistema, com o estado atual. Os clientes que trazem a sua própria extensão de rede guardam os perfis dentro da app e podem não aparecer ali, por isso verifique também a lista de conexões do próprio cliente.
Depois procure iniciadores concorrentes. scutil --nc show "Work VPN" imprime o dicionário de configuração de um serviço integrado, incluindo as regras On Demand; uma regra que se reconecta a cada mudança de interface reinicia o túnel — e reabre o aviso de autenticação — sempre que o Wi-Fi se desloca ou um ecrã desperta a pilha de rede. Verifique os itens de login em Definições do Sistema > Geral > Itens de Login, e liste os agentes por utilizador com ls ~/Library/LaunchAgents. Deixe em paz o que pertence a uma pilha de segurança gerida por MDM; a remoção costuma ser revertida na verificação seguinte.
Para ver o que está realmente a correr durante uma tentativa: ps -Ao pid,comm | grep -iE 'vpn|tunnel|extension'. Dois auxiliares de cliente onde espera um explicam «porque recebi dois avisos» muito mais vezes do que qualquer problema de credenciais.
Repare o acesso ao chaveiro sem redefinir o chaveiro
O aviso vem da lista de controlo de acesso do item guardado, não do protocolo VPN. Cada item regista que aplicações o podem ler sem perguntar. Depois de uma atualização do cliente, o auxiliar que pergunta pode ter outro nome ou assinatura enquanto o item ainda lista o antigo, por isso o macOS volta a perguntar em cada conexão. Aprovar o novo auxiliar para esse único item é toda a correção; aprovar todas as aplicações não é.
Pode confirmar que a ACL é a causa sem tocar no VPN: security find-generic-password -s "service-name" -g lê o mesmo item a partir de um terminal. Se esse comando também provocar o aviso, o diálogo pertence ao chaveiro e o túnel é apenas o gatilho. As indicações da Apple sobre os três botões — Permitir uma vez, Permitir sempre, Negar — merecem uma leitura, porque Negar é o que faz o aviso reaparecer imediatamente em vez de na tentativa seguinte.
Se aprovou o auxiliar errado, abra o item em Acesso às Chaves, mude para Controlo de Acesso e remova essa entrada; essa é a reversão. Apagar o chaveiro de login, ou executar uma ferramenta de reparação que o reconstrua, também descarta palavras-passe não relacionadas e é uma alteração muito maior do que o problema.
Mantenha os passos de login e de política nos fluxos que lhes pertencem
Um login no navegador ou um desafio MFA pertencem à gateway. Se a sua organização oferece persistência de sessão ou autenticação baseada em certificados, use-a, porque é a forma suportada de autenticar com menos frequência. Escrever um código fixo num cliente, ou guardar uma palavra-passe num script para que o aviso nunca apareça, substitui um fator interativo por um segredo estático e falha na próxima rotação de política.
Os avisos da organização são a única categoria que não deve suprimir. Costumam impor uma verificação de postura ou uma aceitação de uso aceitável, e escondê-los pode deixar o dispositivo fora de conformidade mesmo enquanto o túnel funciona. Os diálogos de erro são a outra categoria: guarde o texto do primeiro erro, porque um segundo diálogo é muitas vezes apenas a mesma falha reportada após uma nova tentativa.
Verifique com uma tentativa, e depois após um reinício
Com os iniciadores duplicados removidos e a entrada do chaveiro reparada, faça uma única tentativa: encerre cada instância do cliente, incluindo o auxiliar da barra de menus, ligue-se uma vez e conte as janelas. Quer a aprovação do chaveiro, se o item foi reconstruído, e um passo de autenticação. Nada mais. scutil --nc status "Work VPN" deveria reportar Connected para um serviço integrado.
Depois reinicie uma vez e repita. Um aviso que só volta após um reinício aponta para um item de login ou uma regra On Demand, não para credenciais; um que volta dentro da sessão aponta para a ACL ou para um segundo iniciador. Se continuar a repetir-se após as duas passagens, o útil a entregar ao seu administrador é a tabela de três linhas da primeira tentativa — dono, texto exato, fase — não uma captura de ecrã do diálogo.
Menos avisos é o objetivo, não avisos silenciosos. Uma conexão que esconde os seus passos de autorização é uma conexão que já não pode auditar, e a próxima rotação de certificados irá encontrá-lo sem ideia de que componente está a falhar.