メインコンテンツまでスキップ
バージョン: 0.5.0 (最新)

🛣️ Identity ルートブロック

Identity route ブロックは、NodeBlocks アプリケーションにおけるアイデンティティ管理操作のための事前設定済み HTTP エンドポイントを提供します。これらのルートは、ブロック、バリデーター、ミドルウェアを組み合わせて、適切な認証、認可、エラー処理を備えた完全な API エンドポイントを作成します。


🎯 概要

Identity ルートブロックは次のことを目的として設計されています:

  • アイデンティティ管理操作のための完全な API エンドポイントを提供する
  • 安全な操作のためのブロックとバリデーターを組み合わせる
  • 認証と認可チェックを含める
  • 機能合成パターンをサポートする
  • ログとエラー管理を自動的に処理する

📋 ルート構造

各アイデンティティルートは、一貫したパターンに従います:

  • HTTP メソッド: 操作タイプを定義する(GET, PATCH, DELETE)
  • パス: パラメーターを含むエンドポイント URL を指定する
  • ハンドラー: ビジネスロジックのための合成関数チェーン
  • バリデーター: 認証と認可チェック

🔧 利用可能な Identity ルート

getIdentityRoute

ID によって特定のアイデンティティを取得します。

目的: アクセスコントロールを使用してアイデンティティデータを取得する

ルート詳細:

  • メソッド: GET
  • パス: /identities/:identityId
  • 認証: 必須(Bearer トークン)

ハンドラー: getIdentityById, getIdentityTerminator

バリデーター: isAuthenticated, checkIdentityType(['admin'])

使用例:

import { routes } from '@nodeblocks/backend-sdk';

// Express アプリにルートを登録
app.use('/api', routes.getIdentityRoute);

findIdentitiesRoute

正規化されたリスト形式で全てのアイデンティティを取得します。

目的: ページネーションと管理者専用アクセスを使用してアイデンティティをリストする

ルート詳細:

  • メソッド: GET
  • パス: /identities
  • 認証: 必須(Bearer トークン)

ハンドラー: findIdentities, findIdentitiesTerminator

バリデーター: isAuthenticated, checkIdentityType(['admin'])

使用例:

import { routes } from '@nodeblocks/backend-sdk';

// Express アプリにルートを登録
app.use('/api', routes.findIdentitiesRoute);

updateIdentityRoute

既存のアイデンティティを更新し、更新されたリソースを返します。

目的: アクセスコントロールを使用してアイデンティティデータを変更する

ルート詳細:

  • メソッド: PATCH
  • パス: /identities/:identityId
  • 認証: 必須(Bearer トークン)

ハンドラー: updateIdentity, getIdentityById, getIdentityTerminator

バリデーター: isAuthenticated, checkIdentityType(['admin'])

使用例:

import { routes } from '@nodeblocks/backend-sdk';

// Express アプリにルートを登録
app.use('/api', routes.updateIdentityRoute);

deleteIdentityRoute

ID によってアイデンティティを削除します。

目的: アクセスコントロールを使用してアイデンティティを削除する

ルート詳細:

  • メソッド: DELETE
  • パス: /identities/:identityId
  • 認証: 必須(Bearer トークン)

ハンドラー: deleteIdentity, deleteIdentityTerminator

バリデーター: isAuthenticated, checkIdentityType(['admin'])

使用例:

import { routes } from '@nodeblocks/backend-sdk';

// Express アプリにルートを登録
app.use('/api', routes.deleteIdentityRoute);

🔗 関連ドキュメント