[Couchbase-server]添加用户/更改密码?

Posted

技术标签:

【中文标题】[Couchbase-server]添加用户/更改密码?【英文标题】:[Couchbase-server]Adding user/Changing password? 【发布时间】:2013-10-26 06:30:31 【问题描述】:

我是 couchbase-server 的新手。 我只是想使用http://www.dataoncouchbase.com:8091/index.html 的 UI 浏览 couchbase 服务器中存在的数据。

帐户“管理员”的密码未知。但我需要登录才能查看数据。

    在 couchbase-server 上更改管理员密码的一种技术是以下命令(我确实可以通过命令行访问机器)

$$ /opt/couchbase/bin/couchbase-cli cluster-init -u Administrator -p old_password -c 127.0.0.1:8091 --cluster-init-username=Administrator --cluster-init-password=new_password

但是...只有在您知道旧密码(我没有)的情况下才有效。

    我还尝试修改位于 /opt/couchbase/etc/couchdb/ 的 local.ini 文件并重新启动服务器。我在文件的 [admins] 部分下添加了一个新行(用户名 = 密码)。但是,我也无法使用新用户登录。

如果有人可以给我一种方法来添加新用户(具有读/写权限)或更改管理员密码或指向某些资源来做同样的事情,那就太好了。

【问题讨论】:

【参考方案1】:

第一步:

/opt/couchbase/bin/couchbase-cli reset-admin-password  --new-password 'Pass@2020'
-------
SUCCESS
-------

您可能尝试使用用户名“Administrator”登录,但有时您会看到错误。因为在某些集群中,“Administrator”可能不是默认的硬编码管理员,要查看管理员名称,请参见以下文件(如下):

$ ls -lrth /opt/couchbase/var/lib/couchbase/isasl.pw 
$ cp /opt/couchbase/var/lib/couchbase/isasl.pw /tmp
$ cat /tmp/isasl.pw

    
      "users": [
        
          "n": "**Admin**",

  ------------------here "Admin" is the Administrator account. So use "Admin" as username to login with your new password changed in step1.

【讨论】:

【参考方案2】:

使用您的命令转到您的 Couchbase bin 文件夹。对于 mac,这是 /Applications/Couchbase Server.app/Contents/Resources/couchbase-core/bin

在该文件夹中,执行以下命令: ./couchbase-cli reset-admin-password --new-password test123。 您的新密码将更改为test123

这里是详细指南:https://docs.couchbase.com/server/4.6/cli/cbcli/reset-admin-password.html

【讨论】:

【参考方案3】:

将 couchsync 与 couchbase 结合使用,您可以使用 the administrative REST API 更改所有用户的密码。

curl -vX PUT http://127.0.0.1:4985/yourdbname/_user/youruser --data ""name":"youruser", "password":"newpassword", "admin_channels":["yourlistofchannels"], "admin_roles":["yourlistofroles"]"

【讨论】:

这不是 Couchbase 服务器答案,在 CB 服务器上不起作用。您的答案用于 Couchbase 同步网关,而不是服务器。 是的,我在 Couchbase 服务器上使用 Couchbase 同步网关。【参考方案4】:

好吧,我想通了 :) 我使用 OSX,但我想方式会很相似。

我进入 CouchbaseServer.app 以查看内容。 然后你打开文件夹 Content/Resources/couchbase-core/bin 还有一个叫做 cbreset_password 的程序 :)

然后它要求你更改管理员密码......你去吧。

我觉得和你在一起花了我 2 个小时 :)

【讨论】:

【参考方案5】:

cbreset_password - 它会重置管理员密码,而无需知道之前的信息。

【讨论】:

【参考方案6】:

如果您知道旧密码(我知道这不是您的情况,但我想编写解决方案来帮助知道旧密码的人),您应该阅读:

我用这个命令改变了(虽然它抛出了错误 --> ERROR: option cluster-init-ramsize is not specified);

./couchbase-cli cluster-init -c 127.0.0.1:8091 --user=admin --password=OLDPASS --cluster-init-username=admin --cluster-init-password=NEWPASS

我的配置是;

CentOs Gnu/Linux & 沙发底座 2.5.0

我在目录下运行命令:/opt/couchbase/bin

【讨论】:

【参考方案7】:

我遇到了同样的问题。似乎没有办法重置密码,但它在 config.dat 文件中可见。让我感到震惊的另一件事是用户名......它区分大小写,所以 Admin != admin !!!

【讨论】:

【参考方案8】:

您是否根据to this 查看过“config.dat”,它可能以纯文本形式出现在那里。 (当然,他们在谈论 Web 控制台)。

看来您可能已经有了seen this,但我会参考它以防万一。他们用于存储在 local.ini 中的密码格式包括空格 -> “用户名 = 密码” 他们还建议运行命令 'ls -alR /opt/couchbase-server/etc' 以帮助找出您的问题可能出在哪里。如果最后两个建议不起作用,也许您可​​以在此处发布该命令的输出。

【讨论】:

谢谢斯科特。我得到了解决方案。 就像你说的,我必须访问 config.dat( sudo hexdump -C /opt/couchbase/var/lib/couchbase/config/config.dat | less )。使用此命令,我可以看到明文密码(虽然 config.dat 是二进制文件)。出现为“passwordk..[PASSWORD]jjjh.d”

以上是关于[Couchbase-server]添加用户/更改密码?的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security:添加“伪登录”以更改用户信息

Notion API [Beta]:将用户添加到工作区并更改其权限

Linux用户组的添加及属性的更改

更改和添加SAMBA服务器登陆用户的密码命令是啥?

*仅*在数据库表更改时刷新 html 页面部分(添加行)

Git 配置用户设置“添加条目按钮”被禁用