開発者ガイド:PassKeysの実装方法
このガイドは、開発者にパスキーベースの認証を追加して、セキュリティとユーザーエクスペリエンスを向上させる方法を示しています。 マニュアルサーバーとクライアントの両方のセットアップと、Descopeが視覚インターフェイスと事前に構築されたフローでこれをどのように単純化するかを説明します。 このチュートリアルは、インドのソフトウェア開発者および技術著者であるKumar Harshによるものです。彼のウェブサイトで彼の作品の詳細をご覧ください!
PassKeysを使用すると、アプリケーションのセキュリティとユーザーの利便性が向上します。このガイドでは、セットアップから展開まで、PassKeyの実装を詳しく説明しています。 これらの手順に従うと、安全でユーザーフレンドリーな認証エクスペリエンスが作成され、不正アクセスが減り、ユーザーの信頼が削減されます。passkey認証:基本
脆弱なパスワードとは異なり、PassKeysはパブリックキー暗号化を使用して、セキュリティとユーザーエクスペリエンスの両方を強化します。ボールトを考えてみてください:あなたのアイデンティティは固定されており、一意のキーペアでのみアクセスできます。 PassKeysは同様に動作します。各ユーザーには秘密キー(デバイスに安全に保存されています)と、ウェブサイトと共有される公開キーがあります。
ログインには、ユーザーのデバイスにチャレンジを送信するWebサイトが含まれます。秘密鍵は、一意の署名(デジタル指紋)を作成し、キー自体を明らかにすることなくIDを確認します。 これにより、ウェブサイトが侵害されてもログインが安全になります。視覚的表現は次のとおりです
図:パスキー認証式
PassKeysの実装:マニュアルアプローチ(そして、なぜそうすべきではないのか)
PassKeysは革新的ですが、セットアップの難易度とセキュリティリスクのために手動の実装は複雑であり、落胆しています。 サポートされているライブラリを使用するのが最善です
サーバーサイドのセットアップ:これには、キー生成、署名検証、証明の取り扱い、およびユーザー情報のためのデータベース統合が含まれます。
FrontEnd統合:
JavaScriptのおよび
を使用して、クライアントはユーザーを認証機のインタラクション(指紋スキャン、ピンなど)を介してユーザーをガイドし、サーバーにデータを送信します。-
SimpleWauthnのようなライブラリはこれを簡素化します。 キー生成を処理し、手動アプローチよりもプロセスを容易にします。
- (simplewauthnを使用したReactクライアントとnode.js Expressサーバーの例プロジェクトが利用可能です。 サーバー側のセットアップ(SimpleWauthnを使用)サーバーは、4つのキーエンドポイントを備えたパッケージを使用します。
-
/generate-registration-options
:クライアントの登録オプションを構成および生成し、同じデバイスから複数の登録を防ぎます。 また、課題を生成します。 -
/verify-registration
:成功したオンデバイス登録を検証し、データベースにユーザーの詳細(公開キー、資格情報、デバイス情報)を保存します。 - :認証オプションを返し、登録されたデバイスIDを取得します
/generate-authentication-options
:登録されたデバイスを使用して、成功したオンデバイス認証を検証します。 -
/verify-authentication
この例では、データベース統合が省略されています。生産用にそれを追加する必要があります。 - Reactプロジェクトのセットアップ
- 。
- を使用して新しいReactプロジェクトを作成します Descope sdk:
-
npm create vite
この単純化された例は、Descopeのサインアップまたはサインインフローを統合する方法を示しています: -
npm install @descope/react-sdk
アプリを試してみてください -
AuthProvider
main.jsx
実行 を実行し、 - でアプリにアクセスします。 ユーザーを登録し、PassKeysを設定し、ログインをテストします。 DescopeダッシュボードでPassKey Autofillを有効にすることもできます。
App.js
(完全なコードはgithubで利用できます。)
を使用します。 登録が成功した後、onRegistrationStart
結果を検証します。 認証は、/generate-registration-options
、startRegistration()
、および@simple-webauthn/browser
。
/verify-registration
このマニュアル方法は複雑で、ユーザーの識別とデータストレージのために追加のセットアップとメンテナンスが必要です。 HTTPSセットアップには追加の手順が必要です
/generate-authentication-options
startAuthentication()
簡単な方法:Descopeを使用してPassKeysを実装します/verify-authentication
DescopeはPassKeyの実装を簡素化し、複雑な手動のセットアップを排除します。 認証フローを管理するためのノーコードインターフェイスを提供します
セコープフローの作成
Descopeアカウントにサインアップします。
ダッシュボードで、Auth Flowを作成します。主要な方法としてpasskeys(webauthn)を選択します オプションで、2FAメソッドを追加します ログイン画面を選択します(追加の登録方法がある可能性があります)。
- DescopeはAuth Flowを生成し、プロジェクトIDでコードスニペットを提供します。
をインストールします プロジェクトIDを使用してin
を設定します- デスコープコンポーネントとフックを使用して、認証フローを実装してください。
descopeのドラッグアンドドロップ認証
Descopeは、認証フローを管理するためのドラッグアンドドロップインターフェイスを使用してPassKeyの実装を合理化します。これにより、セットアップと変更が簡素化され、あらゆるスキルレベルの開発者がアクセスできます。 簡単に、より速く、よりアクセスしやすいログインを可能にします。
無料のデスコープアカウントにサインアップして詳細を確認してください。
以上が開発者ガイド:PassKeysの実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











このパイロットプログラム、CNCF(クラウドネイティブコンピューティングファンデーション)、アンペアコンピューティング、Equinix Metal、およびActuatedのコラボレーションであるCNCF GithubプロジェクトのARM64 CI/CDが合理化されます。 このイニシアチブは、セキュリティの懸念とパフォーマンスリムに対処します

このチュートリアルは、AWSサービスを使用してサーバーレスイメージ処理パイプラインを構築することをガイドします。 APIゲートウェイ、Lambda関数、S3バケット、およびDynamoDBと対話するECS Fargateクラスターに展開されたnext.jsフロントエンドを作成します。 th

これらのトップ開発者ニュースレターを使用して、最新のハイテクトレンドについてお知らせください! このキュレーションされたリストは、AI愛好家からベテランのバックエンドやフロントエンド開発者まで、すべての人に何かを提供します。 お気に入りを選択し、Relを検索する時間を節約してください
