暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 应设置帮助尝试确定身份验证方法

ASKTOM 2021-07-09
460

问题描述

请在决定与Oracle 19c数据库一起使用的身份验证方法时指出正确的方向,以帮助我保持理智。这是一个非常令人困惑的话题,因为它涉及一些需要使用Microsoft Active Directory或其他非rdbms软件的经验的领域。而且,它们中的每一个都不容易使用,当我参加2000年时,Oracle培训并没有用于实现这些。

这让我发疯,特别是因为我认为数据库身份验证已经足够安全。

这里是我知道存在的所有Oracle身份验证方法:
- Oracle database authentication  ( create user identified by password )
- Operating System authentication ( create OPS$user identified externally ) 
-克伯罗斯 / Radius (create user identified externally as 'kerberos_name' )
- certificate_DN  ( create user identified externally as 'certificat_DN' ) (is this SSL authentication?)
- Globally as 'directory_DN' ( create user identified GLOBALLY as 'directory_DN') ( Sigh ... this sounds so much like other authentication options.)
复制


我不确定这些是否是身份验证方法,但我知道它们与身份验证混在一起并增加了混乱:
-集中管理用户
-企业用户安全

此外,知道何时可以使用Microsoft Active Directory也令人困惑。我认为这些需要Microsoft Active Directory:
-克伯罗斯
-集中管理用户
为了使水更加浑浊,根据我所看到的,Kerberos可以与集中管理的用户一起使用,这令人困惑,因为似乎带有广告的Kerberos就足够了。

最后,我不断看到在某些情况下需要Oracle Internet Directory。似乎唯一需要的是 “企业用户安全”,这似乎是如果我们有Microsoft Active Directory,我们将使用 “集中管理用户” 设置。

我知道我上面提到了很多。如果您至少可以告诉我我应该专注于哪一个来设置安全的身份验证方法而又不过分,那就太好了。哪种方法建议在我们的基础架构中使用以下内容进行最安全的身份验证:

- Enterprise Edition Oracle 19c on Linux with April 2021 RU applied
- SQLNET.TCP.INVITED_NODES 
- FAILED_LOGIN_ATTEMPTS=3
- orc12c_verify_function
- We don't allow use of password file 
- Limit access through Oracle "grants"
- We have changed all default passwords
- We use profiles to expire passwords regularly
- Microsoft active directory which we aren't using.  
- We use CA signed SSL certificates with strong encryption algorithms with FIPS-140-2 configured between database server and clients so we could use "Authentication with Public Key Infrastructure".  
- Our databases are only accessed through the applications not by individual users
复制


为什么上面的不够好?我们唯一不使用的是Microsoft Active directory或SSL客户端身份验证。我认为使用复杂的密码使用CA签名证书进行Oracle数据库身份验证将是一种安全的身份验证方法。为什么Oracle会觉得需要添加更多的身份验证方法,并使我们大多数人感到困惑?使用这种方法,客户端需要知道密码。客户端需要获得CA签名证书才能被允许连接到数据库。客户端被迫使用复杂的密码,仅在FAILED_LOGIN_ATTEMPTS = 3的情况下进行有限的密码尝试,最后,我们设置了TCP.INVITED_NODES,因此仅允许在该列表中具有ip的客户端进行连接。Geezzz,为什么更需要?

谢谢你的帮助,

约翰

专家解答

好的,这里有很多东西要打开 :-)

这在很大程度上取决于您的业务需求。特别是,大多数Kerberos/Global/AD解决方案都是由企业希望其用户具有单一登录功能所驱动的,这既为了方便起见,又为了整个企业的用户操作具有一致的可审计性。它们是对安全性的更 “间接” 改进,例如,如果我的操作系统审计显示 “Connor McDonald” 登录到他的电脑,但数据库显示 “CONNORMC” 登录,那么我们有工作将这些操作联系在一起等。

对Oracle Internet Directory的需求在很大程度上是历史性的,因为除了我们自己的产品之外,我们没有从数据库中访问任何本地目录,因此它被用作数据库与组织中使用的任何非Oracle解决方案 (通常是AD) 之间的桥梁。从18c开始就消除了这种需求。

Why isn't the above good enough?


我认为这很好,但我不为您的公司工作 :-) 我的个人意见是,只要您严格遵守规则,良好的审核并且没有明文流量,您就可以做得很好。这几乎就是我们云数据库的设置方式。
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论