转摘:http://hi.baidu.com/521wentao/blog/item/e1cbb21cbc1cd68387d6b621.html
外部认证
如果用户可以直接连接到操作系统,在创建用户时可以指定用户不通过口令,而是通过外部系统认证的方式登录到数据库。在windows操作系统中可以通过修
改注册表实现外部认证。在Oracle
9i版本中,在HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0下面添加字符串键名
OSAUTH_PREFIX_DOMAN,键值设为FALSE;如果是Oracle
10g版本,需要在HEKY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1下面添加字符串键名
OSAUTH_PREFIL_DOMAN,键值设为FALSE。
创建用户:create user ops$lwt identified externally default tablespace users;
授权:grant connect to ops$lwt
ops$前缀是为了兼容以前版本保留的,可以将这个前缀设为空值以使用户名更加简单单纯:
alter system set os_authent prefix='' scope=spfile
如果不再需要使用操作系统认证,可以通过如下命令将用户修改为使用数据库口令认证:
alter user lwt identified by lwtpwd
值得注意的是REMOTE_OS_AUTHENT应该被设置为FALSE,以防止远程系统认证用户的登录:
alter system set remote_os_authent=false scope=spfile
在Linux/UNIX上由于不存在注册表,设置更为简单:
alter system set os_authent_prefix='' scope=spfile;
startup force;
create user oracle identified externally;
grant connet to oracle;
用oracle登录系统
sqlplus /
这样访问数据库。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21584437/viewspace-715779/ ,如需转载,请注明出处,否则将追究法律责任。