このトピックでは、MaxComputeプロジェクトでホワイトリスト機能が有効になっている場合に、クラウド製品相互接続ネットワークおよび仮想プライベートクラウド (VPC) のIPアドレス ホワイトリストを構成、表示、変更、および無効にする方法について説明します。 また、IPアドレス ホワイトリストを構成する必要があるシナリオについても説明します。 プロジェクトオーナー、Super_Administratorロール、および必要な権限を持つカスタム管理者ロールのみが、IPアドレス ホワイトリストを管理できます。
背景情報
MaxComputeへの安全なアクセスを確保するために、マルチテナントモデルやセキュリティ認証メカニズムなど、複数レベルのアクセス制御が使用されます。 承認されたAccessKeyペアを取得した後にのみ、付与された権限に基づいて認証とアクセスに合格し、データを計算できます。
MaxComputeでは、アクセスリクエストを制御するためにIPアドレス ホワイトリストを構成することもできます。 MaxComputeプロジェクトのIPアドレス ホワイトリストを構成すると、ホワイトリストに含まれるIPアドレスのみがMaxComputeプロジェクトにアクセスできます。 ホワイトリストにないIPアドレスからMaxComputeプロジェクトにアクセスすると、有効なAccessKeyペアを持っている場合でも、アクセスリクエストは拒否されます。 次のシナリオでは、クラウド製品相互接続ネットワークまたはVPCのIPアドレス ホワイトリストを構成できます。
MaxComputeプロジェクトでホワイトリスト機能が有効になっていない場合でも、さまざまなネットワークタイプを介してMaxComputeプロジェクトにアクセスできます。ただし、次の制限事項が適用されます。
クラウド製品相互接続ネットワーク: 同じアカウントとリージョン内のクラウド製品相互接続ネットワーク エンドポイントを使用するすべてのIPは、MaxComputeプロジェクトにアクセスできます。
VPC: 同じVPC内のVPCエンドポイントを使用するすべてのIPは、MaxComputeプロジェクトにアクセスできます。
パブリックネットワーク: パブリックネットワーク エンドポイントを使用するすべてのIPは、MaxComputeプロジェクトにアクセスできます。
クラウド製品相互接続ネットワークのIPアドレス ホワイトリストを構成する
MaxComputeクライアントを使用してプロジェクトにアクセスする場合は、MaxComputeクライアントがデプロイされているデバイスのIPアドレスを取得します。
アプリケーションシステムを使用してプロジェクトにアクセスする場合は、アプリケーションシステムがデプロイされているサーバーのIPアドレスを取得します。
プロキシサーバーを使用してプロジェクトにアクセスする場合は、サーバーのIPアドレスを取得します。 マルチホップ プロキシサーバーを使用してプロジェクトにアクセスする場合は、ラストホップ プロキシサーバーのIPアドレスを取得します。
DataWorksユーザーの場合は、DataWorks専用リソースグループに関連するIPアドレスをホワイトリストに追加する必要があります。
VPCのIPアドレス ホワイトリストを構成する
VPCのIPアドレス ホワイトリストを構成するには、次の手順を実行します。
VPCのIDを取得します。
VPCのエンドポイントを構成します。 詳細については、「エンドポイント」をご参照ください。
MaxComputeにアクセスする必要があるすべてのデバイスのIPアドレスをホワイトリストに追加します。 たとえば、DataWorksのData Integration、DataWorksのData Map、Realtime Compute for Apache Flinkなどのサービスを使用してMaxComputeにアクセスする場合、これらのサービスのIPアドレスをIPアドレス ホワイトリストに追加する必要があります。
MaxComputeは、プロジェクトレベルのIPアドレス ホワイトリストのみをサポートしています。 IPアドレスは、次の形式で指定できます。
IPv4またはIPv6アドレス。 例: 192.168.0.0 または 2001:db8::。
サブネットマスク付きのIPアドレス。 例: 172.12.0.0/16 または 2001:db8::/32。
IPアドレス範囲。 例: 192.168.10.0-192.168.255.255 または 2001:db8:1:1:1:1:1:1-2001:db8:4:4:4:4:4:4。
IPアドレス ホワイトリストの構成
MaxComputeでは、MaxComputeクライアントなどのコマンドラインツールを使用してIPアドレス ホワイトリストを構成できます。 MaxComputeコンソールでIPアドレス ホワイトリストを構成することもできます。
MaxComputeクライアントでのIPアドレス ホワイトリストの構成
odps.security.ip.whitelist パラメーターは、インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストを指定します。 odps.security.vpc.whitelist パラメーターは、VPCのIPアドレス ホワイトリストを指定します。 コマンド構文とパラメーターの詳細については、「プロジェクトのプロパティを表示する」をご参照ください。
MaxComputeクライアントでコマンドを実行して、必要なIPアドレスをIPアドレス ホワイトリストに追加できます。
インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストのみを構成する場合、IPアドレス ホワイトリストに含まれるIPアドレスのみが、インターネットおよびクラウド製品相互接続ネットワーク経由でMaxComputeにアクセスできます。 VPC経由のアクセスリクエストは拒否されます。 コマンド例:
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=\N;
VPC以外のアクセスのみを制限し、VPCネットワークアクセスに制限を課したくない場合は、VPCワイルドカード * を使用できます。
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=*;
インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストを構成する場合は、MaxComputeクライアントがインストールされているデバイスのIPアドレスをホワイトリストに追加します。 そうしないと、アクセスリクエストは拒否されます。
VPCのIPアドレス ホワイトリストのみを構成する場合、IPアドレス ホワイトリストに含まれるIPアドレスのみが、VPC経由でMaxComputeにアクセスできます。 インターネットおよびクラウド製品相互接続ネットワーク経由のアクセスリクエストは拒否されます。 コマンド例:
setproject odps.security.ip.whitelist=\N odps.security.vpc.whitelist=<VPCのID>[192.168.0.10,192.168.0.20];
VPCへのアクセスを一時的に構成するだけで、VPC以外のネットワークからのアクセスをブロックしたくない場合は、IPワイルドカード 0.0.0.0/0 を使用できます。
setproject odps.security.ip.whitelist=0.0.0.0/0 odps.security.vpc.whitelist=<VPCのID>[192.168.0.10,192.168.0.20];
インターネット、クラウド製品相互接続ネットワーク、およびVPCのIPアドレス ホワイトリストを構成する場合、インターネット、クラウド製品相互接続ネットワーク、およびVPCのIPアドレス ホワイトリストに含まれるIPアドレスは、インターネット、クラウド製品相互接続ネットワーク、およびVPC経由でMaxComputeにアクセスできます。 コマンド例:
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=<VPCのID>[192.168.0.10,192.168.0.20];
インターネット、クラウド製品相互接続ネットワーク、およびVPCのIPアドレス ホワイトリストと、インターネット、クラウド製品相互接続ネットワーク、およびVPCからの複数のIPアドレスを構成する場合は、次のコマンドを実行します。
● setproject odps.security.ip.whitelist=192.168.0.0,192.168.0.10 odps.security.vpc.whitelist=<VPC1のID>[192.168.0.10,192.168.0.20],<VPC2のID>;
インターネットとクラウド製品相互接続ネットワークの複数のIPアドレスはコンマ (,) で区切ります。 VPCのIPアドレスは、
VPCのID[IPアドレス]
形式です。 VPCのすべてのIPアドレスをIPアドレス ホワイトリストに追加する場合は、VPCのIDを入力できます。
IPアドレス ホワイトリストは、構成後 5 分で有効になります。
MaxComputeコンソールでのIPアドレス ホワイトリストの構成
MaxCompute コンソール にログインし、リージョンを選択します。左側のナビゲーションウィンドウで、[プロジェクト] をクリックします。[プロジェクト] ページで、目的のプロジェクトを見つけ、[アクション] 列の [管理] をクリックします。プロジェクト詳細ページの [パラメータ設定] タブで、[IP アドレスホワイトリスト] セクションの [編集] をクリックします。
インターネットおよびクラウド製品相互接続ネットワークのIPアドレス: IPアドレスをコンマ (,) で区切ります。 インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストのみを構成する場合、IPアドレス ホワイトリストに含まれるIPアドレスのみが、インターネットおよびクラウド製品相互接続ネットワーク経由でMaxComputeにアクセスできます。 VPC経由のアクセスリクエストは拒否されます。 VPCネットワークアクセスに制限を課したくない場合は、「VPC IPアドレス」にVPCワイルドカード * を構成できます。
VPCのIPアドレス: VPCのIPアドレスをコンマ (,) で区切ります。 VPCのIPアドレス ホワイトリストのみを構成する場合、IPアドレス ホワイトリストに含まれるIPアドレスのみが、VPC経由でMaxComputeにアクセスできます。 インターネットおよびクラウド製品相互接続ネットワーク経由のアクセスリクエストは拒否されます。 例:
<VPC1のID>[192.168.0.10,192.168.0.20],<VPC2のID>
。 VPCへのアクセスを一時的に構成するだけで、VPC以外のネットワークからのアクセスをブロックしたくない場合は、「インターネットおよびクラウド製品相互接続ネットワーク IPアドレス」にIPワイルドカード 0.0.0.0/0 を構成できます。
IPアドレス ホワイトリストの表示
setproject;
コマンドを実行して、IPアドレス ホワイトリストを表示できます。 odps.security.ip.whitelist
および odps.security.vpc.whitelist
パラメーターの値は、ホワイトリストに含まれるIPアドレスです。 odps.security.ip.whitelist
または odps.security.vpc.whitelist
パラメーターが空の場合、空のパラメーターに対応するホワイトリストは構成されていません。
setproject;
次の結果が返されます。
odps.security.ip.whitelist=192.168.0.0
odps.security.vpc.whitelist=<VPCのID>[192.168.0.10,192.168.0.20]
VPCが存在するリージョンのIDとVPCの数値IDを使用して、VPC用に構成されたIPアドレス ホワイトリストを使用する場合、次の結果が返されます。
odps.security.vpc.whitelist=cn-beijing_125179[192.168.0.10,192.168.0.20]
リージョンID部分は識別子としてのみ機能するため、cn-beijing_1234、cn_1234、cn-shanghai_1234、および 1234 は同じものと見なされます。 これは、対応するVPCインスタンスIDを使用する場合にも適用されます。 一貫性を保つために、VPCインスタンスIDを使用するように切り替えることを強くお勧めします。 同じVPCのIPリストを構成するために複数の形式が使用されている場合、有効なIPリストはすべての構成の和集合になります。つまり、それらは共存して正しく機能します。 古い構成の数値IDとVPCインスタンスID間のマッピングを確認する必要がある場合は、 [チケットを送信] してサポートをリクエストできます。
IPアドレス ホワイトリストの変更
setproject
コマンドを実行して、IPアドレス ホワイトリストを変更できます。 ホワイトリストが変更されると、元のIPアドレス ホワイトリストは無効になります。 システムは、新しいIPアドレス ホワイトリストに基づいてアクセスリクエストを管理します。
既存の構成に追加する場合、新しい部分だけをここで指定するのではなく、元の設定と新しく追加された部分の両方を含む、更新された完全な構成を提供する必要があります。
インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストの構成を変更します。
setproject odps.security.ip.whitelist=192.168.0.10;
VPCのIPアドレス ホワイトリストの構成を変更します。
setproject odps.security.vpc.whitelist=<VPCのID>[192.168.10.10,192.168.0.20]
IPアドレス ホワイトリスト機能の無効化
次のコマンドを実行して、IPアドレス ホワイトリスト機能を無効にします。 この機能が無効になっている場合、インターネット、クラウド製品相互接続ネットワーク、およびVPC経由のアクセスリクエストは制限されません。
setproject odps.security.ip.whitelist= odps.security.vpc.whitelist= ;
機能を無効にするには、インターネット、クラウド製品相互接続ネットワーク、およびVPCのIPアドレス ホワイトリストを空にする必要があります。
Alibaba Cloud サービスからMaxComputeへのアクセスを許可するIPアドレスの構成
次のコマンドを使用して、すべてのAlibaba Cloud サービスが内部ネットワークまたはVPCネットワークを使用してMaxComputeにアクセスできるように構成できます。
setproject odps.security.ip.whitelist=192.168.0.0/16,172.16.0.0/12,10.0.0.0/8,11.0.x.x/8,33.0.x.x/8,100.64.0.0/10 odps.security.vpc.whitelist=<regionname>_*,cn_*;
odps.security.ip.whitelist
: インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリスト。 前のコマンドのこのパラメーターの構成を参照できます。 ビジネス要件に基づいてIPアドレスを追加することもできます。
リージョンID
次の表に、Alibaba CloudのリージョンIDを示します。
リージョン | リージョンID |
中国 (杭州) | cn-hangzhou |
中国 (上海) | cn-shanghai |
中国 (北京) | cn-beijing |
中国 (張家口) | cn-zhangjiakou |
中国 (ウランチャブ) | cn-wulanchabu |
中国 (深圳) | cn-shenzhen |
中国 (成都) | cn-chengdu |
中国 (香港) | cn-hongkong |
China East 2 Finance | cn-shanghai-finance-1 |
China North 2 Ali Gov 1 | cn-north-2-gov-1 |
China South 1 Finance | cn-shenzhen-finance-1 |
日本 (東京) | ap-northeast-1 |
シンガポール | ap-southeast-1 |
マレーシア (クアラルンプール) | ap-southeast-3 |
インドネシア (ジャカルタ) | ap-southeast-5 |
ドイツ (フランクフルト) | eu-central-1 |
英国 (ロンドン) | eu-west-1 |
米国 (シリコンバレー) | us-west-1 |
米国 (バージニア) | us-east-1 |
UAE (ドバイ) | me-east-1 |
ホワイトリスト機能によって報告されるエラーの例
インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストが構成されている場合、次のエラーメッセージが表示されます。
FAILED: Access denied by project ip white list: sourceIP:'xxxxx' is not in white list. project:xxx
アクセスリクエストが送信されたIPアドレスが、インターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストにない場合、上記のエラーメッセージが報告されます。 エラーメッセージでは、sourceIPはアクセスリクエストが送信されたIPアドレスを示し、
project: xxx
はプロジェクト情報を示します。この問題を解決するには、
sourceIP
で指定されたIPアドレスを、プロジェクトのインターネットおよびクラウド製品相互接続ネットワークのIPアドレス ホワイトリストに追加します。VPCのIPアドレス ホワイトリストが構成されている場合、次のエラーメッセージが報告されます。
VPCがVPCホワイトリストにない場合:
FAILED: Access denied by project vpc white list: vpc:'vpc-xxx' not in vpc white list, ip: 'xxxx'.project:xxx
これは、アクセスリクエストが開始されたVPCがVPCホワイトリストに含まれていないことを示します。 対応するプロジェクトは、エラーメッセージに「project: xxx」として表示されます。
VPCインスタンスIDを対応するプロジェクトのVPC IPホワイトリストに追加する必要があります。
VPCがVPC IPホワイトリストに含まれているが、IPアドレスがVPCで許可されているIPのリストに含まれていない場合:
FAILED: Access denied by project vpc white list: sourceIP:'xxxxx' from vpc 'vpc-xxx' is not in vpc white list. project: xxx
これは、現在のリクエスト元のVPCがホワイトリストに含まれているが、リクエストが開始されたIPアドレスがそのVPCの許可されたIPリストに含まれていないことを示します。 対応するプロジェクトは、エラーメッセージに「project: xxx」として表示されます。
このIPアドレスを対応するプロジェクトのVPC IPホワイトリストに追加する必要があります。