sql >> データベース >  >> NoSQL >> MongoDB

GSSException:有効な資格情報が提供されていません(メカニズムレベル:Kerberos tgtが見つかりませんでした)

    回答してくれたすべての人に感謝し、私の質問を見てください。

    いくつかのシステムプロパティと新しいconfファイルを追加した後、ついにMongoDBサーバーに接続できるようになりました。これで更新されたコード-

    try {
            System.setProperty("java.security.krb5.conf","C:/mongodb/UnixKeytab/krb5.conf");
            System.setProperty("java.security.krb5.realm","EXAMPLE.COM");
            System.setProperty("java.security.krb5.kdc","example.com");
            System.setProperty("javax.security.auth.useSubjectCredsOnly","false");
            System.setProperty("java.security.auth.login.config","C:/mongodb/UnixKeytab/gss-jaas.conf");
    
    
            List<ServerAddress> serverAddresses = new ArrayList<ServerAddress>();
            ServerAddress address = new ServerAddress(host, port);
            serverAddresses.add(address);
            List<MongoCredential> credentials = new ArrayList<MongoCredential>();
            MongoCredential credential = MongoCredential.createGSSAPICredential(username);
            credentials.add(credential);
            MongoClient mongoClient1 = new MongoClient(serverAddresses, credentials);
            DB db = mongoClient1.getDB(database);
    
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    

    私のkrb5.confファイルは次のようになります-

    [libdefaults]
         default_realm = EXAMPLE.COM
         default_tkt_enctypes = des-cbc-md5 rc4-hmac
         default_tgs_enctypes = des-cbc-md5 rc4-hmac
         default_keytab_name = <keytab file path>
    [realms]
    EXAMPLE.COM = {
        kdc = example.com
        master_kdc = example.com
        default_domain = EXAMPLE.COM
    }
    INTRANET = {
        kdc = example.com
        master_kdc = example.com
        default_domain = example.com
    }
    

    私のgss-jaas.confは以下のようになります-

    com.sun.security.jgss.initiate {
    com.sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    useTicketCache=false
    principal="[email protected]_REALM"
    doNotPrompt=true
    keyTab="path-to-my-keytab-file"
    debug=true;};
    

    私が投稿したコードは私のために働いています。これが他の人にも役立つことを願っています。



    1. MongoDB Atlasの概要:パート2

    2. 高速書き込みの一時的な行ストレージソリューションのためのMongoDB対Redis対Cassandra

    3. RESTAPIから返された画像は常に壊れて表示されます

    4. ClusterControl1.5ドキュメント-新機能