データベース システムのアクセス制御の側面

1. 背景の紹介

情報システムのセキュリティとは、情報システム内のさまざまな種類のデータリソースを不正アクセス(閲覧、追加、変更、削除など)から保護し、データの整合性、機密性、可用性を確保することです。 Internet of Everything の現在の開発状況では、情報セキュリティが特に重要です。情報セキュリティの重要な部分として、アクセス制御は、情報システムにアクセスするときにユーザーの身元を認証するだけでなく、情報に対するユーザーのアクセス権をきめ細かい方法で制御することもできます。情報システムの基本ソフトウェアであるデータベースは、情報の完全性、機密性、可用性を確保するために、厳格なアクセス制御が必要です。

以下は内容の一部を抜粋したもので、動画をクリックするとフルバージョンがご覧いただけます。

2. アクセス制御モデルの概要

アクセス制御のコア機能と要素

アクセス制御の中核機能: ID 認証とリソース アクセス制御。これらは次の 4 つの側面で具体化されます。 正当な主体が保護されたシステムに入るのを許可する。 正当な主体が保護されたシステムにアクセスすることを禁止する。 許可された主体を実行する。アクセス; 正当な主体による保護されたリソースへの不正アクセスを禁止します。

アクセス制御の 3 つの要素は、サブジェクト、オブジェクト、および制御ポリシーです。

  • サブジェクト、リソースへのアクセスを要求するエンティティ。システム ユーザー、プロセス、デバイスなどが考えられます。
  • アクセスされるリソース エンティティであるオブジェクトは、ファイルまたはデータベース オブジェクトなどです。
  • 制御戦略は属性のコレクションであり、読み取り、書き込み、または実行が可能です。

ID認証

1. パスワードベースの ID 認証は、ID 認証にユーザー名とパスワードを使用します。ほとんどの情報システムはこの方法を使用します。

2. 証明書ベースの ID 認証では、ID 認証に署名付き証明書が使用されます。最も一般的に使用されるのは、TLS (Transport Layer Security、Transport Layer Security Protocol) 証明書です。この方法では、証明書の正当性を検証するだけでなく、証明書とシステムを組み合わせた情報も検証できます。証明書の合法性の検証には、通常、証明書の有効性 (証明書が有効期間内であること) と信頼性 (証明書チェーンが信頼できること) の検証が必要です。システムに組み合わされる情報は通常コモンネームであり、システムユーザーの情報に関連します。

3. 三者認証センターによる本人認証 複雑な業務やサブシステムが多い情報システムでは、本人認証に統一認証センターを利用する必要があります。一般的に使用される統一 ID 認証アーキテクチャには、LDAP、Radius、GSSAPI などが含まれます。 KerberosV5、NTLM、SPNEGO など、GSSAPI の固有の実装が多数あります。

4. 生体認証ベースの ID 認証は、指紋、音声、顔認識、虹彩、手書き文字、手の形、掌紋などを含む各ユーザーの固有の生体認証特性に基づいています。

5. ハードウェアデバイスに基づく本人認証では、ID カードや IC カードなど、ID に関連付けられたハードウェアデバイスが使用されます。

6. OTP (ワンタイムパスワード) は、ID 認証プロセス中に 1 回だけ使用されるパスワードです。パスワードは一度使用すると直ちに無効となり、再利用することはできません。 OTP は通常、単独で使用されることはなく、他の認証方法と組み合わせて、2FA または MFA シナリオで使用して ID 認証のセキュリティを強化する必要があります。

7. HBA (Host-Based Authentication) に基づく ID 認証構成では、指定されたアクセス タイプ、指定されたアクセス リソース、指定されたソース、指定されたユーザーの ID 認証方式と認証パラメーターを構成することで、ID 認証方式の柔軟な構成が実現されます。

3. リソースアクセス制御

アクセス制御モデルの開発履歴

情報セキュリティ 情報化の発展に伴い、アクセス制御モデルも常に進化しています。最も初期のものは MAC (Mandatory Access Control、強制アクセス制御) と DAC (Discretionary Access Control、任意のアクセス制御) で、その後に IBAC (Identity-Based Access Control、アイデンティティベースのアクセス制御) と ACL (Access Control Lists、アクセス制御) が登場しました。コントロールリスト)が登場しました)。

情報システムの発展に伴い、一般的なRBAC(Role-Based Access Control、役割ベースのアクセス制御)が登場し、これをベースにしてABAC(Attribute-Based Access Control、属性ベースのアクセス制御)が開発されました。いくつかの分野、特にデータベース分野では、LBAC (Label-Based Access Control) が開発され、使用されています。

アクセス制御モデルの概要

1. MAC MAC、強制アクセス制御。 MAC の必須の側面は、権限が専任の管理者によって管理されることです。比較的高いセキュリティ要件が要求される機密性の分野において、MAC は MLS (Multi-Level Security、マルチレベル セキュリティ) を中心としたアクセス制御モデルを構築しました。 MLS は当初、複数のアクセス制御層を備えた同心円として考えられ、中心に向けてより高いレベルのセキュリティを備えていました。

2. DAC DAC、自律アクセス制御。 DAC の自律性は、ユーザーが自分の希望に応じてリソースを他のユーザーと選択的に共有できるという事実に反映されています。

3. ACL/IBAC ACL、アクセス制御リスト。 ACL はデータ構造であり、通常はリソース (ファイル、データベース レコード、ネットワーク リソースなど) に直接関連付けられており、アクセス権とそのアクセス許可 (読み取り、書き込み、実行など) を持つユーザーをリストします。 。 ACL は通常、一連のルール (つまり、ACL エントリ) で構成され、各 ACL エントリは、特定のタイプのアクセス要求の許可または拒否を含むアクセス制御ポリシーを定義します。

IBAC、アイデンティティベースのアクセス制御。 IBAC は、ユーザーがその ID (ユーザー名やユーザー ID など) に基づいてリソースにアクセスすることを許可します。アクセス権を個人の ID に直接関連付けることは、アクセス制御の最も直観的な方法の 1 つです。 IBAC はユーザー ID の役割をより重視し、ID 情報を通じてアクセス権を制御します。 IBAC モデルは、ユーザーの ID 情報とリソースのアクセス許可を関連付けることで、ユーザーと許可の関連付けを実現します。 IBAC の中核は、ACL を使用して、どのユーザーがどのリソースにアクセスできるかを定義することです。

4. RBAC RBAC、役割ベースのアクセス制御。 RBAC は、現在の情報システムで最も広く使用されているアクセス制御モデルです。 RBAC の中心的な概念は、アクセス許可がロールに関連付けられ、ユーザーが適切なロールに割り当てられるということです。ロールは、一方ではユーザー コレクションであり、他方ではユーザー コレクションと権限コレクションを組み合わせる仲介者として機能します。オープンソースの分野では、RBAC の有名なオープンソース フレームワークには Spring Security や Apache Roku があります。

実際には、RBAC はさまざまなアプリケーション シナリオに基づいて 4 つの参照モデルを段階的に開発してきました。 • RBAC0: 基本モデル、RBAC のサポートを主張するシステムの最小要件。 • RBAC1: RBAC0 に基づいた、役割階層機能を追加した高度なモデル。ロールはロールのメンバーになることも、その親から権限を継承することもできます。 • RBAC2: RBAC0 に基づく高度なモデルは、ユーザーが多すぎる権限を持つことによって引き起こされる利益相反を回避する機能を追加します。一般的な職務の分離には、静的相互排他ロール、実行時相互排他ロール、カーディナリティ制約 (ロールの総数)、前提条件制約などが含まれます。 • RBAC3: RBAC0 に基づく高度なモデルは、RBAC1 と RBAC2 の利点を組み合わせています。

5. ABAC ABAC、属性ベースのアクセス制御。 ABAC は、関連するエンティティの属性を認可の基礎として使用し、1 つまたは複数の属性が特定の条件を満たすかどうかを動的に計算することによって認可の判断を行います。

ABAC のアクセス制御ポリシー: u 属性を持つユーザーは、c 属性条件下で d オブジェクト属性を持つリソースに対して o 属性を持つ操作を実行することが許可/禁止されます (u、c、d、o はランダムな例です)。したがって、ABAC の中核となるのは、次の 4 種類のエンティティ属性です。 ユーザー属性、ユーザーが所有する属性 (年齢、所属、役職など)、環境属性、アクセス制御の環境条件要素 (現在時刻、アクセス許可時間など)。アクセス、およびアクセスが許可されるサブクラスなど。リソース属性、ファイル タイプ、データ機密性などのリソースが持つ属性、読み取り、書き込み、実行などの許可される操作タイプ。

ABAC は非常に柔軟な権限制御を実現でき、理論的にはほぼすべてのタイプのアクセス制御ニーズを満たすことができます。

6. LBAC LBAC、ラベルベースのアクセス制御。 LBAC では、ユーザーとデータにラベルが割り当てられ、そのラベルに基づいて比較が行われ、ユーザーがデータにアクセスできるかどうかが判断されます。ユーザー、データ、タグの関係は次の図で説明できます。データ ラベル: データ行の機密性を指定します。ユーザー ラベル: ユーザーとデータ間のアクセス仲介はユーザーのラベルに応じて異なります。

4. アクセス制御に関するデータベース標準の要件

「GB/T 20273-2019 情報セキュリティ技術 - データベース管理システムのセキュリティ技術要件」では、アクセス制御の要件には主に 3 つの主要な機能カテゴリの 27 の機能コンポーネントが含まれます。

ユーザーデータの保護

識別と識別

セキュリティ管理

5. KaiwuDB のアクセス制御

KaiwuDB のアクセス制御には、ID 認証とアクセス制御という 2 つの部分も含まれます。

KaiwDB ID 認証

1. パスワードベースの ID 認証 KaiwuDB は、パスワードベースの ID 認証をサポートしています。ユーザーパスワードのセキュリティ対策:

  • パスワード保存暗号化方式(国際アルゴリズムと商業秘密アルゴリズム)
  • パスワードにユーザー名とその逆の順序を含めることはできません
  • パスワードの最小長制限
  • パスワードの最大長制限
  • 大文字の数
  • 小文字の数
  • 桁数
  • 特殊記号の数字
  • 含まれる文字のカテゴリ数の制限 (大文字、小文字、数字、特殊記号)

2. 証明書ベースの ID 認証 KaiwuDB は、TLS 証明書に基づく ID 認証をサポートします。証明書の有効期限と証明書チェーンを確認でき、証明書内の共通名とデータベース システム内のユーザー名を確認できます。

3. 三者統一認証に基づく ID 認証 KaiwuDB は、三者統一認証に基づく ID 認証をサポートしており、具体的な実装は Kerberos V5 統合認証です。

4. 2FAK aiwuDB は、TLS 証明書とパスワードに基づく 2FA をサポートします。

5. HBAK aiwuDB は、指定されたアクセス タイプ、指定されたアクセス リソース、指定されたソース、指定されたユーザー ID 認証方法とその認証パラメーターの構成をサポートするため、ID 認証方法の柔軟な構成が可能になります。

KaiwuDB アクセス制御

1. アクセス制御リスト KaiwuDB は、ユーザーとデータベース オブジェクトのアクセス制御権限を直接管理するアクセス制御リストをサポートしています。

2. RBACKaiwuDB は RBAC1 モデルをサポートし、ロールに基づいてアクセス制御を実行でき、ロールの階層管理と権限の継承をサポートします。

3. LBACKaiwuDB は LBAC アクセス制御をサポートし、タグに基づいてアクセス制御を実行できます。ラベルは現在、ユーザーの許可されたアクセス レベルとデータの機密レベルをマークするレベル コンポーネントをサポートしています。ユーザーは、許可されているアクセス レベルよりも低い機密レベルでのみデータにアクセスできます。

4. ABACKaiwuDB は ABAC をサポートしており、属性に基づいてアクセス制御を実行できます。 ABAC でサポートされるユーザー属性は次のとおりです。

  • CREATEDB/NOCREATEDB: ユーザーの CREATE DATABASE 操作を許可または無効にします。
  • CREATEROLE/NOCREATEROLE: ユーザーの CREATE ROLE および CREATE USER 操作を許可または無効にします。
  • LOGIN/NOLOGIN: ユーザーのログインを許可/無効にします。
  • FAILED_LOGIN_ATTEMPTS: ユーザーに許可されるログイン試行の失敗の最大数。接続制限: ユーザーに許可される同時ログイン接続の最大数。
  • VALID UNTIL: ユーザーのパスワードの有効期間。有効期間を過ぎるとログインできなくなります。

6. KaiwuDB アクセス制御の今後の計画

1.本人認証の今後の予定

本人認証の今後の計画としては、主に以下の機能を実装する予定です。

  • 2FA/MFA: ユーザーパスワードと証明書の 2FA に加えて、検証コードや OTP などの追加など、より多くの 2FA および MFA ID 認証をサポートします。
  • 3 者統合認証と ID 認証: Kerberos V5 に加えて、LDAP や Radius などの 3 者間統合認証をサポートします。

2. アクセス制御の今後の計画

アクセス制御の将来の計画では、主に次の機能を実装する予定です: セキュリティ ロール制限:

  • 三権の分離やより多くの役割と責任の分離などの職務分離機能を含む RBAC3 モデルをサポートします。
  • LBAC機能強化:現行のLevelコンポーネントから、Level、Compartment、Groupコンポーネントを含むLBACへ、さらにこれをベースに列レベル、行レベルなどのよりきめ細かいアクセス制御を実装できるようになりました。
私はオープンソースの産業用ソフトウェアを諦めることにしました - OGG 1.0 がリリースされ、Huawei がすべてのソース コードを提供しました。Google Python Foundation チームは「コード クソ マウンテン」によって解雇されました Fedora Linux 40が正式リリース。有名ゲーム会社がリリース 新規定:従業員の結婚祝儀は10万元を超えてはならない。チャイナユニコム世界初のオープンソースモデルLlama3 8B中国語版をリリース。Pinduoduoに賠償判決国内のクラウド入力方式に500万元の罰金- クラウドデータアップロードのセキュリティ問題がないのはファーウェイだけ
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/u/5148943/blog/11048561