'2007/03'에 해당되는 글 3건

  1. 2007.03.31 OpenID (1)
  2. 2007.03.30 Server Side Script
  3. 2007.03.30 드디어 블로그의 방향성을 결정했다 (1)

OpenID

분류없음 2007.03.31 09:31
OpenID란 중앙 OpenID 사이트에 가입을 해 놓으면 OpenID를 지원하는 다른 사이트에서는 OpenID에 로그인하는 것만으로도 로그인이 되는 것을 말한다.

이것은 사실 SKT 사이트 등에서 지원하는, 「하나의 사이트를 가입하면 제휴사엔 가입할 필요가 없다」는 개념과는 전혀 다른 개념이다. 그것은 SKT 등 대기업 사이트에서 지원하는 내용은 회원 개인의 정보를 다른 제휴가가 서로 공유하여 자동으로 가입을 시켜주는 방식이므로 개인 정보 노출의 위험이 있고 또한 웹사이트 가입을 위해 개인정보를 여러 곳에 분산 저장시킴으로써 체감상 개인정보 유출의 위험을 더욱 크게 한다.

이에 반해 OpenID란 중앙 OpenID 사이트(이하 중앙 사이트)에 가입하면 가입시 필요한 정보를 중앙 사이트에 저장한다. 그 후 사용자는 OpenID를 지원하는 사이트(이하 웹사이트)에 접속해서 자신의 OpenID로 로그인하게 된다. 그러면 웹사이트는 중앙 사이트로 해당 OpenID가 로그인 상태인지 확인하고 로그인되지 않았다면 해당 OpenID로 로그인을 시도한다. 이 과정에서 사용자는 웹사이트에 자신을 드러내기 위해 OpenID만을 입력하게 되고 실제 로그인 과정은 중앙 사이트로 접속해서 아이디와 비밀번호를 입력해서 로그인하게 된다. 그러면 중앙 사이트는 해당 사용자의 로그인 여부(세션을 이용하든 쿠키를 이용하든 어쨌건 가용한 방법을 이용해서)를 저장한다. 그러면 웹사이트에선 중앙 사이트에서 해당 OpenID에 해당하는 사용자의 로그인 여부를 확인만 한다.이 방식은 체감상 개인정보의 유출 위험을 적게 느껴지게 하지만 중앙 사이트가 해킹이라도 당하면 개인정보 유출의 위험성이 더욱 크므로 중앙 사이트는 언제나 보안에 관해서 고민하고 고찰해야 한다.

사용자 삽입 이미지

OpenID의 작동


이런 OpenID는, 특히 Web 2.0 시대가 도래하면서 가장 큰 이슈가 됬던 OpenAPI를 대부분 제공하기 때문에 웹사이트 개발시 쉽게 자신의 사이트에 매시업해서 사용할 수 있다는 장점이 있다.

현재 우리나라에서는 http://www.myid.net에서 OpenID를 만들 수 있으며, me2day, SpringNote 등의 사이트에서 오픈아이디를 지원한다. 또한 OpenID는 OpenAPI를 지원하기 때문에 최근에는 블로그 등 개인 웹사이트에서도 OpenID를 지원하는 곳이 조금씩 생겨나고 있다.

참고: 마이아이디넷 공식 블로그에서는 OpenID에 대한 기술적인 설명과 우리나라의 OpenID 동향 등을 설명하고 있다.

ps. OpenID에 대해 잘 모르다 보니 아무래도 글이 엉망이다-_- 게다가 저 그림은 영... ;;;
Posted by マサキ君
TAG openid

Server Side Script

분류없음 2007.03.30 20:43
Server Side Script(서버 사이드 스크립트. 이하 SSS)란 웹의 관점에서 바라보았을 때 서버에서 실행되는 스크립트 언어를 가리킨다.

구체적으로는 클라이언트가 서버로 파일을 요청할 때, 미리 웹서버에 지정된 확장자를 클라이언트가 요청하는 경우 서버가 클라이언트에게 요청받은 내용을 전달하기 전에 지정된 스크립트 엔진을 이용해서 클라이언트가 지정된 내용 중 SSS로 작성된 부분을 스크립트 엔진이 실행해서 SSS로 작성된 코드 부분을 실행된 결과로 치환한 뒤 그 결과를 클라이언트로 보내게 된다.

보통 SSS가 하는 역할은 클라이언트가 파일을 HTTP로 요청하면서 HTTP 헤더에 부가적인 정보를 보내면 웹서버(정확히는 스크립트 엔진)는 그 정보를 이용해서 DB 서버에 접속, 결과를 도출해서 사용자에게 동적인 내용을 보여주는 것을 기본으로 한다. 이런 역할의 대표적인 것으로는 인터넷 게시판 등이 있다.

그렇지만 지금은 클라이언트에서 전달한 내용으로 동적인 내용을 구성하는 것을 넘어서 세션을 이용해서 사용자를 구별해서 각 사용자마다 다른 개인화 서비스를 제공한다거나 그래픽 라이브러리를 이용해서 동적인 이미지 생성을 해서 새로운 컨텐츠를 생산해내는 등 지금에 와서는 그 역할이 지극히 다양해졌다.

SSS를 공부하다 보면 가장 자주보는 실수가 바로 Client Side Script로 처리가 가능한 부분을 SSS로 처리하려고 하여 Client Side Script 안에 다시 SSS를 삽입하여 원하는 결과를 얻으려고 하는 행위 등이 있다. 이를 테면 JavaScript와 ASP를 공부중인 학생이 JavaScript로 쿠키의 값을 얻으려고 하였으나 JavaScript의 쿠키 값을 읽어들이는 루틴이 복잡하다고 생각하여 자바스크립트 중간에 ASP로 쿠키를 읽어들이는 코드를 넣는다던가 하는 부분 등이다. 이런 점을 막기 위해선 Server Side Script와 Client Side Script의 실행되는 위치를 명확하게 주지시킬 필요가 있다.

여담으로 マサキ君은 예전에 학교에서 ASP를 가르쳐주시던 선생님께서 'ASP같은 서버 사이드 스크립트들은 말하자면 HTML 생성기라고 생각하면 되지'라고 가르쳐주시던게 퍼득 떠오른다.

또한 웹 개발에 처음 뛰어드려는 사람은 Server Side Script와 Client Side Script의 실행 위치와 능력의 한계, 두 스크립트 언어의 차이점을 명확히 알아둘 필요가 있다.

대표적인 Server Side Script는 ASP, PHP, JSP 등이 있으며, 이러한 SSS들의 대다수는 보통 HTML 태그 중간에 여는 꺽쇠와 정해진 한개의 문자를 조합해서 여는 태그로 삼고 역시 정해진 문자 하나와 닫는 꺽쇠를 이용해서 닫는 태그로 삼고 그 사이에 언어에 맞는 코드를 집어넣게 된다. 예를 들어 ASP는 <%로 시작해서 %>로 끝나며 PHP는 <?로 시작해서 ?>로 끝나며 그 사이에 프로그램 코드가 들어가게 된다. 만약 웹서버 설정을 잘못해서 지정 확장자에 스크립트 언어로 맵핑하는 것을 잊었다던가 Server Side Script와 Client Side Script의 차이점을 잘 모르는 사람이 실수로 클라이언트에서 실행하게 되면 SSS의 코드는 모두 무시되고 처리된다. 이것은 <로 시작해서 >로 끝나는 항목이 있으면 태그로 인식하는 브라우저의 특정(정확히는 기존 HTML 4.01의 특성)에 기인한 것이다.
Posted by マサキ君
지금까지 원래부터 관리하던 블로그를 가지고 있는 상태에서 흥미본위만으로 어찌저찌 얻어낸 초대장으로 가입한 티스토리. 아무래도 본점이 있다 보니 자연스레 티스토리쪽 블로그는 소홀해 질 수밖에 없었고 이건 뭐, 소홀을 떠나서 아예 손을 대지를 않다 보니 2006년 8월 10일 개설된 이후 글이 하나도 없는게 아닌가-_- (근데 다시 생각해보니 어이가 없다. 2006년 8월 10일이면 내가 군복무하고 있던 기간이 아닌가-_-;;; 나도 참 꼭 해보고 싶었나 보다 ;;;) 아마 추측컨데 그 때도 지금 미투데이 초대장 얻을때처럼 처절했을꺼 같다. 초대장을 보내주신 DARKLiCH님께 괜시리 죄송해진다-_-;;;

그러던 어느날, 사실 이렇게나 글을 안쓰고 오랫동안 방치해두면 서버 용량 문제도 있고 하니 아마 다음측에서 삭제하지 않을까 생각도 했는데 왠걸, 전혀 삭제되지 않고 그.대.로. 있는거다. 그 사실을 발견한 그 날부터 지금까지 이번엔 다음쪽에 계속 미안해지더라. 그래서 티스토리는 뭘로 내용을 채워갈까 정말 진지하게 고민했었다.본점쪽에선 방향성이라는 것도 없이 완전 신변잡기식으로 가고 있었기 때문에 본점쪽에는 뭘 쓰더라도 부담이 없었다. 그렇다는건 본 블로그엔 어떤걸 써도 부담감이나 중압감이 없기 때문에 점점 티스토리에서 멀어진다는 뜻이 된다. 그렇기 때문에 티스토리쪽은 뭔가 주제를 세워서 한가지 방향으로 계속 나아가야만 했다. 그래야 본점에서 떼어나온 의미가 있기 때문이다. 이쪽에도 신변잡기, 저쪽에도 신변잡기면 아무래도 한쪽 쓰다가 다른쪽은 소홀해지기 마련이기 때문에 소홀해지지 않으려면 양쪽이 서로 다른 의미가 있어야 했다.

그래서 정말 고민 많이 했다. 처음엔 개인적으로 맘에 드는 음악들 잔뜩 올려서 음악 블로그를 만들어볼까도 생각했었다-_-

그러다가 퍼득 떠오른것이 바로 개인적으로 적어둘 용어들에 대한 설명을 적어두는 것. 말하자면 용어사전인 셈이다. 전역하고 복학한 뒤 학교에서 보니, 전산쪽을 조금이라도 공부해 본 사람이라면 쉽게 이해할 내용도 다른 사람들은 쉽게 이해하지 못하는걸 봤다. 그래, 이거다. 다른 사람들이 이해하지 못할 내용이라면 나도 언젠가 이해하지 못하는 날이 오겠지. 일차적으로는 다른 사람들에게 참고가 되기 위해, 이차적으로는 내가 참고하기 위해 블로그를 용어사전처럼 쓰자.

그렇기는 하겠지만, 이 용어들이라는 것이 내가 관심이 있는 부분에서 튀어나올 용어인 것만은 확실하기 때문에 아마 대다수가 전산쪽 용어가 되리라고 본다. 아니, 전산쪽 용어만 나오는 것이 이 블로그의 방향성을 확실히 하는 방법이 되겠지. 어쨌건, 그래서 이 티스토리쪽 분점은 이제부터 내가 학교에서 수업을 들으면서 좀 어려운 내용이라 정리해 둘 단어라던가 하는 것의 정의를 적어둘까 생각중이다. 잘 될지는 모르지만 그렇다는 것이다.

ps. 근데 이 블로그에 올라오는 모든 용어에 대한 뜻은 マサキ君 본인이 직접 생각해서 적어놓는 것이기 때문에 틀릴수도 있다는 걸 항상 염두해주셨으면 좋겠다. 아직은 없지만 나중에 UCC 배너도 걸어볼까 생각중이다^^;;;
Posted by マサキ君