Contas Sociais
O AISCouncil suporta múltiplos métodos de autenticação para que você possa entrar de qualquer dispositivo e vincular contas entre provedores. A autenticação é projetada em torno de segurança e resiliência -- WebAuthn/Passkeys fornecem login respaldado por hardware e resistente a phishing que funciona mesmo se provedores OAuth de terceiros caírem.
Provedores de Login Suportados
Os provedores de login são divididos em duas camadas com base em se o provedor requer verificação por telefone para criação de conta.
Camada 1: Verificados por Telefone (Podem Registrar Novas Contas)
Esses provedores exigem verificação por telefone para criar uma conta, o que serve como verificação de identidade e proteção contra spam. Você pode usar qualquer um deles para criar uma nova conta do AISCouncil.
| Provedor | Telefone Obrigatório? | Notas |
|---|---|---|
| Sim (obrigatório desde 2021) | Método de login mais comum mundialmente | |
| Apple | Sim (obrigatório para Apple ID) | Focado em privacidade, opção de ocultar email |
| Sim (verificação SMS/WhatsApp) | Suporta verificação WhatsApp em algumas regiões | |
| Sim (número de telefone da China) | Método de login principal para usuários na China | |
| Telegram | Sim (telefone em primeiro lugar, sempre obrigatório) | O número de telefone é o identificador da conta |
Camada 2: Apenas Vinculação (Não Podem Registrar, Podem Vincular)
Esses provedores não exigem universalmente verificação por telefone, então não podem ser usados para criar uma nova conta. No entanto, depois que você tem uma conta, pode vincular qualquer um deles para conveniência de login.
| Provedor | Por Que Apenas Vinculação? | Útil Para |
|---|---|---|
| GitHub | Contas apenas com email existem | Desenvolvedores que preferem login do GitHub |
| Twitter/X | Telefone tornou-se opcional em 2023 | Integração com mídias sociais |
| Discord | Telefone é opcional | Usuários de jogos e comunidades |
Registro significa criar uma conta completamente nova do AISCouncil. Isso requer um provedor da Camada 1 para verificar sua identidade. Vinculação significa conectar um método de login adicional a uma conta existente. Qualquer provedor suportado pode ser vinculado após o registro.
WebAuthn / Passkeys
WebAuthn é o método de autenticação principal, recomendado para todos os usuários. Ele usa criptografia de chave pública respaldada pelo módulo de segurança de hardware do seu dispositivo (TPM ou Secure Enclave).
Como funciona
- Registro: Seu dispositivo gera um par de chaves pública/privada. A chave pública é armazenada; a chave privada nunca sai do hardware seguro do seu dispositivo.
- Autenticação: A plataforma envia um desafio aleatório. Seu dispositivo o assina com a chave privada após você confirmar via biométrico (impressão digital, escaneamento facial) ou PIN.
- Verificação: O desafio assinado é verificado contra sua chave pública armazenada. Custo computacional total: uma verificação de assinatura.
Benefícios
- Imune a phishing -- a chave privada está vinculada ao domínio, então não pode ser usada em um site falso
- Sem senhas -- nada para lembrar, nada para roubar, nenhum banco de dados de senhas para violar
- Funciona offline -- após o registro inicial, a autenticação é local no seu dispositivo
- UX biométrica -- impressão digital ou escaneamento facial é mais rápido do que digitar uma senha
- Entre dispositivos -- passkeys sincronizam entre seus dispositivos via iCloud Keychain, Google Password Manager ou Windows Hello
Registre-se com um provedor da Camada 1 (como Google) para criar sua conta, depois configure um Passkey em Configurações > Conta. Depois disso, você pode entrar apenas com sua impressão digital ou escaneamento facial -- sem redirecionamento OAuth necessário.
Vinculando Contas Adicionais
Depois de criar sua conta, você pode vincular provedores de login adicionais:
- Abra Configurações (ícone de engrenagem no cabeçalho)
- Vá para a seção Conta
- Em Provedores Vinculados, clique em Vincular Conta
- Escolha um provedor e complete o fluxo OAuth
- O provedor aparece na sua lista vinculada
Cada provedor vinculado torna-se um método de login alternativo. Sua identidade é a mesma independentemente de qual provedor você usa para entrar.
Autenticação Entre Dispositivos
Passkeys são a maneira recomendada de entrar em múltiplos dispositivos:
- Dispositivos Apple: Passkeys sincronizam via iCloud Keychain (iPhone, iPad, Mac)
- Android/Chrome: Passkeys sincronizam via Google Password Manager
- Windows: Windows Hello suporta passkeys com PIN, impressão digital ou rosto
Para dispositivos que não suportam sincronização de passkey, você pode entrar com qualquer provedor OAuth vinculado.
Modo Convidado
Para implantações auto-hospedadas onde nenhum servidor de autenticação está configurado, o modo convidado fornece acesso total a todos os recursos sem fazer login.
O modo convidado destina-se apenas para uso pessoal/auto-hospedado. Sessões de convidado são locais no dispositivo e não podem sincronizar entre dispositivos. Não há conta para vincular provedores e nenhuma maneira de recuperar dados se o armazenamento do navegador for limpo.
O modo convidado ativa automaticamente quando:
- Executando em
localhostou um domínio de visualização.pages.dev - Nenhuma configuração de autenticação é detectada
- O usuário escolhe explicitamente "Continuar como Convidado" na tela de login
Privacidade: Quais Dados São Armazenados
O AISCouncil armazena dados mínimos do usuário, e todos eles permanecem no seu dispositivo:
| Dados | Local de Armazenamento | Compartilhado com Servidor? |
|---|---|---|
| Nome | localStorage (ais-user) | Apenas durante o fluxo OAuth |
localStorage (ais-user) | Apenas durante o fluxo OAuth | |
| URL da foto de perfil | localStorage (ais-user) | Apenas durante o fluxo OAuth |
| Provedor de login | localStorage (ais-user) | Apenas durante o fluxo OAuth |
| Chaves de API | localStorage (ais-apikey-*) | Nunca -- enviadas apenas para provedores de LLM |
| Histórico de chat | IndexedDB | Nunca |
| Configurações de bots | IndexedDB | Nunca (a menos que você compartilhe via URL) |
| Configurações | localStorage | Nunca |
O fluxo OAuth passa pelo servidor API (api.aiscouncil.net) para lidar com callbacks de provedores, mas as credenciais do usuário são imediatamente passadas de volta ao cliente via parâmetros de URL e armazenadas localmente. O servidor não mantém um banco de dados de usuário para dados de chat ou bot.
Segurança da Conta
- Todos os tokens OAuth são verificados no servidor usando as chaves públicas do provedor (RS256 JWKS para Google e Apple, HMAC-SHA256 para Telegram)
- Proteção contra replay do Telegram impede reuso de payloads de autenticação (janela de nonce de 600 segundos)
- Sanitização de entrada remove caracteres especiais HTML de todos os dados de usuário OAuth antes do armazenamento
- Mensagens de erro genéricas são retornadas em falhas de autenticação para evitar vazamento de informações; motivos específicos são registrados apenas no servidor
Excluindo Sua Conta
Para remover seus dados:
- Abra Configurações > Conta
- Clique em Excluir Conta
- Confirme a exclusão
Isso limpa todos os dados locais (perfis, histórico de chat, configurações, chaves de API) do dispositivo atual. Como os dados são armazenados localmente, excluir em um dispositivo não afeta outros dispositivos onde você pode estar conectado.