2015-01-20 8 views
0

비밀번호를 사용하여 웹 페이지를 보호하고 싶습니다. 누군가 내 접근 방식을 비판하는지 궁금 하네.비밀번호 보호 웹 페이지

익명 사용자가 페이지로 이동하면 모달이 열리고 암호를 입력하라는 메시지가 나타납니다. 물론 누군가가 영리하고 디스플레이하기로 결정한 경우를 대비하여 뒤에서 어떤 내용도 표시하지 않습니다. 모달.

사용자가 비밀번호를 입력하면 임의로 생성 된 토큰을 리디렉션하여 쿠키로 저장하고이를 확인하여 사용자가 비밀번호를 계속 입력하지 않아도되도록합니다.

개인적으로 컴퓨터에 액세스하는 것 외에도 여기에 보안 문제가 있는지 궁금해하고 또한 개선 할 부분이 있을지 궁금합니다.

일부 세부 사항에 대해 아직 모호하다는 것을 알고 있습니다. 정확한 구현과 관련하여 중요하지 않은 것이 있다면 알려주십시오.

답변

0

끔찍한 생각입니다. 쿠키 인 암호는 모든 HTTP 요청에서 명확하게 전송됩니다. 이 작업을 올바르게 수행하는 방법에 대한 많은 예제가 있습니다. 나는이 질문이 표출 될 가능성이 높기 때문에 상세히 설명하지 않을 것입니다. 어디에도 암호를 저장하지 마십시오. 제출 된 암호로 수행해야 할 첫 번째 작업은 해시 값을 계산하는 것입니다. 해시가 암호가됩니다.

+0

암호가 쿠키가 아니기 때문에 토큰을 쿠키로 저장합니다. – John

+0

db/redis에 저장 될 충분한 길이의 무작위로 생성 된 토큰. – John

+1

나는 "안전 시스템 같은 것은 없다. 단지 불안정한 정도이다."라고 시작해야합니다. 당신의 접근 방식은 작동 할 것이고, 당신은 세션 토큰과 비슷한 것을 구현하고 있는가? 나는 당신이 만료일을 세션 (서버 측에 저장)에두고 세션을 사용자의 IP에 연결할 것이라고 상상한다. 그런 식으로 토큰을 훔쳤다면 사용자의 IP를 스푸핑해서 사용해야합니다. –

1

당신이 설명하는 것이 효과적 일지라도, 일반적으로 자신의 보안을 구현하는 것은 바람직하지 않습니다. https를 사용하여 토큰을 스니핑하지 않더라도 임의의 숫자가 실제로 임의가 아니므로 다음 번호를 추측 할 수 있습니다.

응용 프로그램을 빌드하는 프레임 워크와 함께 제공되는 보안 기능 중 하나를 사용하는 것이 좋습니다. 대부분의 프레임 워크는 폼 기반 인증과 같은 것을 지원합니다. 보안 토큰을 사용하여 클레임 기반 authN을 지원할 수도 있습니다.

사용중인 프레임 워크에 대해 언급하지 않으므로 아무 것도 추천 할 수 없습니다.

+0

사실 전 전체 사용자 인증 시스템을 갖추고 있습니다. 사용자가 비밀번호로 보호되는 페이지를 만들 수있게하려고했습니다. – John

+0

나는 골란을 사용하고 있습니다. – John

+0

원래의 질문에서 분명하지 않았습니다. 사용자가 위키와 같이 웹 페이지를 만들 수있게하려고합니까? 나는 골란에 익숙하지 않다. – MvdD