2016-06-28 8 views
0

"targeting-dev"という名前のバケットを持つリモートマシン上でcouchbaseサーバーを実行します。今日まで、バケツにはパスワードがありませんでした。私は、そのバケツにアクセスして、私の心のコンテンツに照会することができました。 今日、私はそれ以来Couchbaseがパスワードで保護されたバケツにアクセスできない

./couchbase-cli bucket-edit -c host.ip:8091 -u Admin -p password --bucket=targeting-dev --bucket-password=p4$$w0rd 

を使ってバケツにパスワードを設定し、ものは奇妙なようです。

./cbq -engine="http://targeting-dev:[email protected]:8093/" 

すべてのクエリはパスワードでOKを実行し、認証は失敗することなく実行できます。 (事前にパスワードの回で働いていた)

私は次のようにWebブラウザでクエリを実行しよう:

http://host.ip:8092/targeting-dev/_design/dev_targeting-dev/_view/user_count 

今認証ウィンドウを-ポップアップし、私は「ターゲット-devの/ P4を使用してみました$$ w0rdに「ユーザ名とパスワードのため、それは私がログインできません。最後

、私は次のJavaコードを持っています。

public AbstractRepository(final Database config) { 
    this.config = config; 
    this.cluster = CouchbaseCluster.create(config.getNodes()); 
    this.bucket = cluster.openBucket(bucket, password); 
} 

どこバケツ= 『-devのターゲット』とパスワードを=」 p4 $$ w0rd "デバッガで確認されています。今、次の例外がスローされます

:私は知っている

Constructor threw exception; nested exception is com.couchbase.client.java.error.InvalidPasswordException: Passwords for bucket "targeting-dev" do not match. 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1469) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
[INFO] [talledLocalContainer] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:762) 
[INFO] [talledLocalContainer] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757) 

は、それが1つのバケットにアクセスするには多くのバリエーションを持つ長い質問ですが、誰もがどこにJavaの場合には間違ったつもりで私を啓発してください可能性がありアプリケーションとウェブブラウザのアクセス?

私は(ウェブブラウザ用に)私が使用するポート番号が間違っている可能性があります - いくつかの組み合わせを試みましたが、何も動作しませんでしたか?

答えて

0

私はその原因を見つけたようです - Couchbaseはパスワードに "$"が嫌いです。パスワードを「p455w0rd」に設定すると、ウェブブラウザとJavaアプリの両方の問題が解決されたようです。すべては今働いている。

0

Couchbase Server 5.0では、ロールベースのアクセス制御が導入されました。バケット名と一致する名前のユーザーを作成し、バケットを開くときにそのユーザーのパスワードを使用する必要があります。ユーザーは、バケットへのアクセス権を持つ役割を持っている必要があります。

クラスタcluster = CouchbaseCluster.create(); バケットバケット= cluster.openBucket( "ヒーロー"、 "パスワード");

上記の例では、バケット名は英雄であり、名前が「英雄」のセキュリティーセクションの下にユーザーが作成されている必要があります。バケットを作成してパスワードを追加する際には、オプションは表示されません。

Couchbase Bucket authentication error

関連する問題