2016-08-02 236 views
0

我正嘗試使用mongoX509連接到MongoDB。我正在使用mongo java驅動程序3.3.0 jar。在API參考中,我可以看到MongoCredential通過主題名稱和身份驗證,但我無法在我的代碼中導入。當我反編譯jar時,我也無法看到MongoCredential。使用X509證書連接到MongoDb

我是否缺少任何依賴關係。有沒有簡單的方法連接到Mongodb而不使用MongoCredential?我有的細節是服務器,端口和證書主題名稱?

我可以張貼我想如果有人想看看它,以及提前

感謝

代碼的代碼 - 我使用了SoapUI來運行該代碼

import com.mongodb.MongoClient; 
import com.mongodb.MongoClientURI; 
import com.mongodb.MongoCredential; 
import com.mongodb.DB; 
import com.mongodb.DBCollection; 
import com.mongodb.DBCursor; 
import com.mongodb.DBObject; 

try{ 
    def subjectName="CN=xx,OU=xx,O=xx,C=US,ST=CA,L=xx" 
    MongoCredential credential = MongoCredential.createMongoX509Credential(subjectName); 
    def URI = "mongodb://server1:27017,server2:27017,server3:27017/<<database>>?replicaSet=<<XYZ>>&amp;authMechanism=MONGODB-X509&amp;ssl=true" 
    MongoClientURI uri = new MongoClientURI(URI) 
    MongoClient client = new MongoClient(uri, Arrays.asList(credential)); 
    DB database = client.getDB(<<database>>); 
    collection = database.isAuthenticated(); 
    log.info collection 
    } 
catch (Exception e){ 
    log.info e 
    } 
+0

發佈您的代碼! –

回答

0

這個問題是因爲我使用的jar不正確。我得到了正確的版本,它的工作。