変更履歴
2025-08-22
✨ 追加
ブロック
- Organization:
buildOrganizationsWithDescendantsQuery
: 組織自身のIDまたは祖先IDで組織を検索するMongoDBクエリを構築します
2025-08-21
✨ 追加
ユーティリティ
- Authentication:
decryptAndVerifyJWT
: 暗号化されたJWTを復号化および検証しますtokenPassesSecurityCheck
: トークンに対してフィンガープリント/IP/ユーザーエージェントを検証しますdefaultRefreshTokenBodyAuth
: リクエストボディからリフレッシュトークンを検証しますdefaultRefreshTokenCookieAuth
: Cookieからリフレッシュトークンを検証しますretrieveTokenVerification
: Expressリクエストから検証メタデータを構築しますvalidateAuthSecrets
: 認証シークレットの設定を検証しますgenerateMailBody
: URLと変数をメールテンプレートに補間しますauthSecretsValidationErrorMessage
: 無効なシークレットをメッセージにマッピングするヘルパーisAccessToken
: アクセストークン(ユーザーまたはアプリ)をチェックしますisUserAccessToken
: ユーザーアクセストークンをチェックしますisAppAccessToken
: アプリアクセストークンをチェックしますisRefreshToken
: リフレッシュトークンをチェックしますisOnetimeToken
: ワンタイムトークンをチェックしますisValidAppAccessToken
: アプリアクセストークンがappIdを持っているかをチェックしますisValidUserAccessToken
: ユーザーアクセストークンがidentityIdを持っているかをチェックします
2025-08-20
✨ 追加
バリデータ
- Authentication:
isAuthenticated
: Bearerトークンを使用してリクエストを認証します
- Identity:
isSelf
: 認証されたアイデンティティがターゲットアイデンティティと一致することを確認します
- Organization:
hasOrgRole
: 組織メンバーシップロールを検証します
- Chat:
hasSubscription
: チャンネルサブスクリプションを必須としますownsSubscription
: サブスクリプションの所有権を検証しますownsChannel
: チャンネルの所有権を検証しますownsMessage
: メッセージの所有権を検証します
- Order:
ownsOrder
: 注文の所有権を検証します
- User:
ownsProfile
: プロフィールの所有権を検証します
- Common:
checkIdentityType
: アイデンティティタイプによるアクセスをゲートしますownsResource
: 汎用所有権バリデータsome
: ORセマンティクスでバリデータを構成します- レガシーパラメータバリデータ(文書化済み):
requireParam
,isUUID
,isNumber
- Category:
2025-08-14
🔄 変更
ルート
sendVerificationEmailRoute
: パスが/auth/:identityId/send-verification-email
に変更されました(以前は:userId
)
機能
emailVerificationFeature
:/auth/:identityId/send-verification-email
エンドポイントを使用しますlockUserFeatures
: APIエンドポイントが/identities/:identityId/lock
を使用しますunlockUserFeatures
: APIエンドポイントが/identities/:identityId/unlock
を使用します
2025-08-13
✨ 追加
ブロック
- User:
getUserById
: 存在検証付きでIDでユーザーを取得しますnormalizeUser
: ユーザーオブジェクトからMongoDB_id
フィールドを削除しますnormalizeUsers
: ユーザー配列からMongoDB_id
フィールドを削除します
- Avatar:
normalizeAvatarOfOwner
: objectIdから署名付きダウンロードURLを生成しobjectIdを削除しますnormalizeAvatarsOfOwners
: 複数のユーザーのアバターデータを正規化しますdeleteAvatarIfReplaced
: objectIdが変更されたときに以前のアバターファイルを削除します
🔄 変更
ハンドラー(非推奨)
- Authentication:
- 文書内の置換に関する注意付きで非推奨としてマークされました:
loginWithCredentials
,createAccessToken
,createRefreshToken
,setResponseCookie
,refreshToken
,logout
,checkToken
,loginWithOnetimeToken
,generateOnetimeToken
,registerCredentials
,confirmEmail
,loginTerminator
,logoutTerminator
,registerTerminator
,sendVerificationEmailTerminator
,sendVerificationEmail
- 置換: Authentication Blocksを使用
- 文書内の置換に関する注意付きで非推奨としてマークされました:
- User:
- 文書内の置換に関する注意付きで非推奨としてマークされました:
createUser
,getUserById
,findUsers
,updateUser
,deleteUser
,lockUser
,unlockUser
,normalizeUserTerminator
,normalizeUsersListTerminator
,deleteUserTerminator
,lockUserTerminator
,unlockUserTerminator
- 置換: User Blocksを使用
- 文書内の置換に関する注意付きで非推奨としてマークされました:
バリデータ(非推奨)
- Authentication:
verifyAuthentication
— 置換:isAuthenticated
- User:
validateUserProfileAccess
— 置換:ownsProfile
- Organization:
validateOrganizationAccess
— 置換:hasOrgRole
- Order:
validateOrderAccess
— 置換:ownsOrder
- Chat:
validateChannelAccess
— 置換:ownsChannel
validateMessageAccess
— 置換:ownsMessage
- Common:
validateResourceAccess
— 置換:isSelf
,checkIdentityType
認証ドキュメント
sendVerificationEmailRoute
: パスが/auth/:identityId/send-verification-email
に修正されましたemailVerificationFeature
::identityId
を使用するルートとAPIエンドポイントが更新されましたAuthentication Blocks Index
::identityId
を使用するように要約が更新されました
サービス
Authentication Service
:- トークンチェックレスポンスフィールドが
userId
からidentityId
に修正されました
- トークンチェックレスポンスフィールドが
2025-08-12
✨ 追加
スキーマ
- OAuth:
fpQueryParameter
: リクエスト相関のためのフィンガープリントクエリパラメータpurposeQueryParameter
: フロー目的(oauth-login
|oauth-signup
)redirectUrlQueryParameter
: クライアントリダイレクト先typeIdQueryParameter
: オプションのアイデンティティタイプ識別子stateQueryParameter
: コールバック検証のためのOAuthステートgoogleOauthSchema
: 開始スキーマ(空のJSON本体)
ブロック
- OAuth:
requestGoogleOAuth
: Google OAuthを開始し署名付きステートを生成しますauthenticateGoogleOAuth
: プロバイダコールバックを処理しプロフィールを抽出しますextractOAuthLoginState
:state
トークンをデコードおよび検証しますverifyGoogleOAuth
: Googleプロフィールからアイデンティティを解決/作成しますgenerateRedirectURL
: トークン付きのリダイレクトURLを構築します
- Common:
redirectTo
: HTTPリダイレクトを発行しますgenerateRandomPassword
: 安全なランダムパスワードを生成します
- Organization:
generateSignedLogoUploadUrl
: 組織ロゴ用の事前署名付きアップロードURLを作成します
ルート
- OAuth:
googleOAuthRoute
: GET/auth/oauth/google
googleOAuthCallbackRoute
: GET/auth/oauth/google/callback
- Organization:
getLogoUploadUrlRoute
: GET/organizations/:organizationId/logo-upload-url
機能
- OAuth:
googleOAuthFeature
: 構成された開始ワークフローgoogleOAuthCallbackFeature
: 構成されたコールバック/リダイレクトワークフロー
- Organization:
getLogoUploadUrlFeature
: 組織ロゴアップロードURL生成のための構成されたワークフロー
ドライバー
- OAuth:
verifyGoogleCallback
: Google用のPassport検証コールバックcreateGoogleOAuthDriver
: Passportストラテジとヘルパーを設定します
🔄 変更
サービス
Authentication Service
: クイックスタートでSDKドライバーと正しいストア/引数を使用@nodeblocks/backend-sdk
からdrivers
をインポートgetMongoClient('mongodb://localhost:27017', 'dev')
を使用- 第3引数を
{ mailService, googleOAuthDriver }
として提供 - データストアキーが
identities
,onetimetokens
,invitations
に修正されました - エンドポイント要約: OAuthエンドポイントが追加されました — GET
/auth/oauth/google
, GET/auth/oauth/google/callback
2025-08-08
✨ 追加
ブロック
getAvatarUploadUrlRoute
: GET/user-profiles/:profileId/avatar-upload-url
安全なアバターアップロードURL生成用getAvatarUploadUrlFeature
: スキーマ検証付きのアバターアップロードURL生成のための構成されたワークフロー
2025-08-07
✨ 追加
ブロック
extractTokenFromAuthorizationHeader
: AuthorizationヘッダーからBearerトークンを抽出しますsoftDeleteRefreshTokens
: アイデンティティのすべてのリフレッシュトークンをソフト削除します
スキーマ
completePasswordResetSchema
: リセット完了用の新しいパスワードを検証します
ルート
deactivateRoute
: POST/auth/deactivate
アカウントを無効化しトークンを無効化しますcompletePasswordResetRoute
: POST/auth/reset-password
パスワードリセットを最終化します
機能
deactivateFeature
: アカウントを無効化するための構成されたワークフローcompletePasswordResetFeature
: パスワードリセットを最終化するための構成されたワークフロー
⚠️ 非推奨
requireParam
,isUUID
,isNumber
バリデータがレガシーインターフェースを使用し非推奨になりました。- 標準バリデータまたは通常のペイロード署名を使用するカスタムバリデータを推奨します。
- 詳細:
requireParam
,isUUID
,isNumber
を参照してください。
🧩 バージョン管理
- バックエンドドキュメントリリースのためにSDKバージョン管理が導入されました。
- ドキュメントバージョンセレクタの隣のナビゲーションバーの右側からNodeBlocks Backend SDKバージョンを選択できるようになりました。
2025-08-06
✨ 追加
ブロック
hash
: bcryptを使用して文字列(パスワード)をハッシュ化しますnormalizeIdentityWithoutPassword
: アイデンティティオブジェクトからpassword
と_id
を削除しますsendEmail
: オプションのワンタイムトークン付きでメールを送信しますupdateIdentity
: データストア内のアイデンティティフィールドを更新しますbuildUpdateIdentityActivatedPayload
: 非アクティブ化をクリアしアイデンティティをロック解除するためのアクティベーションペイロードを構築しますisEmailVerified
: メールが検証されていることを確認するか禁止を返しますcheckOneTimeToken
: ワンタイムトークンを検証および復号化しますcheckToken
: セキュリティチェック付きでアクセス/ワンタイムトークンを検証します
スキーマ
changePasswordSchema
: 現在のパスワードと新しいパスワードを検証しますactivateSchema
: アクティベーションリクエストを検証します
ルート
changePasswordRoute
: PATCH/auth/:identityId/change-password
パスワードを変更しますactivateRoute
: POST/auth/activate
アカウントをアクティブ化します
機能
changePasswordFeature
: パスワード変更のための構成されたワークフロー
コンビネータ
applyPayloadArgs
: ペイロードデータをブロックパラメータにマッピングしますorThrow
: マッピングされたエラーをスローするか値を通過させます
2025-07-29
✨ 追加
- データベースドライバー: データベース接続と設定の包括的なドキュメント
- 接続例付きのMongoDBドライバードキュメント
- カスタムデータベースドライバーのインターフェース要件
- メールサービスドライバー: メールサービス設定の完全なドキュメント
- APIキー設定付きのSendGridドライバードキュメント
- HTML/テキストコンテンツ要件付きのメールデータインターフェース
- ステータスベースの成功処理付きのメールサービスインターフェース
- ファイルストレージドライバー: クラウドストレージ操作の詳細なドキュメント
- 署名付きURL生成付きのGoogle Cloud Storageドライバー
- ファイルアップロード、ダウンロード、削除URLの例
- 署名付きURLテストのためのcURL例
- コンテンツタイプ検証とファイルサイズ制限
- ドライバーアーキテクチャ: components下の新しいdriversサブディレクトリ
docs/v2/backend/components/drivers/
での整理されたドライバードキュメント- データベース、メールサービス、ファイルストレージドライバーの個別ドキュメント
- すべてのドライバータイプ間の統一されたインターフェースパターン
- Identity Service Documentation: ライブテスト検証付きの完全なAPIドキュメント
- アイデンティティ管理のための完全なCRUD操作(GET, PATCH, DELETE)
- cURLテストを通じて検証された実際のAPIレスポンス例
- 適切な認証ドキュメント付きの管理者専用アクセス要件
- 実際のレスポンス形式ドキュメント付きのスキーマベースのリクエスト検証
- HTTPステータスコード(401, 403, 404, 500)付きのエラーハンドリング
- NodeBlocksデータベースドライバーを使用した統合例
2025-07-28
✨ 追加
- 組織ブロック: 組織管理のための純粋なビジネスロジック関数
- ペイロードデータをブロックパラメータにマッピングするための
applyPayloadArgs
ユーティリティ - ファイルストレージブロック: 安全なファイル管理のための純粋なビジネスロジック関数
- 安全なアップロードURLを作成するための
generateSignedUploadUrl
ブロック - 安全なダウンロードURLを作成するための
generateSignedDownloadUrl
ブロック - 安全な削除URLを作成するための
generateSignedDeleteUrl
ブロック - UUID生成付きのアバターアップロードのための
generateSignedAvatarUploadUrl
ブロック - 画像アップロード検証のためのファイルストレージスキーマ
- 認証ブロック: 安全な認証のための純粋なビジネスロジック関数
- ユーザー検証とメール操作のためのアイデンティティ管理ブロック
- 安全なトークンライフサイクル管理のためのトークン管理ブロック
- 検証と通信のためのメール認証ブロック
- フィンガープリント追跡とリクエスト検証のためのセキュリティ検証ブロック
- 強化された機能のための新しい認証スキーマ:
changeEmailSchema
メール変更検証用checkTokenSchema
ターゲットコンテキスト付きのトークン検証用confirmNewEmailSchema
新しいメール確認検証用sendResetPasswordLinkEmailSchema
パスワードリセットメール検証用
- 完全なワークフローのための新しい認証機能:
changeEmailFeature
メール変更開始用checkTokenFeature
ターゲットコンテキスト付きのトークン検証用confirmNewEmailFeature
新しいメール確認用sendResetPasswordLinkEmailFeature
パスワードリセットメール生成用
- ブロックを使用した新しい認証ルート:
changeEmailRoute
メール変更開始用checkTokenRoute
トークン検証用confirmNewEmailRoute
新しいメール確認用sendResetPasswordLinkEmailRoute
パスワードリセットメール送信用
🔄 変更
-
組織ハンドラーをブロックに移行:
createOrganization
→createOrganization
blockgetOrganizationById
→getOrganizationById
blockfindOrganizations
→findOrganizations
blockupdateOrganization
→updateOrganization
blockdeleteOrganization
→deleteOrganization
blockgetOrganizationUserRole
→getOrganizationMemberRole
blockcheckOrganizationUserExistence
→checkOrganizationMemberExistence
blockfindOrganizationUsers
→findOrganizationMembers
blockupsertOrganizationUsers
→upsertOrganizationMembers
blockdeleteOrganizationUser
→deleteOrganizationMember
blockfindOrganizationsForUser
→findOrganizationsForIdentity
block
-
組織スキーマ名と用語を更新:
organizationUsersSchema
→organizationMembersSchema
upsertOrganizationUsersSchema
→upsertOrganizationMembersSchema
getOrganizationUserRoleSchema
→getOrganizationMemberRoleSchema
checkOrganizationUserExistenceSchema
→checkOrganizationMemberExistenceSchema
findOrganizationUsersSchema
→findOrganizationMembersSchema
deleteOrganizationUserSchema
→deleteOrganizationMemberSchema
findOrganizationsForUserSchema
→findOrganizationsForIdentitySchema
- パラメータ名更新:
userId
→identityId
- メンバースキーマ構造:
id
→identityId
🐞 破壊的変更
- 組織ハンドラーが削除されました - 直接インポートできなくなりました
- カスタムルートで以前のハンドラーロジックを使用するには、
applyPayloadArgs
を使用してブロックを構成します