데이터베이스 보안은 무단 사용과 악의적인 사이버 위협 및 공격으로부터 데이터베이스 또는 데이터베이스 관리 소프트웨어를 보호하고 보호하는 데 사용되는 집합적인 조치를 정의합니다. 다음과 같은 다양한 데이터베이스 보안 원칙이 있습니다 -
보안 모델 − 보안 모델은 일반적으로 보안 문제를 조사하기 위한 외부 요소를 생성하고 구현 및 운영과 같은 데이터베이스 고려 사항에 대한 컨텍스트를 지원합니다.
액세스 제어 − 접근 통제의 목적은 항상 명확해야 합니다. 액세스 제어는 분석, 모델 및 운영 비용 측면에서 비용이 많이 듭니다. 알려진 목적을 얻기 위해 알려진 상황, 알려진 표준에 사용할 수 있습니다.
인증 − 클라이언트는 서버의 ID를 생성해야 하고 서버는 클라이언트의 ID를 생성해야 합니다. 이것은 공유 비밀(암호/사용자 ID 세트 또는 공유 전기 및 생체 정보)을 사용하여 완료됩니다. 또한 이전에 인증을 설정한 상위 권한의 시스템에서 생성할 수도 있습니다.
데이터가 분산되는 클라이언트-서버 시스템에서 인증은 피어 시스템에서 적절할 수 있습니다. 인증은 특정 작업에 대한 일부 권한을 제공하지 않습니다. 그것은 DBMS가 사용자가 주장하는 것을 신뢰하고 사용자가 DBMS도 미리 결정된 시스템이라고 신뢰한다는 것을 생성할 수 있습니다.
승인 − 권한 부여는 특정 트랜잭션을 수행하기 위해 권한이 부여된 사용자에게 부여된 권한과 관련됩니다. 따라서 데이터베이스의 상태를 변경하고(writeitem 트랜잭션) 데이터베이스에서 정보를 수신합니다(readitem 트랜잭션). 트랜잭션 기반이어야 하는 권한 부여의 결과는 벡터 - 권한 부여(항목, 인증 ID, 작업)입니다. 벡터는 시스템의 알려진 영역에 있는 일련의 데이터 값입니다.
논리적 수준에서 시스템 구조에는 감사 서버와 협력하는 데 필요한 권한 부여 서버가 필요합니다. 인증이 시스템에서 시스템으로 전송됨에 따라 서버 간 보안 문제와 증폭 문제가 있습니다. 증폭은 트랜잭션에 포함된 DBMS 서버의 수가 많을수록 보안 문제가 커진다고 정의합니다.
액세스 철학 및 관리 − 임의 제어는 권한이 부여된 사용자가 특정 방식으로 사용할 수 있는 특정 자산을 기반으로 명확한 권한이 생성되는 곳입니다. 보안 DBMS는 각 사용자에 대해 관계, 데이터, 보기 및 작업과 같은 개체와 같은 액세스 매트릭스를 만들어야 합니다. 각 항목은 만들기, 읽기, 삽입 및 업데이트 권한을 구분합니다.
권한 부여가 개체마다 변경되기 때문에 이 매트릭스는 매우 복잡해집니다. 행렬의 구현에는 종종 희소 행렬과 관련된 물리적 구현 유형이 필요하기 때문에 행렬이 매우 높을 수도 있습니다. 컴퓨터의 메인 메모리에 매트릭스를 저장할 수 없습니다.