2015-01-20 1 views
1

지난 하루 또는 이틀 동안 내 머리를 뽑아 보았으므로 그 답을 나누겠다고 생각했습니다.couchdb 인증에서 401 응답 얻기

문제점 : 일부 http 라이브러리 또는 다른 서버를 사용하여 클라이언트 측에서 인증 쿠키를 가져 오려고하면 401 Unauthorized 응답이 표시됩니다. 비록 당신이 을 알고 있지만 사용자 이름과 암호가 정확하고 모든 예제에서 정확히 어떻게 수행되는지 정확하게 알고 있습니다. 음, 내 친구, 문제는 당신이 일이 의미가 있다고 기대한다는 것입니다.

답변

1

couch db config에서 require_valid_user를 true로 설정 한 다음 인증 요청에 해당 자격 증명을 포함하지 않으면 (인증하는 자격 증명이 유효하더라도) couch가 거부합니다 손에서. 그래서 당신은 정말 두 가지 옵션,

  1. 사실 require_valid_user을 유지하고 당신이 URL의 일부로서 관리자의 사용자 이름과 암호에 괴짜 수있는 (= 너무 URL처럼 http://admin:[email protected]:5984)를 자신의 서버에 인증을 수행을했습니다. 그런 다음 자격 증명을 인증하고 그로부터 얻을 수있는 쿠키를 다시 전달합니다. (이후 요청에서 withCredentials를 포함하는 db에 클라이언트에서 곧바로 요청하십시오. true로 설정하면 브라우저가 요청과 함께 쿠키를 보냅니다.)

  2. 각 요청마다 유효한 사용자가 필요하지 않으며 대신 디자인 문서 및 데이터베이스 보안 수준에서만 인증하십시오. 내가 그 일을하지 않았기 때문에 이것이 얼마나 안전한 지 보증 할 수는 없다.

관련 문제