#身份认证

数据库身份认证(Authentication)是确认一个用户(主体)所声称身份的过程,又称“认证”、“鉴权”。YashanDB对认证的技术实现包括数据库认证和操作系统认证。

# 数据库认证/密码(口令)认证

YashanDB将接收到的用户输入的凭证与服务端存储的用户凭证进行对比,完全一致的密码才能通过认证。

为了支持数据库启动不同的阶段的用户密码验证,根据密码的存储位置可分为:

  • 密码文件:存储在数据库服务器上,是系统用户sys所设置的凭证,此凭证独立于数据表存储,可满足数据库处于非OPEN状态时的登录认证。

  • 系统表:主要是使用存储在数据库系统表中的凭证字段,该字段根据创建用户或修改用户时所设置的密码生成,并与用户信息一同记录。

在密码认证的过程中,系统会根据策略制定的规则,对用户的密码行为和属性进行判断并作出相应的动作,应包括:

  • 为防止恶意攻击者反复登录尝试猜出密码,当用户因为密码错误连续登录失败达到阈值时,将被锁定一定时间。

  • 用户长时间使用同一密码会影响数据库安全,因此系统对于密码的生命长度进行限制。

  • 系统在用户登录过程中发现密码已使用超过限制天数时,将进行额外宽限期处理,并打印告警日志提示。宽限期过后,该密码完全过期,客户端提示用户输入新密码,用户可以立即更新密码。

  • 为防止用户长时间使用相同密码,用户在设置新密码时还需要满足密码复用限制,不允许复用一定时间内使用过的密码以及最近变更次数内使用过的密码。

  • 启用密码强度控制,在密码设置时要求满足一定的复杂度要求。

# 操作系统认证

操作系统认证表示YashanDB直接复用操作系统对登录服务器的用户的身份验证,不再对其进行数据库级别的身份验证,使其可以免YashanDB用户口令(或以任何口令)直接采用UDS本地连接到对应的数据库实例。

服务器的任一用户若通过操作系统身份认证方式登录到YashanDB,都将是YashanDB的系统用户sys身份(即拥有数据库全部权限的超级管理员身份),可以执行任何管理操作。

pdf-btn 下载文档
copy-btn 复制链接