4.2 マルチユーザー認可
デフォルトでは、Oracle Big Data SQLを使用して実行される問合せは、Hadoopクラスタのoracle
ユーザーとして実行されます。このデフォルト構成のすべてのHadoop監査は、oracle
ユーザーがファイルにアクセスしたことを示しています。
Oracle Big Data SQLには、マルチユーザー認可と呼ばれる機能があり、この機能を使用すると、Hadoopクラスタ上のデータにアクセスする際に、接続済のユーザーを偽装できます。マルチユーザー認可では、oracle
アイデンティティはデータ・アクセスの認可に使用されなくなりました。かわりに、実際に接続しているユーザーのアイデンティティが認可を受けます。また、Hadoop監査は、ファイル・アクセスをoracle
ではなく実際に接続しているユーザーによるものであるとします。
- データベース・ユーザーとして
- Kerberosユーザーとして
- LDAPユーザーとして
- アプリケーション・ユーザーとして
マルチユーザー認可では、管理者はこの接続済ユーザーをどのように導出するかを指定できます。たとえば、LDAPアイデンティティを使用してOracle Databaseに接続するすべてのユーザーは、Hadoopクラスタに対する問合せを実行するときに、自身の認証されたアイデンティティを使用します。また、ユーザーを管理するアプリケーションは、Oracle Databaseクライアント識別子を使用して、現在接続しているユーザーを導出できます(また、そのユーザーのアイデンティティを使用してHadoopクラスタ上のデータへのアクセスを認可できます)。Oracle Big Data SQLには、実際のユーザーを識別するためのルールを含むマッピングが用意されています。
関連項目:
- 「DBMS_BDSQL PL/SQLパッケージ」。このパッケージを使用してマルチユーザー認可を実装する方法が説明されています。
- Apache Foundationのドキュメント(https://sentry.apache.org)。
4.2.1 マルチユーザー認可モデル
マルチユーザー認可機能により、Hadoop Secure Impersonationを使用して、oracle
アカウントに対し、他の指定のユーザーのかわりにタスクを実行するように指示できます。
これにより、唯一のoracle
ユーザーだけでなく、問合せを現在実行しているユーザーに基づいてHDFSデータにアクセスできるようになります。
管理者は、問合せユーザー(現在接続されているユーザー)を識別し、このユーザーを偽装ユーザーにマップするためのルールを設定できます。ユーザーがOracle Databaseに接続する方法が多数あるため、データベース・ユーザー、LDAPを元にするユーザー、Kerberosを元にするユーザー、他のソースを元にするユーザーなどがこのユーザーになります。ファイルに対する認可ルールは問合せユーザーに適用され、監査により、そのユーザーが問合せユーザーであると識別されます。
関連項目:
「DBMS_BDSQL PL/SQLパッケージ」。マルチユーザー認可セキュリティ表、およびその表に対してユーザー・マップを追加および削除するためのプロシージャについて説明されています。