開発概要

情報

サービス概要のシステム構成イメージも合わせてご確認ください。

WebAPI提供機能

YubiOn FIDO2 Server Service(以下、FSS)のWebAPIは、以下のような機能を提供しています。

  • クレデンシャル(パスキー)の登録・認証
  • ユーザー管理
    • ユーザーの取得
    • ユーザーの登録
    • ユーザーの編集
    • ユーザーの削除
  • クレデンシャル(パスキー)の管理
    • クレデンシャルの取得
    • クレデンシャルの編集
    • クレデンシャルの削除

アプリケーション開発者の実装範囲イメージ

開発スコープ 開発スコープ

  • FSSは、ブラウザ上で実行されるWebAuthn APIの引数の作成・戻り値の検証を行います。
    • クレデンシャルの登録・認証を行う場合、アプリケーションサーバーはFSS WebAPIに対してリクエストを行い、WebAuthn APIのメソッド引数を取得します。ブラウザ側でその引数を用いてWebAuthn APIを呼び出し、戻り値をアプリケーションサーバーからFSS WebAPIに対して送信する事で、処理の成功・失敗を判定します。
      • アプリケーションサーバーとFSS WebAPI間の通信はHTTPSを用いて行います。リクエスト・レスポンスデータはJSON形式で送受信されます。なお、WebAuthn APIで使用される引数・戻り値の一部にはバイナリ形式のバッファーが含まれますが、それらはBase64Url形式に変換して送受信します。
      • 一部の言語ではアプリケーションサーバーとFSS間の通信を行うためのSDKが準備されています。
    • ブラウザ・アプリケーションサーバー間の通信処理はアプリケーション開発者が実装します。
      • この部分はJSON形式で送受信される事を想定していますが、WebAuthn APIの引数・戻り値の一部にはバイナリ形式のバッファーが含まれます。それらのデータをBase64Url形式からバッファー形式に変換する、あるいはバッファー形式からBase64Url形式に変換するためのクライアントJavascript用SDKも準備されています。
  • クレデンシャルの登録・検証処理の他に、ユーザー情報の管理・クレデンシャル情報の管理を行うためのWebAPIが準備されています。
    • これらを利用する際も、アプリケーションサーバーからFSS WebAPIにリクエストを行って情報の操作・取得を行います。それらの情報を用いてユーザーのブラウザ上に表示するためのクライアント実装はアプリケーション開発者が実装します。
警告

FSS WebAPIリクエストは必ずアプリケーションサーバーから行ってください。クライアントブラウザ上から直接FSS WebAPIリクエストをする事は想定されておりません。FSS WebAPIリクエストの認証時に必要なシークレットキーをクライアントブラウザに渡す事は、事実上シークレットキーをインターネット上に公開している事になるため、FSS WebAPIリクエストの安全性が確保されません。

SDK

  • 一部の言語にはFSS WebAPIへのアクセスを行うためのSDKが準備されています。これらを利用する事で、特にFSS WebAPIアクセス時の認証ヘッダ設定などが自動で行われるため、直接FSS WebAPIへリクエストする部分を実装するよりもスムースな開発を行う事が可能です。
  • 現在SDKが準備されていない言語についても、今後対応を増やしていく予定となっております。
    • SDK提供希望の言語などがありましたら、お問い合わせページからリクエストをお送りください。