1.0.1 • Published 1 year ago

link-sso-js v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

link-js

link-js는 Next.js 애플리케이션에서 SSO 인증을 쉽게 구현하기 위한 패키지입니다. 이 패키지를 사용하면 통합 SSO 인증을 손쉽게 적용할 수 있습니다.

기능

  • SSO 인증 콜백 처리
  • 세션 유효성 검증 및 토큰 갱신

설치

pnpm install link-js

사용 방법

설정

환경 변수를 설정합니다. .env.local 파일에 다음과 같이 추가합니다:

SSO_LINK_URL=your_sso_provider_url
SSO_LINK_CLIENT_ID=your_client_id
SSO_LINK_SECRET=your_client_secret
SSO_LINK_REDIRECT_URI=your_redirect_uri
SUPABASE_URL=your_supabase_url
SUPABASE_ANON_KEY=your_supabase_anon_key
BASE_URL=your_base_url
COOKIE_PW=your_cookie_password
COOKIE_NAME=your_cookie_name

SSO 인증 콜백 처리

app/api/auth/callback.js 파일을 생성하고 다음과 같이 작성합니다:

import { handleAuthCallback } from "my-next-sso-auth";

export default async function POST(req) {
  try {
    // handleAuthCallback 함수를 호출하고 Next.js의 응답 객체를 전달합니다.
    const result = await handleAuthCallback(req, res);
    return result;
  } catch (error) {
    // 에러 처리
    return NextResponse.json({ error: error.message });
  }
}

세션 유효성 검증

app/api/auth/session/validate.js 파일을 생성하고 다음과 같이 작성합니다:

import { validateSession } from "my-next-sso-auth";

export default async function GET(req) {
  try {
    // validateSession 함수를 호출하고 Next.js의 응답 객체를 전달합니다.
    const result = await validateSession(req, res);
    return result;
  } catch (error) {
    // 에러 처리
    return NextResponse.json({ error: error.message });
  }
}

주의 사항

이 패키지는 Next.js의 서버리스 함수와 함께 사용하기 위해 설계되었습니다. 정확한 구현을 위해서는 Supabase 및 Iron Session과 같은 서비스의 설정이 필요합니다.

지원

문제가 발생하거나 기능 요청이 있는 경우, GitHub Issues를 통해 문의해주세요.

라이선스

이 프로젝트는 MIT 라이선스에 따라 배포됩니다.

1.0.1

1 year ago

1.0.0

1 year ago