如何配置基于LDAP的数据库URL为Oracle数据库在Artifactory v7.x?

穆罕默德Kashif
2023-01-22还剩11分08秒

在Artifactory v6中。x, we can easily use the LDAP based DB URL to connect to the database, however, this fails with Artifactory v7.x,as Metadata service cannot establish the connection with the database. To overcome the issue, use the below LDAP request to get the correct "cn" corresponding to the connection details,ldapsearch -x -b cn=OracleContext,dc=int,dc=ora,dc=sbcore,dc=net

new-netservicename.ldif:
dn:cn = testdb1cn = OracleContext, dc =例子,dc = org
对象类:上
对象类:orclNetService
cn: testdb1
orclNetDescString:(描述=(地址= =(协议TCP)(主机= localhost)(端口= 1521))(CONNECT_DATA = (SERVICE_NAME = XE)))
确保我们在new-netservicename中传递正确的值(dn值应该对应于连接细节)。ldif文件,检查匿名。ldif使olcAccess(这里是{2})与前面标识的olcAccess匹配。
替换acl以提供匿名访问

ldapmodify -x -w "config" -D "cn=admin,cn=config" -f anonymous.ldif . config . conf

测试anonymous是否可以找到连接细节

ldapsearch -x -b cn=testdb1,cn=OracleContext,dc=example,dc=org

##配置oracle客户端使用ldap
2个文件需要放在oracle客户端安装路径下。

# # # ldap.ora
' ' '
将此文件放在network/admin子目录或您的
# $ORACLE_HOME location
DIRECTORY_SERVERS = (localhost:389:636)
DEFAULT_ADMIN_CONTEXT = "dc=example,dc=org" <----必须匹配存储连接对象的dc
Directory_server_type = oid
' ' '
# # # sqlnet.ora
' ' '
将此文件放在network/admin子目录或您的
# $ORACLE_HOME location
SQLNET.AUTHENTICATION_SERVICES = (nt)
的名字。Directory_path = (ldap)
' ' '

#配置MDS连接
在系统yaml中,或使用envars:
' ' '
JF_METADATA_DATABASE_URL:: <用户名> / <密码> @testdb1<----必须匹配new-netservicename.ldif中的cn
TNS_ADMIN: / < path_to_instant_client > /网络/ admin
' ' '

#启动MDS
应该是相通的。
在元数据数据库URL中,确保传递相应连接的cn而不是服务名。元数据:
数据库:
url:“去:<用户名> / <密码> @testdb1
这个系统。Yaml如下所示:共享:
节点:
haEnabled:假
id: art1
知识产权:12.34.45.67
env:
LD_LIBRARY_PATH: / opt / instantclient_19_8
TNS_ADMIM: / opt / instantclient_19_8 /网络/ admin
数据库:
类型:甲骨文
司机:oracle.jdbc.OracleDriver
url: jdbc: oracle: thin@ldap: / / < connection_string >: <口> / testdb1, cn = OracleContext, dc =示例中,dc = org
用户名:用户名
密码:密码
artifactory:
端口:8081
tomcat:
连接器:
maxThreads: 200
sendReasonPhrase:真
relaxedPathChars:“[]”
relaxedQueryChars:“[]”
用户:artifactory
访问:
http:
端口:8040
tomcat:
连接器:
maxThreads: 50
sendReasonPhrase:真
元数据:
数据库:
url:“去:<用户名> / <密码> @testdb1”
env:
JF_METADATA_DATABASE_URL:: <用户名> / <密码> @testdb1