JWT
推奨されません NextAuth.js v5以降では、サーバーサイドの他の認証方法を推奨します。詳細はこちら:https://authjs.dokyumento.jp/getting-started/migrating-to-v5#authenticating-server-side
DefaultJWT
継承
Record
<string
,unknown
>
プロパティ
email?
optional email: null | string;
exp?
optional exp: number;
iat?
optional iat: number;
jti?
optional jti: string;
name?
optional name: null | string;
picture?
optional picture: null | string;
sub?
optional sub: string;
GetTokenParams<R>
継承
GetTokenParamsBase
型パラメーター
型パラメーター | 値 |
---|---|
R extends boolean | false |
プロパティ
cookieName?
optional cookieName: string;
JWTがCookieにある場合、getToken()
が検索する名前。
decode()?
optional decode: (params) => Awaitable<null | JWT>;
パラメーター
パラメーター | 型 |
---|---|
params | JWTDecodeParams |
戻り値
logger?
optional logger: LoggerInstance | Console;
raw?
optional raw: R;
getToken()
がこの値がtrue
に設定されている場合、生のJWTを返します。
デフォルト
false
req
req: Request | {
headers: Headers | Record<string, string>;
};
CookieまたはAuthorization
ヘッダーにJWTを含むリクエスト。
salt?
optional salt: string;
継承元
GetTokenParamsBase.salt
secret?
optional secret: string | string[];
継承元
GetTokenParamsBase.secret
secureCookie?
optional secureCookie: boolean;
NEXTAUTH_URL
のURLがhttp://である場合、または設定されていない場合(開発またはテストインスタンスなど)は、プレフィックスなしの名前を使用します。
JWT
JWTセッションを使用する場合、jwt
コールバックによって返されます。
継承
Record
<string
,unknown
>.DefaultJWT
プロパティ
email?
optional email: null | string;
継承元
exp?
optional exp: number;
継承元
iat?
optional iat: number;
継承元
jti?
optional jti: string;
継承元
name?
optional name: null | string;
継承元
picture?
optional picture: null | string;
継承元
sub?
optional sub: string;
継承元
JWTDecodeParams
プロパティ
salt
salt: string;
JWTの暗号化秘密鍵を導出するためにsecret
と組み合わせて使用されます。
secret
secret: string | string[];
JWTの暗号化秘密鍵を導出するためにsalt
と組み合わせて使用されます。
注記
秘密鍵の配列を渡すこともできます。その場合、JWTを正常に復号化できる最初の秘密鍵が使用されます。これは、既存のセッションを無効にすることなく秘密鍵をローテーションする場合に便利です。新しい秘密鍵は配列の先頭に追加する必要があります。これにより、すべての新しいセッションで使用されます。
token?
optional token: string;
復号化するAuth.js発行のJWT。
JWTEncodeParams<Payload>
型パラメータ
型パラメーター | 値 |
---|---|
Payload | JWT |
プロパティ
maxAge?
optional maxAge: number;
Auth.js発行のJWTの最大有効期間(秒単位)。
デフォルト
30 * 24 * 60 * 60 // 30 days
salt
salt: string;
JWTの暗号化秘密鍵を導出するためにsecret
と組み合わせて使用されます。
secret
secret: string | string[];
JWTの暗号化秘密鍵を導出するためにsalt
と組み合わせて使用されます。
token?
optional token: Payload;
JWTペイロード。
JWTOptions
プロパティ
decode()
decode: (params) => Awaitable<null | JWT>;
Auth.js発行のJWTの復号化を制御するためにこのメソッドをオーバーライドします。
パラメータ
パラメーター | 型 |
---|---|
params | JWTDecodeParams |
戻り値
encode()
encode: (params) => Awaitable<string>;
Auth.js発行のJWTのエンコードを制御するためにこのメソッドをオーバーライドします。
パラメータ
パラメーター | 型 |
---|---|
params | JWTEncodeParams <JWT > |
戻り値
Awaitable
<string
>
maxAge
maxAge: number;
Auth.js発行のJWTの最大有効期間(秒単位)。
デフォルト
30 * 24 * 60 * 60 // 30 days
decode()
decode<Payload>(params): Promise<Payload | null>
Auth.js発行のJWTを復号化します。
型パラメータ
型パラメーター | 値 |
---|---|
Payload | JWT |
パラメータ
パラメーター | 型 |
---|---|
params | JWTDecodeParams |
戻り値
Promise
<Payload
| null
>
encode()
encode<Payload>(params): Promise<string>
JWTを発行します。デフォルトでは、JWTは「A256CBC-HS512」を使用して暗号化されます。
型パラメータ
型パラメーター | 値 |
---|---|
Payload | JWT |
パラメータ
パラメーター | 型 |
---|---|
params | JWTEncodeParams <Payload > |
戻り値
Promise
<string
>
getToken()
getToken<R>(params): Promise<R extends true ? string : JWT | null>
Auth.jsリクエスト(req
)を受け取り、Auth.js発行のJWTのペイロードまたは生のJWT文字列を返します。JWTは、CookieまたはAuthorization
ヘッダーのいずれかで検索されます。
型パラメータ
型パラメーター | 値 |
---|---|
R extends boolean | false |
パラメータ
パラメーター | 型 |
---|---|
params | GetTokenParams <R > |