Azure Data Lake Store に格納されているデータのセキュリティ保護

Azure Data Lake Store のデータをセキュリティで保護するには 3 つの手順が必要です。

  1. まず、Azure Active Directory (AAD) でセキュリティ グループを作成します。 これらのセキュリティ グループを使用して、Azure Portal でロールベースのアクセス制御 (RBAC) を実装します。 詳細については、Microsoft Azure でのロールベースのアクセス制御に関するページを参照してください。
  2. AAD セキュリティ グループを Azure Data Lake Store アカウントに割り当てます。 これにより、ポータルから Data Lake Store アカウントへのアクセス、およびポータルまたは API による管理操作が制御されます。
  3. AAD セキュリティ グループをアクセス制御リスト (ACL) として Data Lake Store ファイル システムに割り当てます。
  4. さらに、Data Lake Store 内のデータにアクセスできるクライアントの IP アドレスの範囲を設定することもできます。

この記事では、Azure ポータルを使用して上記タスクを実行する方法について説明します。 Data Lake Store でアカウントおよびデータのレベルでどのようにセキュリティが実装されるかについては、「 Security in Azure Data Lake Store (Azure Data Lake Store のセキュリティ)」を参照してください。 Azure Data Lake Store で ACL がどのように実装されているかについては、Azure Data Lake Store のアクセス制御の概要に関するページを参照してください。

前提条件

このチュートリアルを読み始める前に、次の項目を用意する必要があります。

Azure Active Directory でセキュリティ グループを作成する

AAD セキュリティ グループを作成する手順および AAD セキュリティ グループにユーザーを追加する手順については、「 Azure Active Directory のセキュリティ グループの管理」を参照してください。

注意

Azure Portal を使用すると、Azure AD のグループにユーザーとその他のグループの両方を追加できます。 ただし、サービス プリンシパルをグループに追加するには、Azure AD の PowerShell モジュールを使用します。

# Get the desired group and service principal and identify the correct object IDs
Get-AzureADGroup -SearchString "<group name>"
Get-AzureADServicePrincipal -SearchString "<SPI name>"

# Add the service principal to the group
Add-AzureADGroupMember -ObjectId <Group object ID> -RefObjectId <SPI object ID>

ユーザーまたはセキュリティ グループを Azure Data Lake Store アカウントに割り当てる

ユーザーまたはセキュリティ グループを Azure Data Lake Store アカウントに割り当てる場合は、Azure ポータルと Azure リソース マネージャー API を使用して、アカウントに関する管理操作へのアクセスを制御します。

  1. Azure Data Lake Store アカウントを開きます。 左側のウィンドウで、[参照][Data Lake Store] の順にクリックし、[Data Lake Store] ブレードで、ユーザーまたはセキュリティ グループを割り当てるアカウント名をクリックします。

  2. Data Lake Store アカウントの [設定] ブレードで、[アクセス制御 (IAM)] をクリックします。 ブレードには、既定で [サブスクリプション管理] グループが所有者として表示されます。

    セキュリティ グループを Azure Data Lake Store アカウントに割り当てる

    グループを追加し関連するロールを割り当てるには 2 つの方法があります。

    • アカウントにユーザーまたはグループを追加して、ロールを割り当てる。あるいは、
    • ロールを追加し、ロールにユーザーまたはグループを割り当てる。

      このセクションでは、グループを追加してからロールを割り当てるという 1 番目の方法を説明します。 同様の手順を実行して、ロールを選択してからグループをそのロールに割り当てることもできます。

  3. [ユーザー] ブレードの [追加] をクリックして [Add access (アクセスの追加)] ブレードを開きます。 [Add access (アクセスの追加)] ブレードで、[Select a role (役割の選択)] をクリックし、ユーザーまたはグループのロールを選択します。

    ユーザーのロールを追加する

    [所有者] ロールと [共同作成者] ロールは、Data Lake アカウントでさまざまな管理機能へのアクセスを許可します。 Data Lake 内のデータと対話するユーザーについては、該当するユーザーを [閲覧者] ロールに追加できます。 これらのロールの適用範囲は、Azure Data Lake Store アカウントに関連する管理操作に限定されます。

    データ操作の場合、ユーザーが行える操作はファイル システムの個々のアクセス許可によって定義されます。 そのため、閲覧者ロールを持つユーザーはアカウントに関連付けられた管理設定しか表示できません。しかし、場合によっては、そのユーザーに割り当てられているファイル システムのアクセス許可に基づいて、データの読み取りおよび書き込みができます。 Data Lake Store ファイル システムのアクセス許可については、セキュリティ グループを ACL として Azure Data Lake Store ファイル システムに割り当てる方法に関するページを参照してください。

  4. [Add access (アクセスの追加)] ブレードの [Add users (ユーザーの追加)] をクリックして [Add users (ユーザーの追加)] ブレードを開きます。 このブレードで、前に Azure Active Directory で作成したセキュリティ グループを検索します。 検索対象のグループが多数存在する場合は、上部にあるテキスト ボックスを使用してグループ名をフィルター処理できます。 [選択]をクリックします。

    セキュリティ グループを追加する

    一覧表示されていないグループまたはユーザーを追加する場合は、 [招待] アイコンをクリックしてからユーザーまたはグループの電子メール アドレスを指定することで、該当するユーザーを招待することができます。

  5. [OK]をクリックします。 次に示すように追加したセキュリティ グループが表示されます。

    追加されたセキュリティ グループ

  6. これで、ユーザーまたはセキュリティ グループは、Azure Data Lake Store アカウントにアクセスできるようになりました。 特定のユーザーにアクセス権を付与する場合は、対象ユーザーをセキュリティ グループに追加します。 同様に、ユーザーのアクセス権を取り消す場合は、セキュリティ グループから対象ユーザーを削除します。 アカウントには複数のセキュリティ グループを割り当てることもできます。

ユーザーまたはセキュリティ グループを ACL として Azure Data Lake Store ファイル システムに割り当てる

Azure Data Lake ファイル システムにユーザーまたはセキュリティ グループを割り当てて、Azure Data Lake Store に格納されたデータに対するアクセス制御を設定します。

  1. Data Lake Store アカウントのブレードで、 [データ エクスプローラー]をクリックします。

    Data Lake Store アカウントにディレクトリを作成する

  2. [データ エクスプローラー] ブレードで、ACL を構成するファイルまたはフォルダーをクリックし、[アクセス] をクリックします。 ACL をファイルに割り当てるには、[ファイルのプレビュー] ブレードから [アクセス] をクリックする必要があります。

    Data Lake ファイル システムに ACL を設定する

  3. [アクセス] ブレードには、既にルートに割り当てられている標準アクセスとカスタム アクセスが一覧表示されます。 [追加] アイコンをクリックして、カスタムレベルの ACL を追加します。

    標準アクセスとカスタム アクセスを一覧表示する

    • 標準アクセスは UNIX 形式のアクセスです。この場合は、読み取り、書き込み、実行 (rwx) を 3 つの個別のユーザー クラス (所有者、グループ、その他) に指定します。
    • カスタム アクセスは POSIX ACL に対応します。この場合、ファイルの所有者またはグループだけでなく、特定の名前付きユーザーまたはグループにもアクセス許可を設定することができます。

      詳細については、 HDFS ACLを参照してください。 Azure Data Lake Store で ACL がどのように実装されているかについては、Azure Data Lake Store のアクセス制御に関するページを参照してください。

  4. [追加] アイコンをクリックして、[カスタム アクセスの追加] ブレードを開きます。 このブレードの [ユーザーまたはグループの選択] をクリックし、[ユーザーまたはグループの選択] ブレードで、既に Azure Active Directory で作成してあるセキュリティ グループを検索します。 検索対象のグループが多数存在する場合は、上部にあるテキスト ボックスを使用してグループ名をフィルター処理できます。 追加するグループをクリックして、 [選択]をクリックします。

    グループを追加する

  5. [アクセス許可の選択] をクリックして、アクセス許可を選択するともに、このアクセス許可に既定の ACL、アクセス ACL、またはその両方のいずれを割り当てるか選択します。 [OK]をクリックします。

    グループにアクセス許可を割り当てる

    Data Lake Store でのアクセス許可と既定/アクセス ACL の詳細については、「Data Lake Store のアクセス制御」を参照してください。

  6. [カスタム アクセスの追加] ブレードで [OK] をクリックします。 新しく追加されたグループは、関連付けられたアクセス許可と一緒に [アクセス] ブレードに一覧表示されます。

    グループにアクセス許可を割り当てる

    重要

    現在のリリースでは、 [カスタム アクセス]に設定できるエントリは 9 個のみです。 9 を超えるユーザーを追加する場合は、セキュリティ グループを作成し、セキュリティ グループにユーザーを追加して、それらのセキュリティ グループに Data Lake Store アカウントに対するアクセス権を付与します。

  7. 必要に応じて、グループを追加した後で、アクセス許可を変更することもできます。 各種類のアクセス許可 (Read、Write、Execute) のチェック ボックスをオフにするかオンにするかは、セキュリティ グループにアクセス許可を割り当てるか、セキュリティ グループからアクセス許可を削除するかに応じて決定します。 [保存] をクリックして変更を保存するか、[破棄] をクリックして変更を元に戻します。

データ アクセス用の IP アドレスの範囲を設定する

Azure Data Lake Store では、データ ストアへのアクセスをネットワーク レベルでさらにロック ダウンできます。 信頼されたクライアントに対して、ファイアウォールを有効にし、IP アドレスを指定し、IP アドレス範囲を定義することができます。 ファイアウォールが有効になると、IP アドレスが定義済みの範囲内にあるクライアントだけがストアに接続できます。

ファイアウォール設定と IP アクセス

Azure Data Lake Store アカウントのセキュリティ グループを削除する

Azure Data Lake Store アカウントからセキュリティ グループを削除する場合は、Azure ポータルと Azure リソース マネージャー API を使用して、アカウントに関する管理操作へのアクセスを変更するだけです。

  1. Data Lake Store アカウントのブレードで、[設定] をクリックします。 [設定] ブレードで [ユーザー] をクリックします。

    セキュリティ グループを Azure Data Lake アカウントに割り当てる

  2. [ユーザー] ブレードで、削除するセキュリティ グループをクリックします。

    削除するセキュリティ グループ

  3. セキュリティ グループのブレードで、 [削除]をクリックします。

    削除されたセキュリティ グループ

Azure Data Lake Store ファイル システムからセキュリティ グループ ACL を削除する

Azure Data Lake Store ファイル システムからセキュリティ グループの ACL を削除する場合は、Data Lake Store 内のデータへのアクセスを変更します。

  1. Data Lake Store アカウントのブレードで、 [データ エクスプローラー]をクリックします。

    Data Lake アカウントにディレクトリを作成する

  2. [データ エクスプローラー] ブレードで、ACL を削除するファイルまたはフォルダーをクリックした後、アカウントのブレードで [アクセス] をクリックします。 ファイルの ACL を削除するには、[ファイルのプレビュー] ブレードから [アクセス] をクリックする必要があります。

    Data Lake ファイル システムに ACL を設定する

  3. [アクセス] ブレードの [カスタム アクセス] セクションで、削除するセキュリティ グループをクリックします。 [カスタム アクセス] ブレードで、[削除] をクリックし、[OK] をクリックします。

    グループにアクセス許可を割り当てる

関連項目