1.0.1 • Published 1 year ago
link-sso-js v1.0.1
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 라이선스에 따라 배포됩니다.