'phpsource/회원인증'에 해당되는 글 22건

  1. 2000.10.10 {회원인증에 대하여}02.회원전용 웹사이트
  2. 2000.10.10 {회원인증에 대하여}01.사용자인증
phpsource/회원인증2000. 10. 10. 15:05
회원 인증이 필요한 웹사이트
회원 전용 웹사이트에서는 회원만이 웹사이트에 접근할 수 있도록 회원 인증을 수행하게 됩니다. 이러한 회원인증이 필요한 웹사이트로는 회원전용 BBS, 회원제 강의실, 쇼핑몰 등이 있을 겁니다.
동작 순서
회원전용 서비스를 받기 위해서는 가장 먼저 회원 가입을 통해 회원으로 등록하여야 하고, 회원 가입을 마친 등록자는 로그인 과정을 통해 자신을 회원으로 인증받게 됩니다. 여기서 인증이 성공적으로 이루어지면 그 방문자는 회원전용 웹페이지에서 제공하는 모든 서비스를 받을 수 있습니다. 서비스 받는 동안에 발생하는 각종 세션 정보들은 쿠키, 파일 또는 별도의 데이터베이스에 저장되고, 이러한 저장된 정보들은 세션 내의 다른 페이지 또는 또 다른 세션에서 필요에 따라 사용됩니다. 방문자가 더 이상 서비스 받기를 원치 않으면 로그아웃하여 사이트를 떠날 수도 있으나 대부분의 방문자는 로그아웃 과정을 거치지 않고 곧바로 떠나게 됩니다. 이와 같이 회원전용 웹사이트에서는 방문자와 웹애플리케이션 사이에는 일정한 상호작용을 통해 모든 동작이 적절히 이루어지게 됩니다. 최초 접근 단계부터 마지막으로 종료하는 단계까지를 도식적으로 나타내면 아래와 같은 과정을 거치게 됩니다.
< 회원전용 웹사이트의 동작 >
세션 상태 유지
인터넷의 기본 프로토콜인 HTTP(HyperText Transfer Protocol)를 사용하면, 웹 페이지에 대한 각각의 요구는 다른 요구들과 상관 관계없이 모두 독립적입니다. 즉, 현재 페이지에 대한 데이터를 모두 수신하게 되면 웹서버는 현재 접속된 브라우저에 대하여 자동으로 세션이 종료합니다. 다음에는 웹브라우저에서 모든 것이 처리되기 때문에 웹서버와의 관계는 완전히 끊어지게 됩니다. 즉, 웹서버와 웹브라우저는 파일 단위의 요청, 연결, 송수신을 기본으로 하고 있습니다. 그렇기 때문에 웹서버는 그 방문자에게 이전에 어떠한 페이지가 보내어졌는지에 관한 아무런 기록도 가지고 있지 않으며, 심지어 그 방문자가 이전에 방문했었는지 조차 알기 어렵습니다.
이러한 문제로 인하여 회원전용 웹사이트를 구성하는 복수페이지 내에서 공유하여야 하는 정보를 유지할 수가 없습니다. 따라서 회원전용 웹사이트를 개발하려면 이러한 웹사이트에 특정 방문자가 머무르는 시간(세션) 동안에 웹서버가 유지하여야 하는 데이터를 묶는 방법이 필요하게 됩니다. 이 방법을 세션 관리라고 하며 이와 같이 함으로써 여러 페이지로 구성된 웹사이트 내에서 필요한 정보를 유지할 수 있습니다. 마치 여러 개의 웹애플리케이션을 하나의 웹애플리케이션인 것처럼 속이는 것(?)이지요.
세션 상태 유지로 얻게 되는 이점
유지되어야 하는 세션 정보로는 개인 ID와 비밀번호, 방문자가 접속했던 페이지, 쇼핑몰의 경우에는 어떤 제품을 구입했는지 등이 있습니다. 이와 같은 정보는 방문자가 전에 방문했을 때 관심을 보인 서비스 부분을 확인할 수 있으므로 이에 따라 방문자 기호에 맞는 서비스를 제공할 수 있습니다. 회원전용 웹사이트를 개발하는 면에서보면 필수적인 것이라고 할 수 있습니다. 또한 방문자가 회원전용 웹사이트에 한번 로그인하면 동일 웹사이트의 다른 서비스 페이지에 접속하더라도 다시 ID와 비밀번호를 입력할 필요가 없습니다. 그러나 세션 상태가 유지되지 않는다면 방문자는 동일 웹사이트에서 다른 서비스 페이지를 방문할 때마다 회원정보를 계속 입력해야 하는 불편함이 있습니다. 따라서 회원제로 운영되는 웹사이트를 이용할 때는 방문자의 불편을 해소하는 차원에서도 세션 상태를 유지하는 것은 불가피합니다.

Posted by 방글24
phpsource/회원인증2000. 10. 10. 15:02
회원인증
요즘 새로이 나타나고 있는 웹사이트들을 살펴보면 회원만이 이용할 수 있는 곳이 부쩍 늘어나고 있습니다. 회원전용 BBS, 회원제 교육 프로그램 및 회원제 쇼핑몰 등이 거의 모두 회원제로 운영되고 있습니다. 이러한 회원 전용 웹사이트를 개발하기 위해서는 일반 웹사이트에서는 볼 수 없는 로그인을 통해 회원 인증(또는 사용자 인증)이라는 단계를 거쳐야 원하는 서비스를 제공받을 수 있습니다. 이 외에도 회원전용 웹사이트만이 고려해야 할 것이 상당히 많이 있습니다. 그러나 이러한 회원전용 웹사이트를 개발하는데 필요한 정보를 찾으려면 대부분 단편적인 것을 얻을 수는 있으나 이를 종합적으로 정리되어 있는 곳은 찾기 힘든게 현실인 것 같습니다. 따라서 새로이 회원전용 웹사이트를 개발하려는 개발자에게 다소나마 도움이 되고자 회원인증에 대한 자료를 정리해 보았습니다. 여기에 있는 내용은 새로운 내용이라기 보다는 대부분이 기존에 PHP 관련 정보를 제공하고 있는 웹사이트나 관련 서적에 있는 내용을 정리한 것이라 혹시 저작권과 관련된 문제가 발생할까 다소 염려스러우나 이러한 부분이 있다면 저한테 연락을 주시면 수정 또는 삭제하도록 하겠으니 해당 저작자 분들은 넓은 아량으로 이해하여 주시기 바랍니다.
인증이란?
인증은 방문자의 신원을 확인하는 것을 뜻하는 것으로 보안의 수단으로 사용되고 있습니다. 즉, 허가되지 않은 방문자가 부당하게 접근하는 것을 방어하기 위하여 사용되는 접근 제어 수단의 하나로 방문자가 웹사이트 이용 가능 목록(사용자가 등록되어 있는 데이터베이스)에 등록되어 있는 등록자와 같은 사람인지 판단하는 과정을 말합니다. 이를 Identification이라고도 합니다. 이러한 인증은 보통 전자상거래에서 본인의 여부를 확인할 때 사용하는 것으로 사용자 ID와 비밀번호를 통해 확인합니다. 이와 같이 웹사이트에 접근하는 방문자가 정당한 방문자임을 확인하는 것을 사용자 인증이라고 합니다. 본 문서는 회원전용 웹사이트를 개발할 때의 고려해야 할 인증 만을 대상으로 하겠으며 따라서 이러한 회원전용 웹사이트에서의 사용자 인증을 회원 인증이라고 부르겠습니다.
회원 인증 과정
회원전용 웹사이트로 처음 들어오는 새로운 방문자들은 우선 회원가입 프로그램을 통하여 자신을 회원 데이터베이스(회원 정보 테이블)에 신규 등록한 후 자신을 인증할 수 있도록 하며, 기존에 이미 회원으로 가입했던 방문자들은 단지 회원ID와 비밀번호 만을 입력하여 자신을 인증하게 됩니다. 인증이 성공적으로 이루어지면 그 방문자는 회원전용 웹사이트에서 제공하는 모든 서비스를 받습니다. 이러한 로그인 과정을 거쳐서 회원 인증을 받게 됩니다.
< 회원 인증 과정 >
회원인증ID
회원인증ID는 회원전용 페이지에 접근하기 위해 회원임을 증명하는 식별자(ID)이며, 이 인증ID는 로그인에 성공하게 되면 발급받게 됩니다. 로그인에 성공한 후부터 로그아웃할 때까지를 특정 세션이라고 한다면 회원인증ID는 이 특정 세션에서만 통용되는 식별자라고 할 수 있습니다. 일단 로그인 과정을 통해 회원인증ID를 발급받게 되면 이 인증ID에 의해 회원전용 웹페이지에서 제공하는 모든 서비스를 받을 수 있게 됩니다. 방문자가 더 이상 회원 서비스 받기를 원치 않으면 로그아웃할 것이고, 로그아웃 과정에서 회원인증ID가 삭제될 것 입니다.
회원 데이터베이스(회원 정보 테이블)
웹사이트를 회원제로 운영하기 위해서는 회원에 대한 정보가 필요하며 이러한 회원정보는 데이터베이스를 이용하여 회원정보테이블을 구성하게 됩니다. 회원 정보 테이블에 기록되는 회원 정보는 보통 회원 가입을 통하여 얻게 됩니다. 회원에 가입한 방문자는 향후 회원 전용 서비스를 받기 위해서는 회원 ID와 비밀번호만을 입력하여 입력된 정보와 회원 정보 테이블에 있는 정보를 비교하여 정식 회원임을 인증받게 되는 것입니다. 회원 인증을 하기 위해서는 이와 같이 회원 정보 테이블이 꼭 필요하게 되며, 이러한 회원 정보 테이블은 보통 MySQL과 같은 관계형 데이터베이스를 이용하게 되며, 이 테이터베이스에 회원 정보 테이블을 생성한 후 회원 정보를 등록, 수정, 삭제 및 확인하게 됩니다. 웹기반에서 회원관리를 하신다면 웹서버의 Real 계정으로 관리할 수 있겠지만 대부분의 방문자는 서버상에 계정이 없으므로 이러한 개인 사용자의 경우에는 회원 정보 테이블의 가상 계정(회원 ID)을 통하여 회원 인증을 하는 것이 보통입니다.

Posted by 방글24