Datenquelle in Java mit DB2 und KerberosJava

Java-Forum
Anonymous
 Datenquelle in Java mit DB2 und Kerberos

Post by Anonymous »

Ich versuche derzeit, eine Datenbankverbindung in einer DB2 -Datenbank mithilfe der Kerberos -Authentifizierung einzurichten. Ich habe mehrere Threads mit unterschiedlichen Ansätzen gelesen und fühle mich jetzt ziemlich verwirrt. Sollte ich es mit dataSource.setServerName (nameOfServer) , dataSource.setPortnumber (IntegerNumber) usw. hinzufügen oder kann ich es in eine Eigenschaftenvariable hinzufügen?
Bearbeiten:
Ich verwende die com.ibm.db2.jcc.db2SimpledataSource und die Version ist 4.19.49 (danke @mao) < /p>
Bearbeiten 12.01.2024: < /< / p>
Code-Block < /strong> < /p>

Code: Select all

DB2SimpleDataSource dataSource = new DB2SimpleDataSource();
dataSource.setDriverType(4);
dataSource.setServerName("server");
dataSource.setPortNumber(portnumber);
dataSource.setDatabaseName("database name");
dataSource.setSslConnection(true);
dataSource.setClientProgramName("program name");
dataSource.setRetrieveMessagesFromServerOnGetMessage(true);
dataSource.setSecurityMechanism(dataSource.KERBEROS_SECURITY);
Fehlermeldung [/b]

Code: Select all

com.ibm.db2.jcc.am.SqlException: [jcc][t4][10262][11223][4.19.49] Unexpected Throwable caught: class com.ibm.db2.jcc.am.le (in unnamed module @0x49097b5d) cannot access class sun.security.action.GetPropertyAction (in module java.base) because module java.base does not export sun.security.action to unnamed module @0x49097b5d. ERRORCODE=-4228, SQLSTATE=null
at com.ibm.db2.jcc.am.kd.a(Unknown Source)
at com.ibm.db2.jcc.am.kd.a(Unknown Source)
at com.ibm.db2.jcc.am.kd.a(Unknown Source)
at com.ibm.db2.jcc.t4.b.b(Unknown Source)
at com.ibm.db2.jcc.t4.b.a(Unknown Source)
at com.ibm.db2.jcc.t4.b.a(Unknown Source)
at com.ibm.db2.jcc.t4.b.a(Unknown Source)
at com.ibm.db2.jcc.t4.b.(Unknown Source)
at com.ibm.db2.jcc.DB2SimpleDataSource.getConnection(Unknown Source)
at com.ibm.db2.jcc.DB2SimpleDataSource.getConnection(Unknown Source)
at com.ibm.db2.jcc.DB2SimpleDataSource.getConnection(Unknown Source)
at test.connection.TestDbConnectionDataSource.main(TestDbConnectionDataSource.java:81)
Caused by: java.lang.IllegalAccessError: class com.ibm.db2.jcc.am.le (in unnamed module @0x49097b5d) cannot access class sun.security.action.GetPropertyAction (in module java.base) because module java.base does not export sun.security.action to unnamed module @0x49097b5d
at com.ibm.db2.jcc.am.le.a(Unknown Source)
at com.ibm.db2.jcc.am.le.a(Unknown Source)
at com.ibm.db2.jcc.t4.b.a(Unknown Source)
Bei der IBM -Dokumentation lesen > Ich muss @srvlsj.sj.ibm.com durch die Realm meiner Kerberos.conf -Datei ersetzen. Aber was kann ich tun, wenn ich viele Realm ?
PS 1. .Security.krb5.conf "," Path \ krb5.conf "); .
PS 2. Wenn ich in VM-Argumenten dies verwende: --add-exports java.base/sun.security.action = All-nicht namens . Aber ich möchte immer noch ohne dies in VM -Argumenten arbeiten.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post