[ Architecture, Technology ,Web ] SSO(Single Sign On) 그리고 SAML에 대해

이미지
이번 프로젝트 내부에서 어쩌다보니  유저 인증 관련 업무를 담당하게 되었고, 해야하는 업무는 내부에 사용했던 적이 없던  새로운 개발 플랫폼에서  SSO의 프로토콜 중  SAML을 이용해 앱의 인증을 구현해야만 했다. SSO를 생각해본적 조차 없는 상황에 이를 새로운 개발 플랫폼에 도입해야 했기 때문에 많은 시행착오를 겪었으나 구현에 성공하였으며 덕분에 SSO에 대한 전반적인 지식을 쌓을 수 있었다. 이번에는 그러한 과정에서 나온 지식들과 경험을  공유하고자 한다. SSO에 대한 정의 먼저 사전적 정의 부터 살펴보자. 다만, 기술적인 용어다보니 자주 사용하는 옥스포드 사전에 정의를 찾을 수 없기 때문에  검색으로 찾을 수 있는 정의를 몇 가지 살펴보고 교차 검증을 해보자. 첫 번째 정의를 살펴보자. Single sign-on (SSO) is an identification method that enables users to log in to multiple applications and websites with one set of credentials.  SSO는 웹사이트에서 한 번의 인증(one set of credentials)으로 복수의 어플리케이션에 로그인 할 수 있는 인증(identification) 방법(method) 이다. 두 번째는 위키피디아의 정의이다. Single sign-on (SSO) is an authentication scheme that allows a user to log in with a single ID to any of several related, yet independent, software systems. SSO는 독립적이지만 연관되어있는 몇몇 소프트웨어에 대해 하나의 ID로 로그인을 할 수 있도록 하는 인증 구조(scheme) 세부 설명에 조금 차이가 있어 보이지만 전체적인 틀은 매우 비슷해 보인다.  몇 가지 포인트가 되는 단어를 추출해 이를 연결해보자면 아래와 같은 의미를 산출 할 수 있다. 독립적이지만 연관되어 있

[ 생각 ] 모르면 가만히 있는게 정말 좋을까?



나의 모국인 한국에는 이런 격언이 있다.
"가만히 있으면 반이라도 간다."라는 격언이다.

지금 생각해도 한국 사회의 모습을 
관통하는 정말 멋진 격언이라고 생각 한다.

이런 격언에 저주에 의해서 인지는 모르겠지만
한국 사회 전반에는 이런 의식이 자연스럽게 자리잡게 되었다.

이런 느낌을 가장 잘 느낄 수 있는 것은
한국의 초, 중, 고등학교 
심지어 대학교의 수업에 들어가보면 
누구나 잘 느낄 수 있다.

또한 한국 사회에 나가면 
이와 비슷하게 흔히 들을 수 있는 것은
"모르면 가만히나 있지"이다.

여기에 주변 사람들의 
강력한 눈초리와 비웃음 까지 더 하면
"가만히 있으면 반이라도 간다"는 격언이 
완벽하게 진리 처럼 들려온다.

미래를 이끌어가야하는 
어린 세대 그리고 젊은 세대는 말할 것도 없고 
그 상위 사회를 구성하고 있는 기성 세대 또한
가만히 있는 문화에 그리고 이러한 인식이 자리 잡고 있다. 

그리고 나는 그런 한국 사회안에서 자라왔었고,
학생 시절을 보냈다.

내가 한국에서 살면서 
의문점과 궁금했던 것이 굉장히 많았었는데
그 중 하나가 이런 말에 대한 것이 였다.

초,중,고,대학교를 거치면서
굉장히 의문이 들었던 것은 '질문' 하는 행위에 대한 것이다.

이성적으로 생각하면 학생이 
질문 하는 행위는 너무나도 당연한 것이다.

한국 사회에서는 그렇지 않다.

질문을 하는 행위는 민폐를 줄 수 있는 행위이다.

왜냐하면 수업 중에 질문한다는 행위는 
수업의 흐름을 끊는 행위이기 때문이다.

그 말은 앞에서 수업을 하는 
선생 또는 교수가 말하는 도중 
말을 끊는 행위는 예의 상 실례가 될 수 있으며
같이 수업을 듣는 사람들에게 또한 큰 민폐라고 생각하기 때문이다.

그런데 재미있는 것은
인터넷에서 이런 관련 이야기가 나오면 
'질문하는 행위가 무슨 문제냐'는 이야기가 꽤 많다는 것이다.

이는 전부는 아닐지라도 
이상하게 느끼고 있는 사람들이 꽤 있다는 것이다.

물론 위와 같이
반대론을 이야기하는 사람도 꽤 많으며,

그럴때마다 나오는 말은
'수업이 끝나면 질문하면 되는거 아닌가'하는 이야기다.

하지만 굳이 수업이 끝나야 
질문해야하는 정말 특별한 이유는 없으며

애초에 책을 펴고 읽어주는 
그런 수업에 도대체 무슨 의미가 있단 말인가?

만약 그 이유가 단순히 
수업을 진행하는 사람이 윗 사람이고
수업이 듣는 사람이 아랫 사람이라는 것 이라면
이는 매우 잘못된 인식이다.

학문에서는 윗 사람과 아랫 사람이 존재하지 않는다.

학생이라도 교수보다 뛰어난 직감을 
가진 사람은 충분히 존재 한다.

단순한 지식을 보는 것은 책으로도 충분히 가능하다.

인터넷에 의해 지식이 공유되어지고 
심지어 기업들이 꽁꽁 싸고 감추려했던 것들 까지 공유하면서
단순한 지식의 가치는 점점 떨어져가고만 있는 것이 현실 속에서 

초,중,고는 그렇다 쳐도 
대학에서 그런 수업이 무슨 의미가 있다는 말인가?

수업의 진정한 가치는 수업을 하는 사람과 
수업을 듣는 사람이 질문을 통해 
수업을 하는 사람의 '직감'을 손에 넣어 자신의 것으로 변환을 해야
그러한 지식이 진정한 가치가 있는 것이고 의미가 있는 것 이다.

그리고 이런 직감들을 서로 이야기하고 비판하면서
더욱 진리에 근접할 수 있다.

하지만, 이런 말을 하면 
현실을 너무나도 사랑하는 사람들에게는
너무 이상론이며, 
현실과 맞지 않다고 이야기한다.

애초에 학생이 '질문'을 할 수 없는
그런 분위기는 현실과 정말 딱 알맞는가에 대해 되려 묻고 싶다.

내가 보기에는
나의 이상이 높기보다는
지금이 현실이 너무 나도 '이상'하다 

사람이 모르기 때문에 배우기 위해 
수업에 참여하고 질문을 하는 것은 너무나도 당연하다.

왜 당연한 행위에 대해 
눈초리를 받아야 하는가에 대해서는 아직까지도 이해하기 힘들다.

'직감'이라는 것은 그 순간 잡지 못하면 
금방 사라지기 때문에 
가급적 떠올랐을 때 질문을 해야 한다.

또한
굳이 수업이 끝나고 질문을 해야하는 특별한 이유는 없다.

그것을 기다리다가 만약 겨우 붙잡은 
직감을 놓치기라도 한다면 개인으로서는 매우 큰 손해이다.

이런 것으로 알 수 있는 것은
한국 사회에서 질문하는 행위는 질문 받는 사람을 포함한
주변 사람들에게 매우 민폐되는 행위가 될 수 있다.

그렇기에 이는 한국 사회 구성원들이 
'자신이 모르는 것'에 대처하는 행동 방식에 매우 큰 영향을 준다.

그런 것을 증명하듯이 
한국 대학교에서 수업 중에 
질문을 한다는 행위는 매우 매우 보기 힘들다.

이는 실제 사회에 들어서 
회사에 들어가 회의 중에도 매우 크게 나타난다.

회의는 한다.

하지만 질문을 하기 힘든 분위기가 자리잡는다.

왜냐하면 어릴 때 부터 질문하지 않는 것이 습관되어
익숙하지 않으며,

조직 관계가 매우 수직적인 것을 선호하는 
한국 회사 문화에 의해
질문을 하는 행위는 대개 적절한 행위는 아니다.

이는 '예'에 어긋나는 행위이다.

왜냐하면 회의에서 질문을 하는 행위는 
상대로 하여금 여러가지 불쾌감을 줄 수 있기 때문이다.

특히 이 상대가 질문자보다 직급이 높거나
심지어 나이가 많을 경우 더더욱 그렇다.

이런 행위는 회사 조직이 수직적이면 수직적일 수록 
조직의 상위 위치에 있는 구성원들의 나이가 높으면 높을 수록 
더더욱 높게 나타날 것 이다.

결국 누구는 발표하고 누구는 듣기만하는 
시간만 낭비하고, 
회의 했다는 자체에 의미를 두는 
전형적인 쓸모없는 회의가 되어버리는 것 이다.

이미 많은 회의가 
많은 생산성을 낳지 않는다는 것은 이미 증명된 사실이다.

또 다른 면에서 살펴보자.

위에서 언급한 
'모르면 가만히 있지'라는 말에 대해서 이다.

놀랍게도 한국에서는 '모르면 가만히 있는 것'이 미덕이다.

왜냐하면
모르는 사항에 대해 이야기하는 것은
매우 안 좋은 행위이기 때문이다.

사회에 그런 분위기가 만연하고 있기 때문에 
모르는 사항에 대해서 말을 꺼내기가 힘들다.

자칫하면 다른 사람들로 부터 
비웃음을 살 수 있고, 자신이 수치심을 느낄 가능성이 있으며,
결과적으로 
이는 남에게 좋게 보이지 않을 수 있는 리스크가 있기 때문이다.

그렇기 때문에 
한국 사회에서 '모르는 것'에 대해 이야기하는 것은
사실상 금기시 되어 있고,

'모르는 것'은 수치스러운 것이고 
창피한 것으로 인식 된다.

하지만,
'모르는 것'이 정말로 수치스러운 것이고 창피한 것일까?

그것이 정말 진리라면
전 세계 사람들은 모두 수치스럽고 창피한 사람들일 것 이다.

왜냐하면
인간이 모든 것을 알기에는 사실 상 불가능하기 때문이다.

수학, 전기, 전자, 물리, 정치, 등등 
세상에 수 많은 모든 것들을 알고 있는 사람이 과연 있을까?

그리고 아직 규명되지 않는 사실은 또한 어떤가?

그런 것 까지 모두 아는 그런 사람이 있다면 
내가 가진 모든 것을 지불하더라도  
꼭 한번 만나서 이야기해보고 싶다.

따라서 인간이 모르는 것이 있다는 사실은 
너무나도 자명하고 당연한 사실이기 때문에

'모르는 것'이 수치스럽고 창피한 것이라면
세계 모든 사람들은 입을 다 물고 살아야 할 것이다.

이 세상에서 모든 것을 알고 있는 
'현자'와 같은 존재는

어떤 인간을 초월한 어떤 것이 아닌 이상 불가능 하기 때문이다.

인간이 모르기에 철학이 생겼고 
이를 기반해 인한 수 많은 학문들이 생겨난 것 이고

인간이 최대로 상상할 수 있는 것을 전제로해 
그것을 규명하기 위해 탐구를 하는 과학은 또한 어떠한가?

재미있게도 
모르면 입을 다물고 있어야한다고 외치는 사람들은
과학에 대한 것들은 의심하지 않는다.

그를 기반으로 현대 과학이 발전했고
지금의 인류가 우주로 나갈 수 있었던 것 이다.

모르는 것이 수치스럽고 창피한 것이라면
인류는 우주로 나갈 수도 없었을 것이며,
지금 너무나도 당연하게 사용하고 있는 
스마트폰, 컴퓨터도 우리 손에 없었을 것이다.

내가 한국에 있을 때만 해도 
한국 사람들이 세계에서 꽤나 엑티브한 사람일 것이라고 생각했었다.

하지만,
다른 나라에서, 다른 사회에 살아가면서
다양한 사람들을 만나본 결과
생각보다 그렇게 엑티브한 사람은 아니였다.

질문 하지 않고, 
모르는 것을 수치스러운 것이고 창피한 것으로
인식하는 사회가 과연 엑티브한 사회이며,
그러한 사회에 있는 사람들이 엑티브하다고 말할 수 있을까?

한국 내부에서 한국 사회가 
엑티브하고 다이나믹하다는 인식은 매우 고평가되었다.

특히 IT에 관한 인식은 더더욱 그렇다.

그리고 그런 사회에서 배출되는 한국 사람들은 
생각보다 엑티브하지 않고 생각보다 다이나믹하지 않다.

이는 같은 한국인으로서 
외국에서 일하면서 커뮤니케이션 하면 할 수 록 느끼는 점이다.

나는 그런 사회에서는 
진정한 민주주의를 이룰 수 없다고 생각한다.

쉽게 해결할 수 없는 문제에 대해
모른다고 가만히 있으면,
각 개인들 그리고 이에 집합체인 The People들이 과연
어제 보다 나은 내일에 다가갈 수 있을까?

그리고 현대인들이 추구하고 있는 
'민주주의'라는 이념이 더 앞으로 나아갈 수 있을까?

그럴 수 없다.

왜냐하면 모르기 때문에 '입을 다물고 있어야 하기 때문'이다.

완벽한 민주주의에 도달한 나라는 현재 존재하지 않으며,
민주주의라는 이념이 완벽하게 정의되지 않아
그 누구도 민주주의가 '진리'인지 아닌지 알 수 없는데에도 불구하고

모르기 때문에 '입을 다물고 있어야 하기 때문'이다.

항상 입만 다물고 있다고 
입 내부가 지독한 냄새로 가득차 있더라도
모르기 때문에 입을 다물고 있어야 할 것 이다.

그렇게 지속되면 입 내부는 어떻게 될까?

썩지만 않는다면 다행일 것 이다.

밀의 말을 빌려오면
진리로 다가갈 수 있는 기회를 놓치는 것 이다.

비교적 최근에 미국 오바마 전 대통령이 내한을 했을 때 였다.

기자들에게 질문할 것이 없냐고 물었는데
아무도 질문을 하지 않았다.

아마 미국 오바마 전 대통령은 내심 당황했을 것이다.

나는 그런 뉴스를 보고 
마치 내 초,중,고 대학교 시절로 돌아간것도 아닌데도 
절대로 질문할 수 없는, 
말로 표현하기 힘든 그런 분위기를 다시 한번 떠올랐다.

재미있지 않은가?
그런 중요한 자리에 있는 사람들이
초,중,고, 대학생 때 하던 행동을 그대로 하고 있는 것이다.

다른 나라의 대통령에게 직접 질문을 할 수 있는 기회는 그리 많지 않다.

그런 '기회'를 날려버린 것 이다. 

무언가 이상하다고 느끼면서도 당연하게 말이다.

모르면 가만히 있어야 할까?

아니다. 

가만히 있으면 결코 앞으로 나아갈 수 없다.

모르면 자신의 직감을 제시해야하고 
비판 받으며 '부분적 진리'로 다듬어서 좀 더 진리에 접근해
진보하는 것 옳다.

이유야 어찌되었던 간에 그것은 변명에 불과하다.

물론 사회를 구성하는 The People들이 
옛 것에 새것을 더한다는 의미에 
진보를 거부한다면 딱히 상관은 없을 것이다.

하지만, 사회가 나아가길 원함에도 불구하고 

즉, 진보를 원함에도 불구하고
그런 분위기가 그리고 이런 격언이 
철퇴를 맞지 않는다는 것에 대해서는 
나는 의문이 들 뿐이다.

물론 플라톤이 말하는 이상적인 국가를 실현해주는
'철인'이 매우매우 운이 좋게도 한국 사회에 나타난다면
그럴 필요는 없을 것 이다.

그런 철인들이 사회를 비약적으로 발전시킬 수 있기 때문이다.

하지만, 그런 '철인'이 도대체 언제 나타난다는 말인가?

역사를 살펴보면 그런 철인들에 근접한 사람들은 매우 드물다.
그리고 그런 사람들 조차 그 사람이 정말로 철인이라고 볼 수 있는지에 
대해서도 사람마다 의견이 갈릴 것이다.

또한 그런 철인들이 
오늘날 민주주의 사회에서 태어나서
설사 가장 높은 위치에 오른다고 해도
팔다리가 다 짤린 정부에서 강력하게 자신의 이상을 펼칠 수 있을까?

나는 불가능하다에 한 표를 던지겠다.

그런 분위기를 가지고 있는 사회는 진보하기는 힘들 것이며,
이를 구성하는 The People들은 물론이고,
각 개인들도 마찬가지 일 것이다.

가만히 있으면 진보할 수 있는 
수 많은 기회를 빼앗기는 것 이다.

그렇다면 다시 한번 한국 사회에 
이런 질문을 내던질 수 있을 것이다.

'정말 모르면 가만히 있는게 좋을까?'

2020/11/02
역 근처 스타벅스에서

이 블로그의 인기 게시물

[ Web ] 웹 애플리케이션 아키텍처 (Web Application Architecture)

[ Web ] 서버 사이드(Sever Side) ? 클라이언트 사이드(Client Side)? 1 [서론, 클라이언트 사이드(Client Side)]

[ Web ] 웹 애플리케이션? 웹 사이트?(Web Application? Web Site?)