我正在为使用联合昵称的DB2设置进行安全性分析。
在DB2上设置联合昵称时,必须创建包装器和用户映射。对于用户名和密码,必须存储在DB2。
CREATE SERVER V9SAMPLE TYPE DB2/UDB VERSION 9.1 WRAPPER DRDA
AUTHID "USERNAME" PASSWORD "PASSWORD" OPTIONS ( DBNAME 'SAMPLE' );
CREATE USER MAPPING FOR USER SERVER V9SAMPLE OPTIONS
( REMOTE_AUTHID 'USERNAME' REMOTE_PASSWORD 'PASSWORD' );
有人可以告诉我DB2如何在内部存储此凭据,以及是否有任何方法可以从数据库中读取AUTHID和PASSWORD? 我会说明它们必须以纯文本形式存储,因为它们必须作为登录凭据发送到另一个服务器。但这可能会打开攻击媒介,因为Mallory可以恢复凭据。
是否有必要应用任何安全措施来保护保存用于包装和用户映射的密码?
答案 0 :(得分:0)
默认情况下,联合服务器将用户映射存储在全局编录的SYSCAT.USEROPTIONS视图中,并加密远程密码。
SYSCAT.USEROPTIONS
是一个视图,并将密码显示为“********”。查看基础表以查看加密值。 E.g。
db2 "select SUBSTR(SETTING,1,20) from SYSIBM.SYSUSEROPTIONS WHERE OPTION = 'REMOTE_PASSWORD'"
1
--------------------
A����-�;YAS����
上面的页面也说
作为替代方案,您可以使用外部存储库(例如文件或LDAP服务器)来存储用户映射。要提供联合服务器和外部存储库之间的接口,请创建用户映射插件。
并参阅“联合安全性”一节,以阅读有关保护联合系统的选项的更多详细信息 https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.data.fluidquery.doc/topics/iiyvfed_security_fed_sys_l1.html
答案 1 :(得分:0)
Db2-LUW包装密码和用户映射密码以加密方式存储(不以纯文本形式存储)。密码可以是特定于版本的。您无法在数据库中查看明文静止密码。
关于网络上的联合密码,这取决于目标环境。 Db2有不同的选项,从仅密码加密到密码和数据加密,再到TLS - 所有这些都取决于所选的配置项。因此,除非目标环境无法处理加密或相关包装器未实现所需的加密,否则LAN 上的联合密码不需要为纯文本。