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

[ Essay - etc ] 유용성(utilitas) 그리고 의무와 희생에 대해


키케로의 의무론과 밀의 공리주의에 대한 책을 
읽고 이에 대해 고찰을 했을 때,

나는 이런 유용성(utilitas)에 대해 다시금 생각하게 되었다.

왜냐하면 민주주의의 근본 중 하나인 
공화정 시대에 살았던 키케로 그리고
밀이 살았던 근대 시절 보다

현대에 와서 이런 유용성에 대한 
철학적 생각에 대해 더욱 필요성을 느꼈기 때문이다.

내가 볼때 현대인들은
의무에 대해 너무나도 남발하고 있는 것 처럼 보다.

남성의 의무, 여성의 의무를 시작해
모든 것이 의무 투성이다.

하지만 의무에 대해 고찰하면 고찰할 수록
의무라는 단어는 결코 남발할 만큼 가벼운 단어는 아니다.

의무는 희생하는 것이 아니다.

의무를 어떤 사람에게 지게 했으면
의무를 행한 자에게 만족하지 못하더라도
그에 걸맞는 해택을 주어야 하는 것이다.

하지만, 이런 의무를 남발해 
마치 희생과 같은 단어 처럼 인식되어져 있는 것처럼 
나에게는 보였다.

따라서 이런 의무들을 분리할 필요가 있다고 생각한다.

・키케로의 의무론에서의 
의무와 유용성(utilitas)


키케로의 <<의무론>>을 보면 다음과 같은 구절이 있다.

「구분하는 데 있어서 무엇인가를 빠뜨리는 것이 
최대의 결점 인데도
위의 구분에서는 두 가지가 간과되었다.

왜냐하면 어떤 것이 도덕적으로 선하고, 
명예로운가 나쁘고, 
추한 것인가 하는 문제뿐만아니라,

도덕적으로 선하고, 
명예로운 것이 두 가지가 제시되었을 때,
어떤 것이 유익한지에 관해서도 
사람들은 보통 고려하고 있기 때문이다.

따라서 저 파나이티우스가 
세 가지로 생각했던 것은 
마땅히 다섯 가지로 구분되어야 한다고 확신한다.

첫째, 
도덕적으로 선하고, 
명예로운 것에 대하여는
이중적으로 논의되어야 할 것이고,

돌째, 
유익함에 대해서도 마찬가지로 논의되어야 하며,

그리고 마지막으로 
이들에 대한 비교가 검토되어야 할 것이다.
」 

그리고 피나이티우스가 이야기한 세 가지라는 것은 아래와 같다.

「어떤 행동을 하려고 결정할 때,
고려해야 할 사항은 삼중적이다.

우선 첫째로,
사람들은 심사 숙고된 행동이 
실제로 도덕적으로 선하고, 명예로운지,

아니면 도덕적으로 나쁘고 
추한 것인지에 대해 의문을 품는다.

그러한 고려를 하는 데 있어서 
사람들은 흔히 상반된 의견으로 갈라진다.

그 다음 둘째로,
사람들은 자신들의 심사 숙고된 행동이

생활의 편리함과 즐거움, 
수단과 재력의 통제,
사회적 영향력과 권력을 가져다주는지
그렇지 않은지를 
조심스럽게 탐색하거나, 추구하는데,

그러한 여러 가지를 이용하여,
그들 자신과 그들에게 
딸린 사람들을 도울 수가 있는 것이다.

이 모든 고려는 [1]유익함(utiltas)의 정도에 달려있다.

셋째로, 
의문을 품고 고려해야 할 것은
유익하게 보이는 것이 
도덕적으로 선하고 명예로운 것과 상
충되는 것으로 보일 때이다.

참으로 유익함 쪽으로 마음이 쏠리면
도덕적으로 선하고 명예로운 쪽이 마음에 걸리고,

도덕적으로 선하고 명예로운 쪽으로 마음이 쏠리면
유익함 쪽이 마음에 걸리는 경우처럼,

마음은 심사숙고함에 혼란을 일으켜
사고하는 데 알 수 없는 불안감이 생기게 된다.」


위의 구절은 키케로가 피나이티우스가 제시한 의무에 대해
간과한 점을 비판하는 내용이다.

The people들의 정신적인 선조인
고대 로마인들은 의무에 대해 이렇게 정의 내리고 있다.

그리고 이런 의무에 대해 
유사한 민주주의에 살고 있는 우리들은 
이러한 정신적인 선조의 생각을 
고찰해볼 필요가 있다고 생각한다.

・현대의 유용성에 대해


키케로의 <의무론>은 카이사르가 암살된 후,
카이사르의 양자인 옥타비아누스와 손을 잡으면서

카이사르 파인 안토니우스를 공격,
로마 공화국을 최후로 기사 회생시키려는 
정치 투쟁을 벌이는 시점에서

아테네에 유학가 있는 
아들 마르쿠스에게 보낸 서간문 형식으로 쓴 글이다.

위의 내용은 <제 1권 : 도덕적 선에 대하여>에 실제 나오는 내용이며,
키케로는 이 1권의 내용이 
이런 의무에 대한 내용을 이야기 할 것이라 밝히고 있다.

현대 사회에서 사람들이 이것은 의무지 않느냐라고 
생각하는 것에 대해 이야기 해보자.

자본주의에 흠뻑 젖어있는 
자본주의 시대의 현대인들은 
모두 전 세계에 있는 빈곤층을 위해 
특히 그 중 어린 아이들을 위해
우리가 힘을 합쳐서 도와야 한다는 사실에,

그리고 이 지구촌에 같이 사는 입장에서 
조금씩이라도 돕는 것이 의무가 아니겠냐는 주장에
의문을 제기하는 사람은 흔치 않을 것이다.
(물론 생각을 해도 실제로 하는 사람은 매우 드물지만) 

이런 생각들이 비영리단체인 
유니세프 같은 단체들이 생겨났다.

따라서 세계 사람들은 
이런 빈곤층을 위해 도와야 한다는 것은
같이 지구에 사는 입장에서는 의무와 같은 것이라 생각한다. 

키케로의 <의무론>에서는 이런 의무를 '중간적 의무'라 하는데,

'중간적 의무'라는 것에 대해 키케로는 아래와 같이 설명했다.

「중간적 의무는 '그것이 행해졌을 때, 
왜 행해졌는가에 대한
그럴법한 이유가 제시될 수 있는 것'으로 규정한다.」

그렇다면 이런 '중간적 의무'의 예로 

기부 단체에 어떤 한 사람을 A라 가정하고,
이 A라는 사람이 어떠한 기부 단체에 3만원을
기부 하려 생각한다고 가정해보자.

A가 도덕적으로 선하고, 
명예로운 쪽에 마음이 쏠리게 되면

A는 기부 단체에 정기적으로 후원을 할 것이다.

하지만 기부 단체의 운영은 
기부자의 후원에 의해 돌아가기 때문에

우리가 3만원을 정기적으로 기부한다고 해서,
기부 대상자에게 3만원이 가는 것이 아니다.

그것에 일부 혹은 대다수는 
기부 단체의 운영금으로 쓰일 것이며,

그 나머지가 많던간에 적던간에 
기부 대상자에게 몫으로 돌아갈 것이다.

따라서 A는 3만원이라는 
돈의 유용성(utilitas)을 생각한다면,
기부하지 않는 선택도 할 수 있다.

왜냐하면, 
기부자는 3만원의 대부분이 
필요한 사람에게 가길 원하지만
현실은 그렇지 못하기 때문이다.

따라서 기부 단체에 기부한다는 것은
전혀 유용하지 않을 수 있다.

예를 들어, 
이런 유용성(utilitas)을 생각하면,

3만원을 직접 빈곤층에게 건네주는 것이 
더 유용성(utilitas)이 있기 때문이다.

따라서 현대에서 살고 있는
우리가 기부 단체에 
돈을 기부한다는 행동은 '중간적 의무'라 볼 수 있다.

만약 어떤 개인이 기부를 하지 않았으며,
이에 대한 이유로 
'나는 기부 단체를 믿지 않기 때문에 직접 기부하였다'라고 한다면,

그를 도덕적으로 문제가 있는 사람이라고 볼 수 있는가?

키케로의 말에 따른다면
납득할만한 이유가 되기 때문에 
이런 기부 문제에 관해서는 
'절대적 의무'라고 할 수는 없을 것이다.

따라서 그를 도덕적으로 문제있는 사람이라 한다면
매우 부당하다.

역으로 이것이 '절대적 의무' 였다면,
그를 도덕적으로 문제가 있다고 말할 수 있다. 

그렇다면 어느 쪽이 유용할 것인가?

물론 이런 비영리단체에서 
일하고 있는 사람들에게는 
자신들의 단체에 기부해서 자신들의 유용함을 어필하고 싶겠지만

기부자 입장에서 보면 전혀 유용하지 않다.

3만원 중에서 일부만 전달된다면
그 누가 기부단체에 기부하는 행위에 대해 
유용성을 느낀다는 말인가?

적어도 나는 전혀 유용성을 느낄 수 없다.

・의무와 희생

이런 키케로의 의무에 대해 동의한다면
의무라는 것을 남발하기는 쉽지 않을 것이다.

왜냐하면 의무라는 것 안에 
유용함이 존재하기 때문이다.

의무안에 어떠한 유용함도 찾아볼 수 없다면 
그것은 비참한 희생일 뿐이다.

이 세계에 살고 있는 The people들이 
민주주의와 자본주의가 강력하게 결합되어 있는 사회에서

'납세의 의무'를 지고 있는 이유는 
납세를 함으로써
여러 '유용함'을 얻을 수 있기 때문이다.

세금을 내면 
우리는 나라 안의 여러 복지를 누릴 수 있는 등의 
사회 시스템 안에서 어느 정도 보호 받을 수 있는
유용함을 얻을 수 있다.

이는 자국민에게만 한정되는 것이 아닌
외국에서 건너와 일하고 있는 사람들에게도 
얻을 수 있는 유용함이다.

가끔 인터넷 커뮤니티에서 보면
국가 보험 등의 국가에서 시행하는 복지 시스템에
외국인 노동자들은 이런 복지를 받을 자격이 없다고 외치지만

그렇다면 외국인 노동자들에게 세금을 걷지 않으면 된다. 

그런 유용함을 주기 싫다면
외국인 노동자를 거부하면 되며

거부할 수 없다면 
외국인 노동자들에게 
세금을 부여하지 않으면 깔끔히 해결된다.

세금을 걷는데도 불구하고 
이런 사회 시스템에 접속할 수 없다면 정당하지 못하다.

그러한 주장을 하는 사람들이 
꽤나 보인다는 사실은 
참으로 나의 마음을 복잡하게 만든다.

의무는 희생이 아니다.

아마 이런 의무에 대해 혼동하고 있으리라 생각 된다.

그렇기 때문에 이런 시스템을 이용하는 나라라면
세금을 지불한다면 이런 유용함들을 얻을 수 있다.

하지만 
한국에서는 매우 특이한 의무가 있다.

바로 '국방의 의무'이다.

나는 특이하게도 한국이라는 나라에 
남자로서 태어나서
'국방의 의무'라는 것을 지게 되었다.

이런 여러 '의무'들에 대해 
나는 어린시절 교육을 받아왔는데

'의무'에 대해 키케로와 같은 정신적 선조들의
정의를 배우는 것이 아니라
마치 희생과 같은 의무로 배워왔었다.

특히 
이 '국방의 의무'라는 것은 더욱도 심했다.

내가 어린 시절 이러한 
'국방의 의무'에 대해 어른들에게 들었던 이야기는

"남자라면 군대에 가야지!"라는 이야기 뿐이다.

어떤가 유용성이 느껴지는가?

나는 이러한 말들에 대해 의문이 갔지만
물어봐도 똑같은 말만 대답해줄 뿐이였다.

그리고 나이가 어느정도 되었고
나는 21살에 나이에 입대를 했었다.

그렇다면 나는 '국방의 의무'를 함으로써 
어떠한 유용성을 얻을 수 있었을까?

우선 월급을 살펴보자.

한달 월급은 고작 10만원 안팎이였다.
이때 대학 졸업생의 연봉이 2400만원이고 단순히 계산한다면 
한달에 200만원 정도 받는다고 가정했을 때

고작 20분의 1이였다.

월급에서 유용성이 느껴지는가?

그 다음으로 근무 환경을 살펴보자

기본 오전 9시 부터 
오후 5시 30분까지 일과를 한다.

일과가 끝난다 하더라도
신체적 자유를 보장받을 수 없다.

간부들의 참견이 항상 있기 때문이다.

대략 2년의 기간동안 
이러한 환경 속에서
한 곳에서 약 30일동안의 정기 휴가를 제외하면 
밖에 나갈 수 없고,
나갈 경우 탈영병으로 취급받는다.

따라서 마치 감옥의 수감자들 처럼 
죄를 지은것도 아닌데에도 불구하고
2년동안 신체적 자유를 보장 받지 못한다.

근무 환경에 유용성이 느껴지는가?

그 다음 전역 후를 살펴보자.

전역 후에 
전역하고 나서도 예비군, 
민방위라는 것을 받아야만 한다.

일을 하고 있는 와중에도
나라에서 부르면 훈련을 강제로 받아야만 한다.

훈련을 받으면 그에 대한 일당을 주는 것도 아니며
정해진 소규모의 금액만 받을 수 있다.

위치에 따라서는 
오히려 돈을 내고 훈련을 받으러 가야 할 경우도 있다.

전역 후에 어떠한 유용성이 느껴지는가?

나는 지금 이 글을 써내려가고 있는 이 시점에도
'국방의 의무'에 대해 
어떠한 유용성도 느끼지 못했다.

'국방의 의무'는 정말 '의무'인가?

이러한 의문이 머리속에서 계속 맴도는 것은
나만의 생각일 뿐일까?

따라서
나는 한국의 '국방의 의무'는 매우 부적절하며
'국방의 희생'으로 바꿔야 한다고 생각한다.

군대에 입대하기전, 
그리고 전역하고 나서도

나는 군대의 '유용함'에 대해 
전혀 느낄 수 없었기 때문이다.

물론 어떤 사람들은 그러한 유용함에
'애국심'이라는 마법의 단어가 있다고
주장할지 모르겠으나

정말로 '애국심'이라는 유용함을 느끼고 있다면
왜 본인은 그러한 애국심을 위해 다시 입대하지 않는 것인가?

유용함을 느끼지 않는 사람 대신에 
유용함을 느끼는 사람이 간다고 한들 큰 문제는 없다.

하지만,
그들이 그러한 '애국심'을 강조하는 이유는
그들이 정말 '애국심'이라는 유용함에 대해 
이야기하려고 하는 것이 아니라

'국방의 희생'을 지기 싫어하는 다른 사람들을
'매국노'로 낙인 찍기 위해서 
그러한 '애국심'이라는 유용함에 대해 이야기 하는 것 뿐이다.

정말 비열하기 짝이 없는 행위이다.

유용함을 느낄 수 없는 
'의무'를 왜 져야한다는 말인가?

경제 대국 이라고 불리우는 
'대한민국'에서 어째서 적절한 유용함을 
의무를 지고있는 사람들에게 제공해주지 못하고 있는가?

어떤 사람들은 과거에 
이렇게 생활한 세대들이 있었으며,

너희도 희생해야 한다며 
침을 튀며 이야기 할지는 모르겠지만

과거의 세대들이 혹은 자신들이 
그러한 희생을 했다 할지라도 

다음 세대도 희생을 하기 바란다는 것은
무언가 이상하지 않은가?

나의 할머니 할아버지 세대들은 전쟁을 겪었고
그 이후 허허벌판에서 가난의 문제가 아닌
굶주림과 싸워야만 했다.

그리고 자신들의 
자손들이 그런 가난을 겪지 않았으면 하는 마음에

일본에 충분한 사과를 받아야하는 권리를 
외화 달러와 맞바꿨고
외화 벌이를 위해 먼 땅 까지 가면서
비참하게 일해야만 했다

이렇게 벌어온 외화를 통해 
놀라운 경제 성장을 이루었다.

이와 같이 자신의 세대 보다 
다음 세대가 비참하게 살지 않기를 바라는 것이 
당연한 것 아닌가?

나는 이것이 정말로 당연한 것이고
옳은 것이며, 정의로운 것이며, 예와 의가 있고
도덕적으로 선한 것이라 생각한다.

그렇기 때문에 적어도 나는 
다음 세대들이 이러한 비참한 희생을 하지 않았으면 한다.

20대의 그 시간은 무엇과도 바꿀 수 없는
정말로 값진 시간이다.

・결론

누가 그랬던가?

'세상에는 공짜란 없다'라고 말이다.

정말 지당하고, 옳은 말이다.

세상에는 공짜가 없다.

의무 또한 공짜가 아니다.

어떤 사람에게 의무를 강제로 짓게 했다면
그 사람이 유용함을 느낄 수 있는 
적절한 보상을 해주어야 한다.

그렇지 않다면,
그리고 그렇지 못했다면 
정당하다고 말하기는 힘들 것이다.

그래야만 의무라는 단어가 성립하기 때문이다.

나는 어린 시절 부터 
희생은 고귀한 것인 것 처럼 교육받아 왔었고,

마치 희생은 누군가가 해야만하는 
의무인 것 처럼 느껴져왔었다.

하지만 그런 희생한 사람들은
그들 스스로가 유용성을 느꼈기 때문에 한 행위이다.

그들에게 있어서 그 행위는 '희생'이 아닌
'의무'와 같은 것임에는 틀림없다.

그리고 후세의 사람들은 이러한 행위를 한 사람들을 
위인이라 부르며, 그들이 희생했다며 찬양했다.

그리고 많은 사람들은 
이런 희생을 누군가 해주기를 기다리고 있다.

하지만,
어른이 되어서 봤을때

이런 것들을 제외한 희생들은 
전혀 고귀하지 않으며,
심지어 찬양 받지 못한다.

그런 희생은 비참할 뿐이다.

이런 희생을 이야기하는 사람들은 
그런 희생이라는 말의 무게를 모르거나, 
'비열한 어른'들일 것이다.

따라서
이제 '의무와 희생' 그리고 '유용성'에 대해 
철학적 논의를 시작해야 한다. 

그렇지 않는다면 
우리는, 그리고 The people들은 
정당하지 못한 사회속에서 살아갈 것이며

비참한 희생을 당하며 
행복하지 못한 삶을 살아가게 될 것이며

더 나아가 진보할 수 없을 것이다.

--------------------------------------------------------------------------------
2020.06.16 초안 작성 및 개행 완료

이 블로그의 인기 게시물

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

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

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