我有带有myora.local
域和AD的Windows Server 2008 r2 。有服务器Oracle。我在Win7上有客户端。在服务器上:
-C:\ krb \ krb.conf
MYORA.LOCAL
MYORA.LOCAL myora.local admin server
-C:\ krb \ krb5.realms
[libdefaults]
default_realm=MYORA.LOCAL
[realms]
MYORA.LOCAL= {
kdc=DomainController.myora.local:88
}
[domain_realm]
.local.myora=MYORA.LOCAL
-sqlnet.ora
SQLNET.KERBEROS5_CONF= c:\krb\krb.conf
SQLNET.KERBEROS5_REALMS = c:\krb\krb5.realms
SQLNET.KERBEROS5_CC_NAME = C:\krb\v5srvtab
SQLNET.AUTHENTICATION_SERVICES= (BEQ, TCPS, NTS, KERBEROS5)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
SQLNET.KERBEROS5_CONF_MIT = TRUE
SQLNET.AUTHENTICATION_KERBEROS5_SERVICE = krbtgt
okinit用于Kefir@MYORA.LOCAL(计算机服务器上的用户名)
我在客户端上执行所有相同的步骤(sqlnet.ora除外),但是okinit抛出错误: 从本地名称user1到计算机名称都找不到,这有凭据问题。我应该更改或添加什么?
该错误可能告诉你,对于数据库服务原理(从中发出密钥表的帐户),你尚未在帐户属性中选择“不需要预身份验证”。
对于你的客户端,你应该从sqlnet.ora中的身份验证服务列表中删除beq。如果你不使用它们,还请删除NTS(Windows本机)和TCPS(证书)。
在你的krb5.conf文件中,将大写字母以及不带句点作为前缀的别名添加到域域中,如下所示:
[domain_realm]
.local.myora=MYORA.LOCAL
local.myora=MYORA.LOCAL
.MYORA.LOCAL=MYORA.LOCAL
MYORA.LOCAL=MYORA.LOCAL
你可能想看一下该视频-有可能它会回答你可能会遇到的其他问题 https://www.youtube.com/watch?v=d_d0j9ssQys&ab_channel=OracleDevelopers