为了测试目的,我们更新了Couchbase从4.6 Community Edition到5.0.0-2873 Enterprise Edition,并且我们使用java-client的软件在尝试打开存储桶时开始抛出InvalidPasswordException。不能在没有身份验证的情况下创建桶
正如我所发现的,每个新创建的桶都有authType ='sasl'和一个随机生成的saslPassword。 我试图创建使用CLI水桶代替GUI的:
couchbase-cli bucket-create -c localhost:8091 -u Administrator -p password --bucket=general --bucket-ramsize=1300 --bucket-type=couchbase --bucket-password=
我得到了以下错误:
ERROR: unrecognized arguments: --bucket-password=password
我也是同样的结果尝试了斗编辑功能。
根据documentation该参数应该是有效的。
我也尝试使用REST API来更改桶认证(和类似的密码),但即使这没有引发任何错误,authType和密码保持不变。
curl -X POST -u Administrator:password -d 'authType=none' http://<host>:8091/pools/default/buckets/general
再次,根据documentation这应该工作。
如果我查询sasl密码的桶信息并为openBucket函数提供该连接,但是我们确实不希望在我们的系统中使用此功能。
那么,有没有其他想法可以在我们的5.0EE Couchbase安装中删除桶认证?
这说得很清楚,谢谢! –
如果您配置了多个存储桶,我想没有适当的解决方法?我可以想到一个混乱的解决方法,即以桶的名称命名每个桶创建一个用户。 : - | – prettyvoid
解决方法是使用与您提到的每个存储桶相同的名称创建用户。不过,我建议您更新到您正在使用的SDK的最新版本,并尽快利用RBAC。另外请注意,如果您从5.0之前升级到5.0,则会自动创建用户。如果您确实想要使用具有Couchbase 5.0的旧SDK,则只需要此解决方法。 – mikewied