개발 Q&A

제목 restful 을 이용한 api 서버 구축중인데, 조언 좀~
글쓴이 유마 작성시각 2013/05/10 15:43:49
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 19115   RSS

이 포럼에서도 검색 해보고, 구글에서도 검색 해보고, 네이버에서도 검색 해보고...

어느정도 정리가 되는 것 같습니다만,


uri 를 기준으로 post, put, get, delete 를 이용해서 작업을 하면 된다는 건데요..

ci 를 활용한 샘플 소스로 어느정도 감을 잡았습니다..


인증 부분을 어떻게 해야 할까 고민이 되네요.


제가 생각하는 방향은

api를 요청하기 전에 api를 사용할 권한이 있는 사용자인가를 검증 받고,

토큰을 받아서 그것을 물고 api를 요청해야 하지 않나 하는 건데요.

토큰이 없는 경우, 권한이 없다는 메세지를 뿌리면 되고..


이 부분은 어떻게 해야 할까 고민이네요..

그리고 restful 을 이용할 경우, request_method 말고 신경을 써야 하는 부분이나.. 등등

조언을 부탁드립니당.



그냥 제 생각대로 하면... 막장 소스가 될것 같은 불길함에 ㅋㅋㅋ -_-;



 다음글 폼문 질문 (5)
 이전글 select 링크에 대해서 질문 드립니다. 꾸~벅~ (12)

댓글

변종원(웅파) / 2013/05/10 16:31:19 / 추천 0
대부분의 api 인증방식이 토큰입니다.

초기에 아이디, 패스워드나 키로 토큰 만들어서 넘겨주고
그 이후의 모든 요청에 토큰을 같이 보내서 서버의 토큰과 비교처리.

양쪽에서 암복호화를 하는데 특정 키를 가지고 하는 방식도 있어요.

요청 받은걸 복호화 해서 정확한 키가 안나오면 잘못된 요청으로 처리.
(단점은 일단 복호화 해야 한다는 거지만 토큰 생성해서 계속 보내는 것보다는 나은것 같습니다.)
유마 / 2013/05/10 17:11:46 / 추천 0
살짝, oauth 방식을 차용해서...
api 사용자 등록시 cliend_id , API key 를 발급하고요.

api 요청 시 처음에 token 이 있냐 확인 하고 없으면 token 발급 하는 곳으로 cliend_id, API key를 던지고..
그거 비교해서 맞으면 accessToken, accessSecret , 시간, reToken 주고..

토큰 유효 기간 내에서는 토큰이랑 스크릿 키만 던지고 api를 사용하고..
유효기간이 지나면 reToken까지 던져서 재발급 받는 식으로 하면 어떨까 싶네요..

서버쪽에선 저 토큰들을.. 디비에 저장해놓고, 클라이언트 쪽에서는 세션이나 쿠키로 잡아놓으면 될거 같고요. 

그리고 Http Authentication 방식으로 인증 해야 하는 건가요?

restful 에서...
post, get 은 form 에서 던져도 되지만 그 이외 put, delete 는.. curl 방식으로 던져야 하는건가요?
뭐 파라미터에서 method 를 받는 방식도 있긴 하던데.. 그건 짝퉁 같고.


변종원(웅파) / 2013/05/10 17:41:10 / 추천 0
굳이 방식을 나눌 필요는 없습니다.

curl로 전송해도 받는건 post라 서버입장에서는 상관이 없습니다.

소켓이면 모를까요. ^^