Integration of Basic Dissuasion
GKTinc básico — Dissuasão
Este guia cobre a integração da versão básica do GKTinc. Para o conjunto completo de recursos do GKTinc, consulte as seções GKTinc Enhanced mais adiante neste documento.
🚀 Como implantar
Implantar o GKTinc Básico é simples e modular — semelhante a soluções como o reCAPTCHA — mas sem a necessidade de interação visual. Basta adicionar um script ao seu frontend e realizar a verificação no backend. Pode ser usado com qualquer linguagem de programação (por exemplo, PHP, Python, Node, Java, etc.).
🧱 Requisitos básicos
- Frontend com JavaScript habilitado.
- Backend capaz de fazer uma requisição HTTP POST para a API do GKTinc.
- Ter o ID de sessão e um identificador único (como nome de usuário ou e-mail) disponíveis no momento do envio.
🔧 Passo a passo
1. Frontend (HTML + JS)
Adicione o script do GKTinc à sua página:
<script src="https://guardiankey.io/pt-br/gktc.js"></script>
Adapte seu formulário para acionar o desafio antes de enviar:
<form method="POST" action="/login" onsubmit="return GKChallengeInject(this);">
<input type="text" name="username" required>
<input type="password" name="password" required>
<input type="hidden" name="sessionid" value="..."> <!-- ID da sessão fornecido pelo backend -->
<!-- Os campos do desafio (gk_token, gk_ts, etc.) serão adicionados automaticamente -->
<button type="submit">Entrar</button>
</form>
A função GKChallengeInject() resolve o desafio e injeta automaticamente os campos necessários no formulário no momento do envio.
2. Backend (Exemplo em PHP)
No servidor que recebe o POST, use a função checkgktinc() para validar o desafio:
require_once('guardiankey.class.php');
$gk = new GuardianKey();
$is_valid = $gk->checkgktinc($_POST);
if ($is_valid) {
// prosseguir com a autenticação
} else {
// rejeitar ou registrar tentativa suspeita
}
A função checkgktinc() lida com a comunicação com a API do GKTinc, interpreta o resultado e retorna true ou false.
📌 Considerações
- O GKTinc exige que seu backend valide o token recebido no POST, similar ao funcionamento de CAPTCHAs (veja a função checkgktinc() no exemplo).
- Se você já integrou o reCAPTCHA, notará que o GKTinc evita complexidades como chaves pública/privada, expiração de token, validação de IP, etc.
- Em aplicações SPA ou em APIs, os dados do desafio também podem ser enviados via JavaScript (XHR/Fetch) junto com o corpo da requisição.