Linux 软件免费装
Banner图

Authentry - Face ID, Fingerprint & Passkey Login

开发者 hosseinalehabib
更新时间 2026年5月30日 21:18
PHP版本: 7.4 及以上
WordPress版本: 7.0
版权: GPL-2.0+
版权网址: 版权信息

标签

login fingerprint webauthn passwordless-login passkey

下载

1.0.0 1.1.0

详情介绍:

🔐 Passwordless Login Is Here, and It's Simpler Than You Think Authentry brings passkey authentication to WordPress. One tap. One glance. Instantly signed in. No passwords to type. No usernames to remember. No resets, no friction, no phishing. Passkeys are built on the WebAuthn / FIDO2 standard, the same technology trusted by Google, Apple, and Microsoft. Authentry brings that same enterprise-grade security to any WordPress site, for free. 👆 Your Users Already Know How to Use It They unlock their phone with a fingerprint or Face ID dozens of times a day. Authentry makes signing into your site feel exactly the same. Here's the flow: user taps the Authentry button → confirms with Touch ID, Face ID, Android fingerprint, or Windows Hello → they're in. That's it. Enable usernameless login in settings and they don't even need to type their email. The site finds their passkey automatically, as effortless as unlocking their phone. 💡 Perfect for: membership sites, WooCommerce stores, subscription platforms, and any audience that expects a fast, modern, mobile-first experience. ✨ Key Features 🌐 Supported Browsers 📋 Shortcode Reference Sign-In Button (guests) [authentry_button label="Sign in with Passkey" style="default" redirect="" class=""] Add a Passkey (logged-in users only) [authentry_register label="Add a passkey" style="default" class="" reload="1"] Omit label to use the value set in Appearance settings. Set reload="0" to stay on the page after a successful registration. Full Passkey Management UI (logged-in users only) [authentry_manage class="" title=""] Lists all passkeys with rename, delete, and add controls, the same UI shown in WooCommerce My Account and the WP Admin profile page. Scripts load automatically. Shortcode Attributes - [authentry_button] Shortcode Attributes - [authentry_register] Shortcode Attributes - [authentry_manage] 🔧 Custom Login Pages Already have a custom login page? No problem. Just drop the Authentry button in and keep your existing form. No need to rebuild anything. ✅ Recommended: Shortcode
  1. Edit your custom login page
  2. Add a Shortcode block:
[authentry_button]
  1. Optionally, pass attributes:
[authentry_button label="Sign in with Passkey" redirect="https://yoursite.com/my-account/" style="outline"] Authentry automatically enqueues its CSS and JavaScript on standard front-end pages. No extra setup needed. Alternative: PHP Template In your login template file: do_action( 'authentry_render_button', [ 'redirect' => home_url( '/my-account/' ) ] ); Any missing keys fall back to your Authentry > Appearance and General settings. Username / Email Field (non-usernameless flow) When usernameless login is off, or when a browser falls back from discovery mode, Authentry looks for a username or email field using these selectors: If the field is already filled when the user clicks the button, that value is sent automatically. If it's empty, the user is prompted. With usernameless login on, users can often sign in without typing anything at all. Let Users Manage Their Passkeys On any member dashboard or account page (logged-in users), add the full management UI: [authentry_manage] Or just the "Add a passkey" button with no list: [authentry_register] In a theme template: do_action( 'authentry_render_manage', [ 'title' => 'Security Keys' ] ); Page Builders & Late-Rendered Output If the button is printed after wp_enqueue_scripts, for example in some page builders or AJAX-loaded forms, fire this hook once before output: do_action( 'authentry_enqueue_public_assets' ); The [authentry_register] and [authentry_manage] shortcodes handle this automatically. Use the same hook in custom templates if styles or scripts appear to be missing. Redirects & Customization For Developers See Authentry > Integration in the admin for the full reference of shortcodes, actions, filters, and REST API endpoints (/wp-json/authentry/v1/...). The global window.Authentry object is also available for advanced JavaScript integrations. Hook-Only Example (theme login template) Step 1 - In your login markup: do_action( 'authentry_render_button', [ 'context' => 'my-theme-login' ] ); Step 2 - In functions.php or your login class: add_filter( 'authentry_login_username_selectors', function( $selectors ) { $selectors[] = '#my-login-email'; return $selectors; } ); add_filter( 'authentry_redirect_url', function( $url, $user ) { return home_url( '/account/' ); }, 10, 2 ); 🧑‍💻 Developer Hooks Actions - Render UI in Theme Templates do_action( 'authentry_render_button', $args ); do_action( 'authentry_render_manage', [ 'class' => '', 'title' => '' ] ); do_action( 'authentry_render_passkey_reminder', [ 'context' => 'member-dashboard' ] ); Filters User meta Helper function Actions

安装:

  1. Upload the authentry folder to /wp-content/plugins/.
  2. Activate the plugin via the Plugins menu in WordPress.
  3. Go to Authentry in the WordPress admin sidebar and configure your settings.
  4. Your site must be served over HTTPS. WebAuthn requires a secure context. This is a strict browser-level requirement and cannot be overridden.

屏幕截图:

  • WordPress login form with the Authentry passkey button.
  • WordPress register form with the Authentry add passkey button.
  • Login with Face ID in Windows
  • WooCommerce My account page in a Separate menu "Security key" to manage passkeys
  • WooCommerce My account page in edit profile tab to manage passkeys
  • Wordpress edit profile to see and manage user passkeys
  • Authentry General settings
  • Authentry Appearance settings
  • Authentry Security settings
  • Authentry Advanced settings
  • Authentry Integration for adding to any form and panel

升级注意事项:

1.1.0 Optional passkey setup reminders and developer helpers for detecting users without passkeys. Enable under Authentry > General when you are ready. 1.0.0 Welcome to Authentry Please ensure your site is served over HTTPS before activating the plugin.

常见问题:

🔒 Does Authentry require HTTPS?

Yes. The WebAuthn standard requires a secure context (HTTPS). Authentry will not work on HTTP sites. This is a browser-level security requirement and cannot be overridden.

🔑 Will this remove the password login form?

No. By default, the passkey button is added alongside the existing login form. Users can still log in with their username and password. You can optionally configure Authentry to replace the password field entirely.

👤 Can users log in without entering a username?

Yes Enable "Enable usernameless passkey login" in settings to allow discoverable-credential login where the authenticator and browser support it. If account discovery isn't available on a device, Authentry automatically falls back to the standard username/email + passkey flow.

📱 Which authenticators are supported?

Any FIDO2-compatible authenticator works, including:

  • Platform authenticators: Touch ID, Face ID, Windows Hello, Android fingerprint
  • Roaming authenticators: YubiKey, Google Titan Key, and similar hardware security keys

👆 Does this support Face ID and fingerprint login?

Yes On compatible devices and browsers, users can authenticate using Face ID, Touch ID, Android fingerprint, or Windows Hello, all through the standard WebAuthn passkey flow.

💡 Why offer passkey login to subscribers and customers?

Most people already trust biometrics to unlock their phone. Passkeys use the same built-in device security, so signing into your site feels as natural as unlocking a screen: one touch or one glance instead of typing a password. Less friction at checkout, in member areas, and on return visits, all while staying fully phishing-resistant.

🔢 How many passkeys can a user register?

The default limit is 5 passkeys per user. You can adjust this (from 1 to 20) under Authentry > Security.

🛒 Is Authentry compatible with WooCommerce?

Yes Authentry adds passkey buttons to WooCommerce login and registration forms, and can display passkey management in My Account (toggle Show passkeys in WooCommerce My Account under Authentry > General). You can choose between:

  • Separate menu item (endpoint): a dedicated Security Keys tab
  • Inside Account details (edit profile): passkeys embedded on the account settings screen
WooCommerce-specific options only appear when WooCommerce is active.

🛡️ Is it safe? How is replay attack protection handled?

Each authentication uses a cryptographically random 32-byte challenge stored as a single-use transient. The challenge is deleted immediately after verification. Sign counts are tracked per credential. If the received count is not strictly greater than the stored count, authentication is rejected, indicating a possible cloned authenticator. All signatures are cryptographically verified using OpenSSL.

💾 Where are passkeys stored?

Passkey public keys are stored in a custom database table ({prefix}authentry_credentials). The private key never leaves the user's device. Only the public key is ever sent to your server.

🌐 Can I use Authentry on a WordPress Multisite network?

Authentry is compatible with WordPress Multisite but operates on a per-site basis. Each site in the network maintains its own credential table and settings.

⚡ Does it work with caching plugins?

Yes. The REST API endpoints used by Authentry bypass full-page caching automatically (they return JSON, not HTML). No special configuration is required for most caching plugins.

📵 What happens if a user loses their device?

The user can still log in with their password (if they remember it), then remove the lost device's passkey from their profile. Administrators can also delete credentials directly from the user's profile in WP Admin.

🎨 I use a custom login page. How do I add passkey login?

Place [authentry_button] on your custom login page, or call do_action( 'authentry_render_button' ); in your login template. Disable Enable on WordPress login form under Authentry > General if you don't use wp-login.php. See the Custom Login Pages section above for full details on username fields, redirects, and enrollment using [authentry_register].

更新日志:

1.1.0 1.0.0