Warm tip: This article is reproduced from serverfault.com, please click

windows-如何在Oracle中进行Kerberos身份验证?

(windows - How to make Kerberos authentication in Oracle?)

发布于 2020-12-16 19:27:16

我有带有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到计算机名称都找不到,这有凭据问题。我应该更改或添加什么?

Questioner
Sova Kefirova
Viewed
0
Russ 2020-12-19 01:18:33

该错误可能告诉你,对于数据库服务原理(从中发出密钥表的帐户),你尚未在帐户属性中选择“不需要预身份验证”。

对于你的客户端,你应该从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