ホームページ テクノロジー周辺機器 IT業界 開発者ガイド:PassKeysの実装方法

開発者ガイド:PassKeysの実装方法

Feb 08, 2025 am 09:55 AM

このガイドは、開発者にパスキーベースの認証を追加して、セキュリティとユーザーエクスペリエンスを向上させる方法を示しています。 マニュアルサーバーとクライアントの両方のセットアップと、Descopeが視覚インターフェイスと事前に構築されたフローでこれをどのように単純化するかを説明します。 このチュートリアルは、インドのソフトウェア開発者および技術著者であるKumar Harshによるものです。彼のウェブサイトで彼の作品の詳細をご覧ください!

PassKeysを使用すると、アプリケーションのセキュリティとユーザーの利便性が向上します。このガイドでは、セットアップから展開まで、PassKeyの実装を詳しく説明しています。 これらの手順に従うと、安全でユーザーフレンドリーな認証エクスペリエンスが作成され、不正アクセスが減り、ユーザーの信頼が削減されます。

passkey認証:基本

脆弱なパスワードとは異なり、PassKeysはパブリックキー暗号化を使用して、セキュリティとユーザーエクスペリエンスの両方を強化します。ボールトを考えてみてください:あなたのアイデンティティは固定されており、一意のキーペアでのみアクセスできます。 PassKeysは同様に動作します。各ユーザーには秘密キー(デバイスに安全に保存されています)と、ウェブサイトと共有される公開キーがあります。

ログインには、ユーザーのデバイスにチャレンジを送信するWebサイトが含まれます。秘密鍵は、一意の署名(デジタル指紋)を作成し、キー自体を明らかにすることなくIDを確認します。 これにより、ウェブサイトが侵害されてもログインが安全になります。

視覚的表現は次のとおりです

図:パスキー認証式

PassKeysの実装:マニュアルアプローチ(そして、なぜそうすべきではないのか)

Developer Guide: How to Implement Passkeys PassKeysは革新的ですが、セットアップの難易度とセキュリティリスクのために手動の実装は複雑であり、落胆しています。 サポートされているライブラリを使用するのが最善です

一般的に、手動の実装には:

サーバーサイドのセットアップ:これには、キー生成、署名検証、証明の取り扱い、およびユーザー情報のためのデータベース統合が含まれます。

FrontEnd統合:

JavaScriptの

および

を使用して、クライアントはユーザーを認証機のインタラクション(指紋スキャン、ピンなど)を介してユーザーをガイドし、サーバーにデータを送信します。
    SimpleWauthnのようなライブラリはこれを簡素化します。 キー生成を処理し、手動アプローチよりもプロセスを容易にします。
  • (simplewauthnを使用したReactクライアントとnode.js Expressサーバーの例プロジェクトが利用可能です。
  • サーバー側のセットアップ(SimpleWauthnを使用)サーバーは、4つのキーエンドポイントを備えたパッケージを使用します。
    1. /generate-registration-options:クライアントの登録オプションを構成および生成し、同じデバイスから複数の登録を防ぎます。 また、課題を生成します。
    2. /verify-registration:成功したオンデバイス登録を検証し、データベースにユーザーの詳細(公開キー、資格情報、デバイス情報)を保存します。
    3. :認証オプションを返し、登録されたデバイスIDを取得します /generate-authentication-options
    4. :登録されたデバイスを使用して、成功したオンデバイス認証を検証します。
    5. /verify-authentication
    6. この例では、データベース統合が省略されています。生産用にそれを追加する必要があります。

    クライアント側のセットアップ(SimpleWauthnを使用)クライアントには2つのボタンが必要です(登録と認証用)。 からの構成要求、次にfrom

    を使用します。 登録が成功した後、onRegistrationStart結果を検証します。 認証は、/generate-registration-optionsstartRegistration()、および@simple-webauthn/browser/verify-registrationこのマニュアル方法は複雑で、ユーザーの識別とデータストレージのために追加のセットアップとメンテナンスが必要です。 HTTPSセットアップには追加の手順が必要です /generate-authentication-optionsstartAuthentication()簡単な方法:Descopeを使用してPassKeysを実装します/verify-authentication

    DescopeはPassKeyの実装を簡素化し、複雑な手動のセットアップを排除します。 認証フローを管理するためのノーコードインターフェイスを提供します

    セコープフローの作成

    Descopeアカウントにサインアップします。

    ダッシュボードで、Auth Flowを作成します。主要な方法としてpasskeys(webauthn)を選択します オプションで、2FAメソッドを追加します ログイン画面を選択します(追加の登録方法がある可能性があります)。

      DescopeはAuth Flowを生成し、プロジェクトIDでコードスニペットを提供します。
    1. Reactプロジェクトのセットアップ
    2. を使用して新しいReactプロジェクトを作成します
    3. Descope sdk:

    をインストールします プロジェクトIDを使用してin

    を設定します
      デスコープコンポーネントとフックを使用して、認証フローを実装してください。
    1. npm create viteこの単純化された例は、Descopeのサインアップまたはサインインフローを統合する方法を示しています:
    2. npm install @descope/react-sdk
    3. アプリを試してみてください
    4. AuthProvider main.jsx実行
    5. を実行し、
    6. でアプリにアクセスします。 ユーザーを登録し、PassKeysを設定し、ログインをテストします。 DescopeダッシュボードでPassKey Autofillを有効にすることもできます。 App.js
    7. (完全なコードはgithubで利用できます。)

    descopeのドラッグアンドドロップ認証

    Descopeは、認証フローを管理するためのドラッグアンドドロップインターフェイスを使用してPassKeyの実装を合理化します。これにより、セットアップと変更が簡素化され、あらゆるスキルレベルの開発者がアクセスできます。 簡単に、より速く、よりアクセスしやすいログインを可能にします。

    無料のデスコープアカウントにサインアップして詳細を確認してください。

以上が開発者ガイド:PassKeysの実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

CNCF ARM64パイロット:インパクトと洞察 CNCF ARM64パイロット:インパクトと洞察 Apr 15, 2025 am 08:27 AM

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

AWS ECSとLambdaを備えたサーバーレス画像処理パイプライン AWS ECSとLambdaを備えたサーバーレス画像処理パイプライン Apr 18, 2025 am 08:28 AM

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

2025年に購読する上位21の開発者ニュースレター 2025年に購読する上位21の開発者ニュースレター Apr 24, 2025 am 08:28 AM

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

See all articles