Security Db2:如何只向应用程序而不是用户授予特权?

Security Db2:如何只向应用程序而不是用户授予特权?,security,db2,ibm-cloud,Security,Db2,Ibm Cloud,我有一个云应用程序需要访问我的Db2数据库。它需要对某些表进行读写访问。如何限制对特定应用程序和使用模式的访问?我不希望用户ID在该上下文之外具有数据库访问权限。Db2具有的安全特性是。可信上下文描述数据库连接的属性。它由用户ID组成,可以包括应用程序的IP地址或主机名以及所需的连接安全级别,例如,SSL是否是必需的 在云应用程序中,使用没有任何Db2特权的用户id(授权id)。如果存在,则撤销它们 创建一个新的数据库角色。向该角色授予连接权限和所需的表权限 从1)中获取该用户标识。提供应用程序

我有一个云应用程序需要访问我的Db2数据库。它需要对某些表进行读写访问。如何限制对特定应用程序和使用模式的访问?我不希望用户ID在该上下文之外具有数据库访问权限。

Db2具有的安全特性是。可信上下文描述数据库连接的属性。它由用户ID组成,可以包括应用程序的IP地址或主机名以及所需的连接安全级别,例如,SSL是否是必需的

  • 在云应用程序中,使用没有任何Db2特权的用户id(授权id)。如果存在,则撤销它们
  • 创建一个新的数据库角色。向该角色授予连接权限和所需的表权限
  • 从1)中获取该用户标识。提供应用程序的主机名,如果要强制使用SSL,请将
    加密
    属性的值设置为
    。将2)中的角色指定为默认角色
  • 只有以可信上下文对象中定义的方式连接时,userid才能访问数据。有关SQL代码片段和更多链接,请参见此部分。

    您的应用程序(CloudFoundry或Kuberntes)和数据库是否都在Bluemix中


    在这种情况下,您可以将应用程序绑定到DB,平台将直接将DB凭据作为环境变量注入应用程序,或者对于某些CF构建包(Liberty),甚至修改应用程序以添加配置。

    这没有抓住问题和我的答案的重点。凭据仍然是针对常规数据库用户的,包括那些读/写权限。此外,我的问题是针对IBMDB2的。