Crie uma agenda de rotação de senhas
Transforme uma regra de rotação em datas concretas: uma senha trocada em 2024-12-15 com intervalo de 90 dias vence em 2025-03-15, e um aviso com 14 dias de antecedência cai em 2025-03-01. Só datas são informadas, nunca a senha. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Data da última alteração
- 2024-12-15
- Intervalo de rotação (dias)
- 90
- Dias de aviso antecipado
- 14
- Data prevista
- 2025-03-15
- Data do lembrete
- 2025-03-01
Uma política de rotação de senhas só é útil quando suas datas permitem agir. Esta calculadora recebe a data da última alteração, soma o intervalo de rotação exigido e retrocede a partir do vencimento para definir um aviso antecipado. Ela retorna datas ISO exatas que você pode copiar para um chamado, calendário, inventário, procedimento ou fluxo automatizado. Anos bissextos e meses com durações diferentes são tratados corretamente, sem aproximar noventa dias como três meses nem manter fórmulas de planilha para cada conta.
Transforme a política de rotação em duas datas práticas
Comece pela data real da última alteração da senha, não pelo dia em que alguém a registrou ou revisou a conta. Informe o valor no formato YYYY-MM-DD e o intervalo da política como um número inteiro positivo de dias corridos. A calculadora soma exatamente essa quantidade para obter o próximo vencimento.
Em seguida, subtrai a antecedência do lembrete para indicar quando a preparação deve começar. Assim, um intervalo de noventa dias com aviso de catorze dias produz tanto o prazo obrigatório quanto um gatilho operacional anterior. Essa diferença importa: o vencimento isolado não reserva uma janela de manutenção, define uma pessoa responsável nem permite testar o segredo substituto.
O resultado mantém os intervalos ao lado das duas datas, facilitando a conferência sem reconstruir a entrada. Use zero dias para avisar no próprio vencimento; nos demais casos, reserve antecedência suficiente para aprovações e implantação na conta.
Entenda a contagem de dias corridos e a validação
A agenda usa dias corridos, e não dias úteis ou contas baseadas em meses. Um intervalo de trinta dias sempre avança trinta viradas de meia-noite, mesmo ao atravessar fevereiro, um dia bissexto, o fim de um mês de trinta e um dias, um fim de semana ou feriado. O resultado respeita políticas escritas como quantidade fixa de dias e evita a ambiguidade de tratar noventa dias como três meses.
A última alteração deve ser uma data gregoriana real no formato estrito YYYY-MM-DD, inclusive com zeros à esquerda. Valores impossíveis, como 30 de fevereiro, são rejeitados. O intervalo de rotação precisa ser um inteiro positivo; zero e valores negativos não representam um período futuro.
A antecedência deve ser um inteiro não negativo. Ela pode superar o intervalo se a data calculada permanecer no calendário aceito, embora essa configuração mereça revisão. Nenhum relógio atual é consultado, portanto a mesma entrada sempre gera a mesma saída.
Use o resultado em um processo de segurança repetível
Trate as datas calculadas como informações de planejamento, não como prova de que uma credencial foi alterada. Registre o vencimento e o lembrete junto do identificador da conta, da pessoa responsável pelo sistema, do método de rotação e das evidências exigidas. Na data do aviso, abra ou atualize uma tarefa, confirme que a pessoa responsável ainda tem acesso, prepare a substituição e identifique todos os serviços consumidores.
No vencimento, verifique a alteração e registre uma nova data de última mudança antes de calcular o ciclo seguinte. A função não acessa a rede, nem recebe ou examina a senha; processa apenas metadados de agendamento. Se a política usar meses, dias úteis ou exceções ligadas ao risco, avalie-a separadamente em vez de tratá-la como intervalo fixo de dias.
Casos de uso
Agende rotações de contas de serviço
Crie uma data de vencimento e outra de preparação após cada alteração confirmada da senha de uma conta de serviço.
Mantenha um registro de controle de acesso
Acrescente campos ISO coerentes de lembrete e prazo ao inventário de credenciais gerenciadas sem armazenar senhas.
Dispare tarefas de rotação
Calcule as datas que um fluxo automatizado deve usar para abrir uma tarefa e cobrar sua conclusão.
Perguntas frequentes
A calculadora precisa da própria senha?
Não. Ela usa somente a data da última alteração, o intervalo de rotação e a antecedência do lembrete.
Como o próximo vencimento é calculado?
O intervalo positivo é somado como uma quantidade exata de dias corridos à data da última alteração.
Anos bissextos e mudanças de mês são aceitos?
Sim. O cálculo valida datas gregorianas e considera dias bissextos e a duração real de cada mês.
Fins de semana ou feriados são ignorados?
Não. O intervalo e a antecedência são medidos em dias corridos, portanto essas datas contam normalmente.
Quando vence uma senha de 90 dias trocada em 15 de dezembro de 2024?
Em 15 de março de 2025. A calculadora soma exatamente 90 dias corridos, sem pular fins de semana nem feriados, e com aviso de 14 dias de antecedência marca o lembrete para 1º de março de 2025.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/final3/password-change-reminder-schedule \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"last_changed_date":"2026-01-15","rotation_interval_days":90}'const res = await fetch("https://api.kit.forhosting.com/final3/password-change-reminder-schedule", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"last_changed_date": "2026-01-15",
"rotation_interval_days": 90
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/final3/password-change-reminder-schedule",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"last_changed_date": "2026-01-15",
"rotation_interval_days": 90
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/final3/password-change-reminder-schedule", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"last_changed_date":"2026-01-15","rotation_interval_days":90}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"last_changed_date":"2026-01-15","rotation_interval_days":90}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/final3/password-change-reminder-schedule", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"last_changed_date": "2026-01-15",
"rotation_interval_days": 90
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "final3.password_change_reminder_schedule",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Use o resultado em um processo de segurança repetível
Para automatizar, chame a API após cada rotação bem-sucedida e grave as datas retornadas no sistema de chamados ou calendário. Cada solicitação custa US$ 0,002.
Perguntas técnicas
Quanto custa um cálculo?
Cada solicitação à API custa US$ 0,002; a ferramenta no navegador também calcula a agenda localmente.
O lembrete pode cair no vencimento?
Sim. Defina reminder_days_before como zero para retornar a mesma data para lembrete e vencimento.