Skip to main content

title: साइन इन करें description: “रिमाइंडर और व्यक्तिगत सुविधाओं को सक्षम करने के लिए CLI से FailproofAI में साइन इन करें”

failproofai auth login    # email + one-time code
failproofai auth logout   # revoke this session
failproofai auth whoami   # print the signed-in identity
लीगेसी --login / --logout / --whoami फ्लैग फॉर्म अभी भी बैक-कम्पैट के लिए एक उपनाम के रूप में स्वीकार किया जाता है। प्रमाणीकरण वैकल्पिक है। पॉलिसीज़, डैशबोर्ड, /audit पृष्ठ और अन्य सभी स्थानीय सुविधाएं बिल्कुल उसी तरह काम करती हैं चाहे आप साइन इन हों या न हों। लॉगिन सतह इसलिए मौजूद है ताकि जिन सुविधाओं को स्थिर पहचान की जरूरत है (आज फिर से ऑडिट रिमाइंडर, भविष्य में और भी अधिक) के पास लंगर डालने के लिए कहीं हो।

साइन-इन फ्लो

failproofai auth login
आपके ईमेल के लिए संकेत देता है, उस पते पर एक 6-अंकीय वन-टाइम कोड भेजता है, कोड के लिए संकेत देता है, और सफलता पर ~/.failproofai/auth.json (मोड 0600) लिखता है। उसी सेशन को तब इन-ऐप डैशबोर्ड में देखा जा सकता है — /audit पर [ set a reminder ] क्लिक करने से आप साइन इन दिखेंगे। डैशबोर्ड उन उपयोगकर्ताओं के लिए /audit पर एक मोडल डायलॉग के रूप में समान फ्लो को उजागर करता है जो कभी CLI को छूते नहीं हैं।

साइन-आउट

failproofai auth logout
सर्वर पर वर्तमान सेशन को रद्द करता है और ~/.failproofai/auth.json को हटाता है। यदि api-सर्वर अप्राप्य है, तो स्थानीय फ़ाइल को वैसे भी हटा दिया जाता है — साइन आउट करने का स्थानीय इरादा हमेशा जीतता है।

पहचान जांच

failproofai auth whoami
जब एक वैध सेशन मौजूद होता है तो <email> (<user uuid>) प्रिंट करता है और 0 पर निकलता है, या not signed in प्रिंट करता है और 1 पर निकलता है। यदि एक्सेस टोकन समाप्त होने के एक मिनट के भीतर है तो पृष्ठभूमि में चुप चाप ताज़ा करता है।

स्थायी फिर से ऑडिट रिमाइंडर

जब आप /audit पृष्ठ पर [ set a reminder ] क्लिक करते हैं (या मोडल के माध्यम से साइन इन करते हैं जो बटन गेट्स पर), डैशबोर्ड ~/.failproofai/next-audit.json पर एक छोटी साथी फ़ाइल लिखता है:
{
  "next_audit_at": 1780765200,
  "user_email": "you@example.com",
  "set_at": 1780160574
}
यह फ़ाइल उस ईमेल के लिए स्कोप की गई है जिसके लिए इसे सेट किया गया था — CLI सेशन को एक अलग खाते में स्विच करने से पिछले उपयोगकर्ता के संबंधित कोई भी रिमाइंडर छिप जाता है। डिफ़ॉल्ट ऑफसेट 7 दिन है, स्केड्यूलर आने पर बाद में कॉन्फ़िगर करने योग्य। auth.json की तरह 0600 परमिशन के साथ बनाया गया। डैशबोर्ड का /api/auth/reminder एंडपॉइंट GET (पढ़ें), POST (सेट / रीशेड्यूल), और DELETE (साफ़ करें) को उजागर करता है और एक सक्रिय सेशन की आवश्यकता होती है।

~/.failproofai/auth.json में क्या है

{
  "access_token": "eyJhbGc…",
  "refresh_token": "9ede3e…",
  "access_expires_at": 1780160574,
  "refresh_expires_at": 1782748974,
  "user": { "id": "<uuid>", "email": "you@example.com" }
}
0600 परमिशन के साथ बनाया गया (केवल मालिक पढ़ें/लिखें)। एक्सेस टोकन एक 1-घंटे का HS256 JWT है; रिफ्रेश टोकन एक अपारदर्शी 256-बिट यादृच्छिक स्ट्रिंग है जिसे सर्वर SHA-256(token) के रूप में स्टोर करता है। रिफ्रेश-टोकन रीप्ले सर्वर-साइड पर पहचाना जाता है और उपयोगकर्ता के लिए हर सेशन को रद्द करता है।

पर्यावरण चर

चरडिफ़ॉल्टउद्देश्य
FAILPROOF_API_URLhttps://api.befailproof.aiapi-सर्वर बेस URL को ओवरराइड करें। स्व-होस्ट किए गए api-सर्वर के विरुद्ध स्थानीय विकास के लिए उपयोगी।
FAILPROOFAI_AUTH_DIR~/.failproofaiओवरराइड करें कि auth.json कहाँ संग्रहीत है। मुख्यतः परीक्षणों के लिए।
पूर्ण सूची के लिए पर्यावरण चर देखें।

समस्या निवारण

“Could not reach the api-server” — CLI FAILPROOF_API_URL के लिए TCP कनेक्शन नहीं खोल सकता। अपने नेटवर्क की जांच करें, या यदि आप स्व-होस्ट किए गए api-सर्वर चला रहे हैं तो FAILPROOF_API_URL सेट करें। “Rate limited” — उस ईमेल के लिए 15 मिनट की विंडो में बहुत सारे लॉगिन प्रयास (5/email) या IP (20/IP), या उसी ईमेल के लिए पिछले अनुरोध के बाद 30-सेकंड का रीसेंड कूलडाउन। त्रुटि संदेश में सेकंड में पुनः प्रयास-बाद की विंडो शामिल होती है। Code rejected — OTP गलत था, समाप्त हो गया, या पंक्ति ने अपने 5-गलत-अनुमान लॉकआउट को हिट किया। ताज़ा कोड के लिए अनुरोध करने के लिए failproofai auth login चलाएं।