Agile育成ブログ
未来を変える喜びを
未分類

アクセス制御

🔒 アクセス制御とは

アクセス制御(Access Control)とは、組織のデータ資産に対して「誰が」「何に」「何ができるか」を定義し、管理する仕組みです。これは、データの機密性、完全性、可用性を保つための基盤となります。

現代のデータプラットフォームでは、RBAC(ロールベースのアクセス制御)が基本となっており、ユーザーに付与されたロール(役割)に基づいて権限が決定されます。

1. RLS(行レベルセキュリティ):誰のデータを見るか?

RLS(Row-Level Security: 行レベルセキュリティ)は、データテーブルの「行(レコード)」単位でアクセスを制限するセキュリティ機能です。

🔹 RLSの仕組み

同じテーブルに対してクエリを実行しても、ユーザーのロールや属性(部署、地域、役職など)に基づいて、そのユーザーに許可された特定の行のみが表示されます。

  • 例: 営業担当者が売上データを見る際、RLSポリシーにより、自身が担当する「地域」の売上データの行のみが表示され、他の地域のデータは表示されません。

RLSは、組織のセキュリティポリシー(例:個人情報保護、地域別コンプライアンス)を厳格に適用するために不可欠です。


2. OLS(オブジェクトレベルセキュリティ):何の情報を見るか?

OLS(Object-Level Security: オブジェクトレベルセキュリティ)は、データテーブルの「オブジェクト(列/カラム)」単位でアクセスを制限するセキュリティ機能です。

🔹 OLSの仕組み

ユーザーがテーブル全体にアクセス権を持っていても、OLSポリシーにより、特定の機密性の高い列(カラム)の参照が禁止されます。

  • 例: 人事データを見る際、マネージャーはすべての列を見ることができますが、一般社員は「給与」の列「評価スコア」の列がマスキングされたり、完全に非表示になったりします。

この機能は、プライバシー保護や、職務上不要な機密情報を不用意に公開しないために重要です。


3. 標準対応と現代のデータプラットフォーム

RLSとOLSは、現在、多くのクラウドデータウェアハウス(DWH)および主要なBIツールで標準的にサポートされています。

プラットフォーム機能名対応状況
SnowflakeDynamic Data Masking (OLS), Row Access Policies (RLS)標準対応
BigQueryColumn-level security (OLS), Row-level security (RLS)標準対応
Power BIRLS標準対応(データモデル内で定義)
TableauUser-based filtering (RLS), Column hiding (OLS)標準対応