[ 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) 세부 설명에 조금 차이가 있어 보이지만 전체적인 틀은 매우 비슷해 보인다.  몇 가지 포인트가 되는 단어를 추출해 이를 연결해보자면 아래와 같은 의미를 산출 할 수 있다. 독립적이지만 연관되어 있

[ 생각 ] 개인의 철학책과 현대 자본주의 공동체



오늘은 조금 철학에 관한 이야기를 해보려 한다.

내가 말하고 싶은 철학은 학문으로서 어떤 사상을 연구하는
그런 철학이 아니라, 그것을 포함한 어떤 물체, 사실 등을 '왜?'라는
질문을 통해 꼬리의 꼬리를 물며, 해답을 찾아내는 것을 말한다.

'인간은 무엇인가', '인간은 왜 태어났는가', '사후세계란 존재하는가'등을
말하는 것이다.



나는 이런 철학은 인생에 있어서
가장 중요한 것이라고 생각하는 사람 중에 한 사람이다.

왜냐하면,
내 스스로 이런 것들을 정리한 
나만의 '철학책'을 가지고 있기 때문이다.

여기서 말한 철학책은 
다른 철학자들의 사상을 넣어놓은 것이 아니다.

물론 그것들에 영향을 받을 수 는 있지만,
그것과 동일하지는 않다.

이런 철학책은 나의 이상을 현실에 대입해 볼때에서 나온
나의 간접적, 직접적인 경험을 통해 얻은 것들이며,
나의 사상, 나의 원칙, 나의 신념, 나의 꿈 등의 
경험과 선험이 혼재되어 있는 하나의 '공간'이다.

이 요소들은 나에게 있어서는
밀이 말한 부분적 진리에 가까운 것들이다.

하지만 나는 나만의 철학책이라는 공간들 안에 
존재하고 있는 요소들을 결코 진리라 생각하지 않는다.

왜냐하면, 나의 이상을 실험할 때,
경험을 통한 고찰과 성찰을 통해 나온것들이기 때문에
진리라고 보기에는 매우 힘들며

설사 그것이 정말 진리라고 한들
나는 그것을 실제 사회에서 실험하여 검증해봐야 하며
이는 다른 모든 사람들에게도 해당되어야 하기 때문에
나는 이 요소가 진리라고 알아차리기는 매우 힘들 것 이다.

또한 인간의 불안정함, 
즉, 자만과 기만이라는 내면의 괴물을 다루기 위해서는
어쩌면 진리를 발견했다는 것을 모르는게 나을 수도 있을 것이다. 

따라서 나의 철학책은 부분적 진리일지도,
아닐지도 모르며 결코 진리는 아닐 것 이다.

그리고 이 철학책은 끊임 없이 개선된다.

매우 안타깝게도 동양에서는 
이런 자신만의 철학책이라는 개념이 없다.

즉, 개성이라는 것은 사실 허용되어있지 않다.

물론 대외적으로는 허용되어 있는 것 처럼 보이지만
그것은 정말 동양권 문화에서 원해서 그러한 것이 아니라 

패러다임 자체가 서양권 문화에 기반하고 있기 때문에
받아들인 것 뿐이며
이 또한 대부분 그러한 척을 하고 있을 뿐 
사회 깊은 부분을 살펴보면 대부분 거부하고 있다.

이런 면에서 동양권은 
동양권 스스로의 독립에 실패했다고 볼 수 있다.

이미 그 한계를 보고 있기 때문이다.

왜냐하면, 동양에서는 
아직도 개인보다 공동체를 중시하기 때문이다.

자본주의라는 체제가 동양권에 들어오기 전
그러니깐 농업 공동체에서는  
어떤 특이한 사람이 보이면 철저히 배제된다.

농업 공동체에서는 뛰어난 사람이 필요가 없다.

농작물을 재배하고 수확하고 근성과 체력이 필요할 뿐
이것 외의 것들은 불필요할 뿐이다.

따라서 공동체가 중시되는 사회에서는 
그 특이함이 좋은 것이건, 나쁜 것 이건 배제되었다.

하지만 자본주의 공동체에서는 
신뢰(자본 혹은 돈)가 화폐이기 때문에 이를 기반으로 한 공산품,
지금에 이르러서는 정보가 고부가가치가 됨으로써

이런 것들을 얻어내기 위해서 
이에 맞는 사람을 채용하는 것이 중요해졌으며
필요에 의해 농업 공동체에서 필요하지 않았던
개성은 수요가 증가하게 되었고
이와 동시에 사회의 질서가 재정렬되었다.

이에 따라 
다양한 사회적 지위(흔히 돈을 많이 받는 직업)가 가지고 있는 신념을 포함한,

농업 공동체와는 다르게 
그것이 정말 좋은것이건, 나쁜것이건 간에
좋은 특이함으로서 자본주의 공동체에서 받아들여지며,
이는 그 특이함에서 나오는 것을 개성으로서 인정받을 수 있게 된다.

따라서 자본주의 공동체에서 믿고 있는 신념의 요소와
'사회적 지위'가 높은 개인의 철학책의 요소와 상반되어 부딪치더라도

그는 공동체 안에서 필요에 의해 
예외로서 인정 받고 환영받을 수 있게 된다.

물론 그것은 '예외'로서 인정 받은 것 뿐이지,
그가 그 공동체를 훼손하게 된다면
그는 그 공동체의 철퇴를 맞을 것이다.

문제는 그것이 아니다.

그 자본주의 공동체안에서
이런 사회적 지위가 높지 않은 사람들이 
이런 '철학책'을 가지고 있고,
개성으로서 이해받으려 한다고 하면
먼저 의심을 받고 
그래도 이해받으려 한다면 부정 당하며 
마지막에는 배제된다.

따라서 동양의 자본주의 공동체안에서는
사회적 지위가 높지 않은 개인들의 철학책은
한국에서 흔히 말하는 
'개똥철학'으로 탈바꿈되어 가치가 훼손된다.

이러한 치욕적인 타이틀을 가지고 싶지 않은 개인들은 
스스로의 개성을 놓아버리게 되며 

이를 받아드리려는 개인들 앞 길에는 
매우 험난한 고난이 기다리고 있으며
자본주의 공동체에서 끊임 없는 증명을 요구할 것 이다.

따라서 이러한 고난을 
견딜 수 없는 대부분의 사람들은 
자본주의 공동체와 한 몸이 되어 
이러한 개성을 말살하기 위해 동참하게 될 것 이다.

공동체는 개인에게 그런 특이함을 버리라며 
압박하고, 탄압하여, 배제할 것 이다.

여기서 그 특이함이 
사회에 중요한 가치를 지니건, 지니지 않건

즉, 옳건, 그르건 중요하지 않다.

공동체의 '신념'에 반하거나 그의 준하기 때문에

즉, 공동체를 훼손할 수 있기 때문에
개인을 억압하고 탄압하여,
공동체의 '신념'을 지키기 위해 개인을 배제한다.

결국 여기서 개인이 할 수 있는 행동은 세 가지 뿐이다.

자신만의 철학책을 버리고, 
즉 개성을 버리고 공동체에 흡수되어 
특공 대원으로서 합류 하던가 

자신만의 철학책을 버리지 않고,
공동체에게 억압받고 탄압받으며 살던가

아니면 공동체를 떠나는 방법 뿐이다.

가장 큰 문제는 자본주의 사회에서는 
공동체를 유지하기 위해서는 성장을 필요로 한다는 점이다.

농업 공동체에서는 성장이 그리 중요하지 않다.

정해진 땅에서 정해진 양 만을 수확하면 되기 때문이다.

그렇기 때문에 공동체에 순응하는 사람이 증가하면 증가할 수록
개성은 사라지고 공동체는 활력을 잃고
이는 성장 동력을 상실하게 된다.

공동체에 순응하지 않더라도,
개성을 가진 개인은 공동체와 멀어지게 되어 활력을 잃는다.

결국 공동체로서 신념은 
그것이 옳바르건, 올바르지 않건 
이에 따르는 구성원들에 의해 지켜지게 위해 
어떤 짓도 마다하지 않을 것 이며,

그렇다는 것은 공동체의 신념을 지키기 위해 
제한되어 있는 리소스의 대부분을 
소모할 준비 또한 되어 있다는 것 이다.
 
결국 시간이 지나면 지날 수록 
이 소모되는 리소스는 증가될 것 이고 
한계에 다다르면 공동체는 와홰될 것 이다.

아마 동양의 세 마리 용(중국,한국,일본)은
모두 이런 자본주의 공동체에 속한 것으로 보인다.

이런 동양의 자본주의 공동체는 발전 단계에서는
서양의 자본주의 공동체의 에너지 보다 높아
비교적 빠른 발전을 이룰 수 있었지만

이런 에너지는
내적으로, 그리고 외적으로 서서히 소모되어
0에 가까워지면 사회의 활력을 잃는다.

마치 엔트로피와도 같다.
패러다임에 올라탈 수 없다면 계속해서 엔트로피가 쌓이게 된다.

왜냐하면,
개인들이 철학책을 가자지 못하고, 
배제된 사회는 유연하지 못하기 때문이다.

만약 세계화가 이루어지기 전 이라면
딱히 성장하지 않아도 큰 문제는 없었을 것 이다.

하지만, 세계화에 의해 성장하지 않는다면 
뒤쳐지기 마련이다.

따라서 사회의 사고의 틀을 깨야 할때,
그런 유연하지 못한 것이 성장을 방해한다.

그리고 이런 사고의 틀은 
다양한 개성을 가진 구성원들이 많은 공동체에서만 가능하며

패러다임이 변했을 때는 
이 틀을 깨고 공동체 내부의 질서를 새로 정립해야 한다.

먼저 일본이 개방을 통해 엄청난 발전을 맛보았으나 한계가 보였다.
그 후에 한국이 개방을 통해 엄청난 발전을 맛보았으나 한계가 보인다.
다음으로 중국이 개방을 통해 엄청난 발전을 맛보았으나 한계를 느끼고 있다.

그렇다고 서양의 자본주의 공동체는 성장하고 있는가?

꼭 그렇지는 않다.

특히 유럽은 일부 나라만을 제외하면,
경제에 문제가 있음이 드러나기 시작했고,
이는 성장하지 못하기 때문이다.

유럽연합에 가입해있는 국부가 많거나, 
성장을 하고 있는 나라들이
유럽연합이라는 이름 하에 그들을 지켜주고 있지만,

영국의 브렉시트가 현실로 다가오면서,
유럽 연합의 유대관계도 약화되고 있음을 예견하고 있다.

물론 이러한 논지에 어떠한 사람들은 
서양의 자본주의 공동체도 상황이 썩 좋다고 볼 수 없으니
동양의 자본주의 공동체의 지금도 나쁘지 않다는 이야기를 할 지는 모르겠지만
이는 공동체가 성장하고 싶어하지 않는다면 
그들의 말대로 정말 나쁘지 않을지도 모른다.

하지만, 성장하고 싶다면 이야기가 다르다.
스스로가 무슨 말을 하고 있는지 이해하지 못하고 있는 것 이다.

이런 자유를 주장한 밀은 영국에서 태어났고,
그의 자유론도 영국에서 처음 세상에 나타났지만

결국 그의 자유라는
이념의 가치를 정확히 평가하고 
실천하고 있는 나라는 미국뿐인 듯하다.

하지만 그렇다고 해서,
미국의 각 개인들이 철학책을 모두 가져야 한다거나 
있으리라 생각하지는 않는다.

하지만, 미국의 자본주의 공동체에서 받아들여진
밀의 자유에 의해 이런 철학책을 가진 개인들이 
탄압받고 억압받을지는 모르겠지만 배제되지는 않는다.

미국에서는 이런 개성에 의해 어떠한 사회 문제로서 나타난다.

물론 어떠한 사람들은 이런 사회 문제를 보고
더 쉬운 방법이 있는데 하지 않는 것을 보고는 
한심하다는 듯이 질타하고는 한다.

따라서 이런 것이 미국이라는 나라에 유연성을 주었으며,
그 만큼 나라에 활력을 불어 넣어주었다.

나는 세계 모든 개인들이 철학책을
가져야한다고 이야기하는 것이 아니다.

철학책을 가지지 못하더라도,
다른 사람의 철학책을 받아들여도 큰 문제는 없다.

이것을 만들기 위해서는 지루하고 험난한 과정을 거쳐야만 한다.

하지만 이런 철학책을 무시하고, 개성을 용납하지 않는
사회는 더 이상 발전하기는 힘들 것이다.

물론 그런 사회에서 더 이상 발전을 원하지 않는다면
나는 할말이 없다.

하지만 사회가 혹은 사회 구성원들이 
더 이상 발전을 원하는데에도 불구하고,

개인들의 개성을 무시하고 탄압하고 배제한다면
그들이 원하는 사회는 원하는 발전은 이룰 수 없을 것이다.

왜냐하면 세계는 계속 변하고,
그에따라 흐름이라는 큰 파도가 오며
사회는 그 큰 파도에 타기 위해
무엇보다 유연함이 필요한데

그런 사회는 그런 파도에 타려해도 유연하지 못해
탈 수 없기 때문이다.

그런 파도에 올라타지 않으면서,
사회에 성장을 바라는 것은
무언가 잘못되도 단단히 잘못된 것이다.

                               

이 블로그의 인기 게시물

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

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

[ Web ] 웹 애플리케이션 서버 아키텍처의 정의 및 유형 ( Define and Types of Web Application Server Architecture )