Pular para o conteúdo principal

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.