Leírás
A OneCode Login modern, jelszó nélküli hitelesítési élményt nyújt WordPress oldaladhoz. A hagyományos jelszavak helyett a felhasználók egy biztonságos, 6 jegyű ellenőrző kódot kapnak e-mailben.
Főbb funkciók
- Jelszó nélküli hitelesítés – A felhasználók csak az e-mail címükkel jelentkeznek be
- 6 jegyű ellenőrző kódok – Biztonságos, időkorlátozott kódok e-mailben
- kérésszám-korlátozás – Beépített védelem a brute force támadások ellen
- Kérésazonosító kötés – Minden kód egy adott bejelentkezési munkamenethez van kötve a fokozott biztonság érdekében
- Semleges visszajelzés – Megakadályozza a felhasználó-kilistázási támadásokat azzal, hogy nem árulja el, létezik-e az e-mail cím
- Testreszabható – Állítsd be a lejárati időket, várakozási időket és e-mail sablonokat
- Akadálymentes – Teljes billentyűzetes navigáció és képernyőolvasó támogatás
- Gutenberg blokk – Könnyen hozzáadható bejelentkezési űrlap bármely oldalhoz
- Shortcode támogatás – Használd a [onecode_login]-t bárhol
- wp-login.php integráció – Opcionálisan felváltja az alapértelmezett WordPress bejelentkezést
- Developer API – Other plugins can use OneCode Login as an email one-time-code (OTP) service to verify a visitor’s email — see the Developer information section
Biztonsági funkciók
- Kriptográfiailag biztonságos kódgenerálás
- Codes and magic-link tokens are stored HMAC-hashed, never in plain text
- Beállítható kód lejárati idő (alapértelmezés: 10 perc)
- Újraküldési várakozási idő a spam megelőzésére
- IP- és e-mail-alapú kérésszám-korlátozás
- Automatikus zárolás sikertelen próbálkozások után
- A kódok egyszer használatosak, és sikeres bejelentkezés után érvénytelenné válnak
Felhasználási esetek
- Tagsági oldalak, ahol a jelszavakkal kapcsolatos terhelés problémát jelent
- Ügyfélportálok, amelyek egyszerű hitelesítést igényelnek
- Belső eszközök, ahol egyszerű, de biztonságos megoldás szükséges
- Bármely oldal, amely javítani szeretné a felhasználói élményt
Developer information
Other plugins on the same site can use OneCode Login as a generic email
one-time-code (OTP) service — for example to verify a guest’s email before
letting them act. OneCode emails the code and verifies it; your plugin keeps
full control of its own login/session (OneCode only asserts that the code is
valid for the email — it never logs anyone in). It works for any email
address; the address does not need a WordPress account.
All entry points are plain functions (and matching filters), so you do not need
a hard dependency on any class. The API is gated by the Settings Advanced
Enable developer API toggle.
Detect support (side-effect free — never call the request hook just to probe):
if ( function_exists( 'onecode_login_request_otp' ) && onecode_login_supports( 'otp' ) ) { ... }
-
Start authentication — email a code and receive a handle:
$handle = onecode_login_request_otp( $email, array( ‘consumer’ => ‘my_plugin’ ) );
// $handle = array( ‘request_id’, ‘auth_secret’, ‘expires_in’ (seconds), ‘expires_at’ (UTC), ‘sent’ )
// On failure: a WP_Error (codes: disabled, invalid_request, rate_limited, cooldown).
Keep request_id and auth_secret server-side (e.g. in a transient tied to the
visitor). The auth_secret is NEVER shown to the customer — it is what stops an
outsider who only knows the email from completing verification by guessing codes.
-
Complete authentication — the customer gives your plugin the code from the email:
$result = onecode_login_verify_otp( array(
’email’ => $email,
‘request_id’ => $handle[‘request_id’],
‘code’ => $code_from_customer,
‘auth_secret’ => $handle[‘auth_secret’],
‘consumer’ => ‘my_plugin’,
) );
// Success: array( ‘valid’ => true, ’email’ => … ). Failure: WP_Error.
On failure show a generic message to the user (the API intentionally returns a
single verify_failed code so it can’t be used as an oracle).
Filters are also available for loose coupling: onecode_login_request_otp
($pre, $email, $args) and onecode_login_verify_otp ($pre, $args).
Discovery and capabilities:
onecode_login_supports( $feature )— returns true for'otp',
‘identity_assertion’,'any_email'and'api_enabled'. It reports whether
the feature is usable right now: while the developer API toggle is off every
key returns false, so a gate onsupports()keeps you from offering a flow
the API would refuse. Use your own fallback in that case.onecode_login_api()->is_enabled()— the developer API toggle on its own.onecode_login_api()— returns theOneCode_Login_APIservice instance.OneCode_Login_API::VERSION— the API contract version (independent of the
plugin version), so you can feature-gate against the API surface.do_action( 'onecode_login_api_init', $api )— fires once the API is ready;
bind to it if you want to wire up as soon as OneCode Login loads.
Reference: $args['consumer'] (a short [a-z0-9_-] label identifying your
integration) is required on both calls — it isolates your codes and rate limits
from the built-in login and from other consumers. Both request and verify are
rate-limited by OneCode, returning rate_limited / cooldown WP_Errors you can
surface to the user.
Képernyőmentések



Blokkok
This plugin provides 1 block.
- OneCode Login
Telepítés
- Töltsd fel az
onecode-loginmappát a/wp-content/plugins/könyvtárba - Aktiváld a bővítményt a WordPress Bővítmények menüjében
- Menj a Beállítások > OneCode Login menüpontra a beállítások konfigurálásához
- Add hozzá a bejelentkezési űrlapot a [onecode_login] shortcode vagy Gutenberg blokk használatával
Shortcode opciók
redirect_to– Átirányítási URL sikeres bejelentkezés utánbutton_text– Egyéni szöveg a kód küldése gombhozverify_text– Egyéni szöveg az ellenőrzés gombhoz
Példa: [onecode_login redirect_to="/dashboard" button_text="Kód kérése"]
GYIK
-
A bővítmény teljesen felváltja a jelszavas bejelentkezést?
-
Alapértelmezés szerint nem. A OneCode Login a hagyományos jelszavas bejelentkezés mellett működik. Azonban bekapcsolhatod a „wp-login.php felülírása” opciót, hogy a OneCode Login legyen az elsődleges bejelentkezési mód.
-
Mi történik, ha nem érkezik meg az e-mail?
-
A felhasználók a várakozási idő után kérhetnek új kódot (alapértelmezés: 60 másodperc). Ellenőrizd a szerver e-mail beállításait, ha az e-mailek folyamatosan nem érkeznek meg.
-
Biztonságos ez?
-
Igen. A bővítmény kriptográfiailag biztonságos véletlenszám-generálást, időkorlátozott kódokat, sebességkorlátozást és kéréskötést használ a különböző támadások megelőzésére.
-
Testreszabhatom az e-mail sablont?
-
Igen. A Beállítások > OneCode Login > E-mail fülön testreszabhatod az ellenőrző e-mailek tárgyát és szövegét. Használhatsz helyőrzőket, mint például {code}, {expires}, {site_name} és {user_email}.
-
Működik multisite-tal?
-
A bővítmény egyoldalas telepítésekhez készült. A multisite kompatibilitás a jövőbeli verziókban kerülhet hozzáadásra.
-
Mi történik, ha a felhasználónak nincs fiókja?
-
A bővítmény csak meglévő felhasználók bejelentkezését teszi lehetővé. Biztonsági okokból nem árulja el, hogy egy e-mail címhez tartozik-e fiók – a felhasználók mindig ugyanazt az „ellenőrizd az e-mailjeidet” üzenetet látják.
Vélemények
Közreműködők és fejlesztők
“OneCode Login” egy nyílt forráskódú szoftver. A bővítményhez a következő személyek járultak hozzá:
Közreműködők“OneCode Login” 1 nyelvre lett lefordítva. Köszönet a fordítóknak az áldozatos munkájukért!
“OneCode Login” fordítása a saját nyelvünkre.
Érdekeltek vagyunk a fejlesztésben?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Változási napló
1.1.1
- Security fix:
onecode_login_supports()no longer reports support while the developer API is switched off. Integrating plugins now get the correct answer and can fall back accordingly. - Added an
api_enabledcapability key toonecode_login_supports().
1.1
- New: developer API — other plugins on the same site can use OneCode Login as a generic email one-time-code (OTP) service. They request a code for any email address, then verify the code together with a server-side secret. Identity assertion only: OneCode confirms the code is valid for the email but never logs anyone in, so the integrating plugin keeps full control of its own session. See the „Developer information” section for the code-level integration.
- New:
api_enabledsetting (Advanced tab) to turn the developer API on or off. - Security: verification codes and magic-link tokens are now stored HMAC-hashed instead of in plain text.
- Security: client IP detection no longer trusts spoofable proxy headers by default (opt in via the
onecode_login_trust_proxy_headersfilter when behind a trusted proxy). - Security: magic-link verification is now rate-limited per IP as well as per email.
- Privacy: debug logging no longer records verification codes or full email addresses (emails are masked).
- Privacy: added WordPress personal-data exporter and eraser, plus a suggested Privacy Policy snippet.
- Internal: codes are scoped per channel so the developer API and the built-in login never interfere with each other; verification uses an atomic single-use claim.
- Note: upgrading from 1.0.2 or earlier clears any pending codes/tokens once (storage-format change); users simply request a new code.
1.0.2
- Fix: assets are now loaded reliably when the shortcode/block is present on the page (prevents first-submit failure under aggressive page caching or JS optimization).
- Fix: clear leftover code/rate-limit rows from earlier versions whose timestamps were stored in the local PHP timezone instead of UTC.
1.0.1
- Small bug fixes
1.0.0
- Első kiadás
- Jelszó nélküli bejelentkezés 6 jegyű ellenőrző kóddal
- Sebességkorlátozás és brute force védelem
- Testreszabható e-mail sablonok
- Gutenberg blokk és shortcode támogatás
- wp-login.php lecserélése
- Teljeskörű akadálymentességi támogatás