권한 반영영
This commit is contained in:
parent
bd3848d5ff
commit
5bc53e795d
|
|
@ -9,8 +9,8 @@ const {
|
||||||
} = require('../database/queries');
|
} = require('../database/queries');
|
||||||
const { verifyApiKey, optionalAuth, requirePermission } = require('../middleware/auth');
|
const { verifyApiKey, optionalAuth, requirePermission } = require('../middleware/auth');
|
||||||
|
|
||||||
// 모든 데이터 조회 (API 키 또는 JWT 토큰 필요)
|
// 모든 데이터 조회 (API 키 + 읽기 권한 필요)
|
||||||
router.get('/data', verifyApiKey, async (req, res) => {
|
router.get('/data', verifyApiKey, requirePermission('read'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const data = await getAllData();
|
const data = await getAllData();
|
||||||
res.json({
|
res.json({
|
||||||
|
|
@ -27,8 +27,8 @@ router.get('/data', verifyApiKey, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 특정 ID 데이터 조회 (API 키 또는 JWT 토큰 필요)
|
// 특정 ID 데이터 조회 (API 키 + 읽기 권한 필요)
|
||||||
router.get('/data/:id', verifyApiKey, async (req, res) => {
|
router.get('/data/:id', verifyApiKey, requirePermission('read'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { id } = req.params;
|
const { id } = req.params;
|
||||||
const data = await getDataById(id);
|
const data = await getDataById(id);
|
||||||
|
|
@ -54,8 +54,8 @@ router.get('/data/:id', verifyApiKey, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 데이터 생성 (API 키 또는 JWT 토큰 필요)
|
// 데이터 생성 (API 키 + 쓰기 권한 필요)
|
||||||
router.post('/data', verifyApiKey, async (req, res) => {
|
router.post('/data', verifyApiKey, requirePermission('write'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { name, description, dataValue } = req.body;
|
const { name, description, dataValue } = req.body;
|
||||||
|
|
||||||
|
|
@ -86,8 +86,8 @@ router.post('/data', verifyApiKey, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 데이터 업데이트 (API 키 또는 JWT 토큰 필요)
|
// 데이터 업데이트 (API 키 + 쓰기 권한 필요)
|
||||||
router.put('/data/:id', verifyApiKey, async (req, res) => {
|
router.put('/data/:id', verifyApiKey, requirePermission('write'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { id } = req.params;
|
const { id } = req.params;
|
||||||
const { name, description, dataValue } = req.body;
|
const { name, description, dataValue } = req.body;
|
||||||
|
|
@ -126,8 +126,8 @@ router.put('/data/:id', verifyApiKey, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 데이터 삭제 (API 키 또는 JWT 토큰 필요)
|
// 데이터 삭제 (API 키 + 삭제 권한 필요)
|
||||||
router.delete('/data/:id', verifyApiKey, async (req, res) => {
|
router.delete('/data/:id', verifyApiKey, requirePermission('delete'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { id } = req.params;
|
const { id } = req.params;
|
||||||
const result = await deleteData(id);
|
const result = await deleteData(id);
|
||||||
|
|
|
||||||
|
|
@ -7,10 +7,10 @@ const {
|
||||||
updateUser,
|
updateUser,
|
||||||
deleteUser
|
deleteUser
|
||||||
} = require('../database/user-queries');
|
} = require('../database/user-queries');
|
||||||
const { optionalAuth } = require('../middleware/auth');
|
const { verifyApiKey, optionalAuth, requirePermission } = require('../middleware/auth');
|
||||||
|
|
||||||
// 모든 사용자 조회
|
// 모든 사용자 조회 (API 키 + 읽기 권한 필요)
|
||||||
router.get('/', optionalAuth, async (req, res) => {
|
router.get('/', verifyApiKey, requirePermission('read'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const users = await getAllUsers();
|
const users = await getAllUsers();
|
||||||
res.json({
|
res.json({
|
||||||
|
|
@ -27,8 +27,8 @@ router.get('/', optionalAuth, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 특정 사용자 조회
|
// 특정 사용자 조회 (API 키 + 읽기 권한 필요)
|
||||||
router.get('/:userId', optionalAuth, async (req, res) => {
|
router.get('/:userId', verifyApiKey, requirePermission('read'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { userId } = req.params;
|
const { userId } = req.params;
|
||||||
const user = await getUserById(userId);
|
const user = await getUserById(userId);
|
||||||
|
|
@ -54,8 +54,8 @@ router.get('/:userId', optionalAuth, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 사용자 생성
|
// 사용자 생성 (API 키 + 쓰기 권한 필요)
|
||||||
router.post('/', optionalAuth, async (req, res) => {
|
router.post('/', verifyApiKey, requirePermission('write'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { USER_ID, USER_NAME, DEPT_CODE } = req.body;
|
const { USER_ID, USER_NAME, DEPT_CODE } = req.body;
|
||||||
|
|
||||||
|
|
@ -96,7 +96,8 @@ router.post('/', optionalAuth, async (req, res) => {
|
||||||
});
|
});
|
||||||
|
|
||||||
// 사용자 정보 수정
|
// 사용자 정보 수정
|
||||||
router.put('/:userId', optionalAuth, async (req, res) => {
|
// 사용자 정보 업데이트 (API 키 + 쓰기 권한 필요)
|
||||||
|
router.put('/:userId', verifyApiKey, requirePermission('write'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { userId } = req.params;
|
const { userId } = req.params;
|
||||||
const { USER_NAME, DEPT_CODE } = req.body;
|
const { USER_NAME, DEPT_CODE } = req.body;
|
||||||
|
|
@ -134,8 +135,8 @@ router.put('/:userId', optionalAuth, async (req, res) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 사용자 삭제
|
// 사용자 삭제 (API 키 + 삭제 권한 필요)
|
||||||
router.delete('/:userId', optionalAuth, async (req, res) => {
|
router.delete('/:userId', verifyApiKey, requirePermission('delete'), async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { userId } = req.params;
|
const { userId } = req.params;
|
||||||
const result = await deleteUser(userId);
|
const result = await deleteUser(userId);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue