수색…


소개

Oracle Real Application Security는 Oracle 12c에서 소개되었습니다. 사용자 역할 모델, 액세스 제어, 응용 프로그램 대 데이터베이스, 최종 사용자 보안 또는 행 및 열 수준 보안과 같은 많은 보안 주제를 요약합니다.

신청

응용 프로그램을 데이터베이스의 내용과 연관 시키려면 세 가지 주요 부분이 있습니다.

응용 프로그램 특권 : 응용 프로그램 특권은 SELECT , INSERT , UPDATE , DELETE 등과 같은 특권을 설명합니다. 응용 프로그램 특권은 집계 특권으로 요약 될 수 있습니다.

XS$PRIVILEGE(
    name=>'privilege_name'
    [, implied_priv_list=>XS$NAME_LIST('"SELECT"', '"INSERT"', '"UPDATE"', '"DELETE"')]
)

XS$PRIVILEGE_LIST(
    XS$PRIVILEGE(...),
    XS$PRIVILEGE(...),
    ...
);

응용 프로그램 사용자 :

단순 응용 프로그램 사용자 :

BEGIN 
    SYS.XS_PRINCIPAL.CREATE_USER('user_name'); 
END;

직접 로그인 응용 프로그램 사용자 :

BEGIN 
    SYS.XS_PRINCIPAL.CREATE_USER(name => 'user_name', schema => 'schema_name');
END;

BEGIN 
    SYS.XS_PRINCIPAL.SET_PASSWORD('user_name', 'password'); 
END;
CREATE PROFILE prof LIMIT 
    PASSWORD_REUSE_TIME 1/4440 
    PASSWORD_REUSE_MAX 3 
    PASSWORD_VERIFY_FUNCTION Verify_Pass;

BEGIN 
    SYS.XS_PRINCIPAL.SET_PROFILE('user_name', 'prof'); 
END;

BEGIN 
    SYS.XS_PRINCIPAL.GRANT_ROLES('user_name', 'XSONNCENT');
END;

(선택 과목:)

BEGIN 
    SYS.XS_PRINCIPAL.SET_VERIFIER('user_name', '6DFF060084ECE67F', XS_PRINCIPAL.XS_SHA512“); 
END;

응용 프로그램 역할 :

일반 응용 프로그램 역할 :

DECLARE
    st_date TIMESTAMP WITH TIME ZONE;
    ed_date TIMESTAMP WITH TIME ZONE;
BEGIN
    st_date := SYSTIMESTAMP;
    ed_date := TO_TIMESTAMP_TZ('2013-06-18 11:00:00 -5:00','YYYY-MM-DD HH:MI:SS');
    SYS.XS_PRINCIPAL.CREATE_ROLE
        (name => 'app_regular_role',
        enabled => TRUE,
        start_date => st_date,
        end_date => ed_date);
END;

동적 응용 프로그램 역할 : (authenatication 상태에 따라 동적으로 활성화 됨)

BEGIN
    SYS.XS_PRINCIPAL.CREATE_DYNAMIC_ROLE
        (name => 'app_dynamic_role',
        duration => 40,
        scope => XS_PRINCIPAL.SESSION_SCOPE);
END;

사전 정의 된 응용 프로그램 역할 :

정규병:

  • XSPUBLIC
  • XSBYPASS
  • XSSESSIONADMIN
  • XSNAMESPACEADMIN
  • XSPROVISIONER
  • XSCACHEADMIN
  • XSDISPATCHER

동적 : (응용 프로그램 사용자의 인증 상태에 따라 다름)

  • DBMS_AUTH : (직접 로그온 또는 다른 데이터베이스 인증 방법)
  • EXTERNAL_DBMS_AUTH : (직접 로그온 또는 다른 데이터베이스 인증 방법이고 사용자는 외부입니다)
  • DBMS_PASSWD : (암호로 직접 로그온)
  • MIDTIER_AUTH : (중간 계층 응용 프로그램을 통한 인증)
  • XSAUTHENTICATED : (직접 또는 중간 계층 응용 프로그램)
  • XSSWITCH : (사용자가 프록시 사용자에서 응용 프로그램 사용자로 전환됨)


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow