UNPKG

@gftdcojp/auth

Version:

✅ Enterprise-grade Auth0 integration for GFTD platform - 90% Complete, High Quality Implementation

63 lines 2 kB
/** * セッション管理ユーティリティ * * 機能: * - セッションの暗号化/復号化 * - セッション有効期限チェック * - セッション更新 * - セキュアなCookie設定 */ import { NextRequest, NextResponse } from 'next/server'; import { Session, NextJsAuth0Config } from '../nextjs-auth0'; /** * セッション管理クラス */ export declare class SessionManager { private config; private secretKey; constructor(config: NextJsAuth0Config); /** * セッションを暗号化してトークンにする */ encryptSession(session: Session): Promise<string>; /** * 暗号化されたトークンからセッションを復号化する */ decryptSession(encryptedToken: string): Promise<Session | null>; /** * リクエストからセッションを取得 */ getSessionFromRequest(request: NextRequest): Promise<Session | null>; /** * レスポンスにセッションを設定 */ setSessionInResponse(response: NextResponse, session: Session | null): Promise<void>; /** * セッション更新(ローリングセッション対応) */ updateSession(session: Session): Promise<Session>; /** * セッションが有効かチェック */ isSessionValid(session: Session | null): boolean; /** * 🆕 組織コンテキストでのセッション検証 */ validateOrganizationContext(session: Session | null, organizationId?: string): boolean; /** * セッションからアクセストークンを取得(リフレッシュも含む) */ getAccessToken(session: Session): Promise<{ accessToken: string; session: Session; } | null>; /** * アクセストークンをリフレッシュ */ private refreshAccessToken; /** * JWTトークンから有効期限を抽出 */ private extractTokenExpiry; } //# sourceMappingURL=session-manager.d.ts.map