데이터 베이스 MySQL 튜토리얼 Oracle操作系统认证用户的安全性

Oracle操作系统认证用户的安全性

Jun 07, 2016 pm 03:30 PM
oracle 무엇 보안 운영 체제 사용자 인증

一。什么是Oracle操作系统用户认证登录方式. 即只要在数据库中创建一个os认证用户。然后,就可以在服务器本机或远程客户端上 创建和登录一个相同用户名,就可以不需要密码连接上本地或远程的数据库了。 最典型的就是“sql / as sysdba”即不用给出用户名和密

一。什么是Oracle操作系统用户认证登录方式.

        即只要在数据库中创建一个os认证用户。然后,就可以在服务器本机或远程客户端上
    创建和登录一个相同用户名,就可以不需要密码连接上本地或远程的数据库了。
        最典型的就是“sql / as sysdba”即不用给出用户名和密码就可以登录到数据库系统中。

二。如何用os用户认证,在本机或远程登录数据库。

1.检查是否已打开了操作系统认证

  $ORACLE_HOME/network/admin/sqlnet.ora

  Windows下检查是否设为NTS.这个NTS为Oracle针对Windows专用的。
  SQLNET.AUTHENTICATION_SERVICES= (NTS)
  UNIX/Linux下,检查是否设为NONE,如果是,则要更改成ALL或注释掉那行。

2.检查密码文件参数是否为EXCLUSIVE
  show parameter REMOTE_LOGIN_PASSWORDFILE

  如不是,可以下面命令更改:
  alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;
  并且检查密码文件是否有创建,如没有,用下列命令创建并输入sys用户的密码。
     orapwd file=orapw$ORACLE_SID passwd=xcl entries=5 force=y;
  可用下面命令来检查sys用户是否有放入密码文件。
      select * from v$pwfile_users;

  附上参数remote_login_passwordfile的参数值说明:
    None: 使得oracle不使用密码文件,只能使用OS认证,不允许通过不安全网络进行远程管理。
    Exclusive: 可以使用唯一的密码文件,但只限一个数据库。密码文件中可以包括除了sys用户的其他用户。
    Shared: 可以在多个数据库上使用共享的密码文件。但是密码文件中只能包含sys用户。通常用于一个dba管理多个数据库的时候。

3.检查远程操作系统认证参数是否为TRUE
  show parameter remote_os_authent

 如不是,可以下面命令更改:
  alter system set remote_os_authent=true scope=spfile;

4. 现有的OS认证关键字与认证用户
  --查看当前数据库OS认证关键字,常为 ops$
  show parameter os_authent_prefix

  --查看现在有无OS认证用户
  SELECT username,password FROM dba_users WHERE username like 'ops$%';
  也可用 alter system set os_authent_prefix="" scope=spfile; 去掉前缀

5. 如有更改过参数,请重启数据库,使参数更改生效。否则略过.
   shutdown immediate
   startup

6. 在数据库创建一个OS认证用户
   a. 在数据库服务上,创建一个myosuser操作系统用户.

      useradd myosuser

      passwd myosuser

   b.在数据库中创建,记得用户名前要加前缀
      -- IDENTIFIED EXTERNALLY 表明此用户通过操作系统来认证
       CREATE USER ops$myosuser IDENTIFIED EXTERNALLY;
       GRANT CONNECT,RESOURCE TO ops$myosuser;
      你也可以将myosuser改成administrator,这样windows客户端连远程数据库时,更明显,更方便。

另一个要注意的地方是OS认证优先于密码文件认证.
7.数据库服务器上,用其本机os用户登录测试
   export ORACLE_SID=xcldb
   export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
   su - myosuser 
   /u01/app/oracle/product/11.2.0/db_1/bin/sqlplus /
   show user 

   注意: myosuser用户要属于dba组角色。

8. 在远程客户端机器连接服务器上的数据库
   在客户端机器上,用myosuser用户登录远程数据库.
   Windows为例:
     a. 创建一个myosuser用户
     b. 授权ORA_DBA或ORA_OPER角色
     c. 检查sqlnet.ora是否为SQLNET.AUTHENTICATION_SERVICES= (NTS)
     d. 输入sqlplus /@remote_xcldb 就可以登录

   当然如果是用administrator用户测试,就没这么麻烦。

三。禁用远程操作系统认证
  a.alter system set remote_os_authent=false scope=spfile;
  b.重启数据库

四。如何禁用OS认证用户登录    
      在$ORACLE_HOME/network/admin/sqlnet.ora 加上下面的语句设为NONE即可。   
   SQLNET.AUTHENTICATION_SERVICES=(NONE)
   Windows和UNIX/Linux都这样做。

五。给sqlnet.ora文件提高安全等级
  chown root:root sqlnet.ora
  chmod 744 sqlnet.ora
  这样,以后只有root用户可以更改里面的值了.

简洁流程:
   远程客户端发起连接 --> 检查库是否可远程连接(remote_os_authent = true) 
--> 检查是否可使用密码文件(remote_login_passwordfile = EXCLUSIVE) --> 检查密码文件
--> 检查 sqlnet.ora可否用os认证用户 ( AUTHENTICATION_SERVICES != NONE) 
--> 检查OS认证用户名是否存在 --> 核对密码 -->登录成功.


MAIL: xcl_168@aliyun.com

BLOG: http://blog.csdn.net/xcl168



본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Linux는 실제로 좋은 것은 무엇입니까? Linux는 실제로 좋은 것은 무엇입니까? Apr 12, 2025 am 12:20 AM

Linux는 서버, 개발 환경 및 임베디드 시스템에 적합합니다. 1. 서버 운영 체제로서 Linux는 안정적이고 효율적이며 종종 고 대전성 애플리케이션을 배포하는 데 사용됩니다. 2. 개발 환경으로서 Linux는 효율적인 명령 줄 도구 및 패키지 관리 시스템을 제공하여 개발 효율성을 향상시킵니다. 3. 임베디드 시스템에서 Linux는 가볍고 사용자 정의 가능하며 자원이 제한된 환경에 적합합니다.

Oracle Loop에서 커서를 만드는 방법 Oracle Loop에서 커서를 만드는 방법 Apr 12, 2025 am 06:18 AM

Oracle에서 FOR 루프 루프는 커서를 동적으로 생성 할 수 있습니다. 단계는 다음과 같습니다. 1. 커서 유형을 정의합니다. 2. 루프를 만듭니다. 3. 커서를 동적으로 만듭니다. 4. 커서를 실행하십시오. 5. 커서를 닫습니다. 예 : 커서는 상위 10 명의 직원의 이름과 급여를 표시하기 위해주기별로 만들 수 있습니다.

Oracle Dynamic SQL을 만드는 방법 Oracle Dynamic SQL을 만드는 방법 Apr 12, 2025 am 06:06 AM

SQL 문은 Oracle의 동적 SQL을 사용하여 런타임 입력을 기반으로 작성 및 실행할 수 있습니다. 단계에는 다음이 포함됩니다 : 동적으로 생성 된 SQL 문을 저장할 빈 문자열 변수 준비. 즉시 실행 또는 준비 명령문을 사용하여 동적 SQL 문을 컴파일하고 실행하십시오. 바인드 변수를 사용하여 사용자 입력 또는 기타 동적 값을 동적 SQL로 전달하십시오. 동적 SQL 문을 실행하려면 즉시 실행 또는 실행을 사용하십시오.

Oracle의 트리거 사용 방법 Oracle의 트리거 사용 방법 Apr 11, 2025 pm 11:57 PM

Oracle의 트리거는 특정 이벤트 (삽입, 업데이트 또는 삭제) 후 자동으로 작업을 수행하는 데 사용되는 저장된 절차입니다. 데이터 검증, 감사 및 데이터 유지 관리를 포함한 다양한 시나리오에서 사용됩니다. 트리거를 만들 때 트리거 이름, 협회 테이블, 트리거 이벤트 및 트리거 시간을 지정해야합니다. 트리거에는 두 가지 유형이 있습니다. 이전 트리거가 작동하기 전에 발사되고 작업 후 트리거가 발사됩니다. 예를 들어, 이전 삽입 트리거는 삽입 된 행의 연령 열이 음수가 아닌지 확인합니다.

Mac 시스템을 발명 한 사람 Mac 시스템을 발명 한 사람 Apr 12, 2025 pm 05:12 PM

MACOS 운영 체제는 Apple에 의해 발명되었습니다. 전임자 인 System Software는 1984 년에 시작되었습니다. 많은 반복 후 2001 년 Mac OS X로 업데이트되어 2012 년에 MacOS로 이름을 변경했습니다.

Centos에서 Zookeeper의 성능을 조정하는 방법은 무엇입니까? Centos에서 Zookeeper의 성능을 조정하는 방법은 무엇입니까? Apr 14, 2025 pm 03:18 PM

CentOS에 대한 Zookeeper Performance Tuning은 하드웨어 구성, 운영 체제 최적화, 구성 매개 변수 조정, 모니터링 및 유지 관리 등 여러 측면에서 시작할 수 있습니다. 특정 튜닝 방법은 다음과 같습니다. SSD는 하드웨어 구성에 권장됩니다. Zookeeper의 데이터는 디스크에 작성되므로 SSD를 사용하여 I/O 성능을 향상시키는 것이 좋습니다. 충분한 메모리 : 자주 디스크 읽기 및 쓰기를 피하기 위해 충분한 메모리 리소스를 동물원에 충분한 메모리 자원을 할당하십시오. 멀티 코어 CPU : 멀티 코어 CPU를 사용하여 Zookeeper가이를 병렬로 처리 할 수 ​​있도록하십시오.

Oracle 데이터베이스를 중지하는 방법 Oracle 데이터베이스를 중지하는 방법 Apr 12, 2025 am 06:12 AM

Oracle 데이터베이스를 중지하려면 다음 단계를 수행하십시오. 1. 데이터베이스에 연결하십시오. 2. 즉시 종료; 3. 셧다운은 완전히 중단됩니다.

Oracle 테이블 이름을 변경하는 방법 Oracle 테이블 이름을 변경하는 방법 Apr 11, 2025 pm 11:54 PM

Oracle 테이블 이름의 이름을 바꾸는 두 가지 방법 : SQL 문을 사용 : Alter Table & LT; Old Table Name & Gt; 이름 바꾸기 & lt; new Table Name & Gt ;; PL/SQL 문화 : 즉시 'Alter Table'|| 실행하십시오. : Old_table_name || '이름 바꾸기'|| : new_table_name;

See all articles