NextAuth から Lucia Auth への移行

なぜ Lucia Auth へ移行するのか

NextAuth は、認証のためのライブラリとしては非常に優れています。しかし、Lucia Auth は、より薄く、より柔軟で、よりシンプルな認証のためのライブラリです。

Next.js 以外にも、Sveltekit、Astro などをサポートしています。また、日本人の高校生が開発したということもあり、積極的に使っていきたいモチベーションがあります。

Lucia Auth への移行手順

恐らくベストプラクティスは確立されていないので、以下の手順はあくまで一例です。

1. Lucia Auth のインストール

npm install lucia-auth

2. 認証の実装

import { LuciaAuth } from "lucia-auth";

const auth = new LuciaAuth({
  clientId: process.env.LUCIA_AUTH_CLIENT_ID,
  clientSecret: process.env.LUCIA_AUTH_CLIENT_SECRET,
  redirectUri: process.env.LUCIA_AUTH_REDIRECT_URI,
  scope: "openid profile email",
  audience: process.env.LUCIA_AUTH_AUDIENCE,
  issuer: process.env.LUCIA_AUTH_ISSUER,
  postLogoutRedirectUri: process.env.LUCIA_AUTH_POST_LOGOUT_REDIRECT_URI,
  session: {
    cookieSecret: process.env.LUCIA_AUTH_SESSION_COOKIE_SECRET,
    cookieLifetime: 60 * 60 * 24 * 7, // 1 week
  },
});

コントリビューター