1

データベースが保護されている場合、couchdb では、「authentication_redirect」構成設定に基づいて「/_utils/session.html」にリダイレクトされます。

db1、db2 などのデータベースがほとんどない場合、db1 の場合は /db1/logon.html に、db2 の場合は /db2/logon.html にリダイレクトするように、couchdb が必要です。

アクセスされているデータベースに基づいて、couchdb を特定のログオン ファイルにリダイレクトすることは可能ですか?

4

2 に答える 2

7

?fail=パラメーターを渡すことができます。認証に失敗したユーザーの送信先をcouchdbに通知します。布団はこのように使用します。

成功した認証;

curl -sv 'localhost:5984/_session?next=/foo&fail=/bar' -d 'name=foo&password=bar'

< HTTP/1.1 302 Moved Temporarily
< Location: http://localhost:5984/foo
{"ok":true,"name":null,"roles":["_admin"]}

失敗した認証;

curl -Haccept:text/html -sv 'localhost:5984/_session?next=/foo&fail=/bar' -d 'name=foo&password=baz'
< HTTP/1.1 302 Moved Temporarily
< Location: http://localhost:5984/bar
{"error":"unauthorized","reason":"Name or password is incorrect."}
于 2013-03-08T17:52:25.467 に答える
1

これを行うと考えることができる唯一の方法は、次のような書き換えを使用することです。

{from: '/db1/*', to: '../../../db1/*'},
{from: '/db2/*', to: '../../../db2/*'}

メインデータベースでは、localhost:5984 から提供されているメインを呼び出します。

必要な設定は futon で次のとおりです。

httpd secure_rewrites false
vhosts localhost:5984 /main/_design/edit/_rewrite

これに関する唯一の問題は、secure_rewrites をオフにする必要があり、セキュリティが台無しになる可能性があることです。

これはテストされていませんが、非常に近いはずです。

于 2013-03-08T17:02:22.937 に答える