42 lines
1.0 KiB
JavaScript
42 lines
1.0 KiB
JavaScript
const jwt = require("jsonwebtoken");
|
|
const fs = require("fs");
|
|
|
|
// JWT 설정
|
|
const JWT_SECRET = "your-super-secret-jwt-key-change-in-production";
|
|
const JWT_EXPIRES_IN = "24h";
|
|
|
|
// 테스트용 사용자 정보
|
|
const testUserInfo = {
|
|
userId: "arvin",
|
|
userName: "ARVIN",
|
|
deptName: "생산기술부",
|
|
companyCode: "ILSHIN",
|
|
};
|
|
|
|
console.log("=== JWT 토큰 생성 ===");
|
|
console.log("사용자 정보:", testUserInfo);
|
|
|
|
// JWT 토큰 생성
|
|
const token = jwt.sign(testUserInfo, JWT_SECRET, {
|
|
expiresIn: JWT_EXPIRES_IN,
|
|
issuer: "PMS-System",
|
|
audience: "PMS-Users",
|
|
});
|
|
|
|
console.log("\n생성된 토큰:");
|
|
console.log(token);
|
|
|
|
// 토큰을 파일로 저장
|
|
fs.writeFileSync("test-token.txt", token);
|
|
console.log("\n토큰이 test-token.txt 파일에 저장되었습니다.");
|
|
|
|
// 토큰 검증 테스트
|
|
try {
|
|
const decoded = jwt.verify(token, JWT_SECRET);
|
|
console.log("\n토큰 검증 성공:");
|
|
console.log(decoded);
|
|
} catch (error) {
|
|
console.log("\n토큰 검증 실패:");
|
|
console.log(error.message);
|
|
}
|