Authentication CouchDB复制-未经授权访问或创建数据库

Authentication CouchDB复制-未经授权访问或创建数据库,authentication,couchdb,replication,Authentication,Couchdb,Replication,我正在尝试设置CouchDB数据库复制,但通过Futon和cURL/CLI这两种方法都不起作用:在这两种情况下都会出现以下错误消息: {“错误”:“未经授权”,“原因”:“未经授权访问或创建数据库表1”} curl -X POST http://127.0.0.1:5984/_replicate -d '{"source": "table1", "user_ctx": {"name": "", "roles": ["admin"]}, "target": "http://username:

我正在尝试设置CouchDB数据库复制,但通过Futon和cURL/CLI这两种方法都不起作用:在这两种情况下都会出现以下错误消息:

{“错误”:“未经授权”,“原因”:“未经授权访问或创建数据库表1”}

curl -X POST http://127.0.0.1:5984/_replicate -d '{"source": "table1",
"user_ctx": {"name": "", "roles": ["admin"]}, "target":   
"http://username:password@server:5984/table1", "create_target": false, 
"continuous": true}' -H "Content-Type: application/json"
目标数据库通过用户名和密码进行保护,对于HTTP基本身份验证,我添加了凭据,如您所见。当我通过Futon创建复制文档时,也会出现相同的错误


谢谢你的帮助。

有点晚了,但我想你需要它

(CouchDb 1.6.1)

POST/_复制HTTP/1.1

{ 
    "source": {
        "url":"https://example.net:5984/table1",
        "headers":{
            "Authorization":"Basic Ym9iQGV4YW1wbGUuY29tOnBhc3N3b3Jk"
        }
    }, 
    "target":"target1", 
    "create_target": false, 
    "continuous": true
}
其中,单词“Basic”后面的base64字符串是以下内容的输出:

  • echo-n'username:password'| base64(在
    https://example.net:5984
  • 非常重要:当您发送请求时,您会将其发送到一个url。目标还应该是您将在其中复制的数据库的名称“target”:“
    http://server:5984/table1
    “-->”表1
  • 用于发送此复制的请求标头也应包含基本令牌。(目标数据库的管理员用户名和密码或超级管理员密码)
简历
  • dXNlcm5hbWUyOnBhc3N3b3JkMg==:用户名2:密码2(base64)
  • YM9IQGV4YW1WBGUY29TONBHC3N3B3JK:用户名:密码(base64)

  • username2:password2:database target1的管理员名称和密码(在
    http://server:5984

  • 用户名:密码:数据库target1的管理员名称和密码(on
    127.0.0.1:5984

这里有人能帮我解决这个问题吗?这个答案解决了我在发布到_replicator多年来遇到的一个问题,我没有意识到我收到了一个“未经授权”的响应。使用“标题”:{“授权”:“基本dfdfg…”coach正确执行复制。coach不接受普通用户名:密码。做得好。
curl -X POST http://127.0.0.1:5984/_replicate 
-d '{ 
    "source": {
        "url":"https://example.net:5984/table1",
        "headers":{
            "Authorization":"Basic Ym9iQGV4YW1wbGUuY29tOnBhc3N3b3Jk"
        }
    }, 
    "target":"target1", 
    "create_target": false, 
    "continuous": true
}' -H "Authorization: Basic dXNlcm5hbWUyOnBhc3N3b3JkMg==;Content-Type: application/json"