독립 인증서버 사용경험.

요즘 프로젝트를 하면서 인증서버를 완전 다른 서버로 독립시켜 oauth를 지원하게 만드는것을 저는 선호합니다. 그러다 보니 궁금한게 생겼습니다.

의견이 있으시면 이메일 주세요 teamsmiley@gmail.com

인증서버에서 롤관리

인증서버에서 보통 롤을 관리할수 있습니다. 롤은 인증서버에서 관리하면 편한듯 보입니다.

여전히 인증서버에 롤이 잇는경우 어플리케이션단에서 관리하기가 상당히 불편합니다. 인증서버용 web을 만들어서 어드민(특정 유저)가 들어가서 관리하게 해야할듯 보입니다.

프로파일은 어플리케이션단에서

인증서버에서도 보통 프로파일을 관리할수 있는 기능은 있으나 아무래도 인증서버에 두면 문제가 많이 발생합니다. api단으로 프로파일을 이동해서 두는게 많은 부분에서 편햇습니다.

퍼미션 (policy)

퍼미션이나 policy관련도 모두 application단으로 내려야 관리도 쉽고 더 좋은 구조로 되는거같습니다.

인증서버에 있는 모든 기능을 다 안써도 된다.

최소한으로 사용하고 나머지는 모두 어플리케이션단에서 처리하는게 좋아보입니다. 잇는기능을 다 쓰려고하니 개발시 인증서버와 통신을 해야하는 경우가 생겨서 많이 불편했습니다.

jwt access token내용이 필요할때

인증서버에서 jwt토큰을 www로 리턴을 하는데 이 내용에 role이 포함됩니다. 이런건 로그인하자마다 api(어플리케이션단)을 호출해서 프로파일과 퍼미션등 기본 인증관련 추가내용을 받아옵니다.

이걸 받아올때 api로 보낸 jwt token을 디코딩하여 claim을 다 볼수가 있습니다. 이 클레임을 다시 www로 리턴을 해줍니다. 그럼 클레임 내용을 www에서 사용할수 있습니다. 이렇게 하는게 좋아보이더라구요..

전체구조

teamsmiley's profile image

teamsmiley

2021-03-02 00:00

Read more posts by this author