MaxCompute プロジェクトでホワイトリスト機能が有効になっている場合、クラウド製品相互接続ネットワークと VPC の IP アドレスホワイトリストを追加、表示、変更、および無効化できます。これらの操作を実行できるのは、プロジェクト所有者または Super_Administrator ロール、あるいは IP アドレスホワイトリストの管理権限を持つカスタムロールを持つユーザーのみです。
背景情報
MaxCompute は、プロジェクトのマルチテナンシーや認証など、複数のセキュリティレイヤーを提供します。お客様の AccessKey ID と AccessKey Secret が認証された後にのみ、承認された範囲内でデータにアクセスし、計算を実行できます。
認証に加えて、MaxCompute では、セキュリティを強化するために IP アドレスホワイトリストを設定できます。この機能が有効な場合、MaxCompute はホワイトリストに登録された IP アドレスからのリクエストのみを受け入れ、有効な AccessKey ID と AccessKey Secret を持つリクエストであっても、他のすべてのリクエストを拒否します。
MaxCompute プロジェクトで IP アドレスホワイトリスト機能を有効にしていない場合でも、プロジェクトにアクセスできます。アクセスは次のように制御されます。
-
クラウド製品相互接続ネットワーク:同じ Alibaba Cloud アカウントとリージョン内でクラウド製品相互接続ネットワークのエンドポイントを使用するすべての IP アドレスは、MaxCompute プロジェクトにアクセスできます。
-
VPC:同じ VPC 内で VPC エンドポイントを使用するすべての IP アドレスは、MaxCompute プロジェクトにアクセスできます。
-
パブリックネットワーク:パブリックネットワークのエンドポイントを使用するすべての IP アドレスは、MaxCompute プロジェクトにアクセスできます。
-
クラウド製品相互接続ネットワークの IP アドレスホワイトリスト
-
MaxCompute クライアントを使用してプロジェクトにアクセスする場合は、MaxCompute クライアントがインストールされているデバイスの IP アドレスを追加してください。
-
アプリケーションを使用してプロジェクトにアクセスする場合は、アプリケーションサーバーの IP アドレスをホワイトリストに追加してください。
-
プロキシサーバーまたはマルチホッププロキシサーバーを介してプロジェクトにアクセスする場合は、最終ホップのプロキシサーバーの IP アドレスをホワイトリストに追加してください。
-
DataWorks を使用する場合は、DataWorks の専用リソースグループの IP アドレスと、その他の関連する IP アドレスをホワイトリストに追加してください。
-
-
VPC の IP アドレスホワイトリスト
VPC の IP アドレスホワイトリストを設定する前に、次の手順を実行してください。
-
VPC インスタンス ID を取得します。
-
VPC のエンドポイントを設定します。詳細については、「エンドポイント」をご参照ください。
-
MaxCompute にアクセスする必要があるすべてのサービスの IP アドレスをホワイトリストに追加します。たとえば、Data Integration、Data Map、または Realtime Compute for Apache Flink を使用する場合は、これらのサービスの IP アドレスをホワイトリストに追加する必要があります。
-
MaxCompute は、プロジェクトレベルの IP アドレスホワイトリストのみをサポートします。次の IP アドレス形式がサポートされています。
-
IPv4 または IPv6 アドレス。例: 192.168.0.0 および 2001:db8::。
-
CIDR ブロック。例: 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 クライアント (CLI) または MaxCompute コンソールを使用して、IP アドレスホワイトリストを追加できます。
CLI の使用
パブリックネットワークとクラウド製品相互接続ネットワークの IP アドレスホワイトリストのパラメーターは odps.security.ip.whitelist です。VPC の IP アドレスホワイトリストのパラメーターは odps.security.vpc.whitelist です。コマンドの構文とパラメーターの詳細については、「プロジェクトプロパティの表示」をご参照ください。
MaxCompute クライアントで次のコマンドを実行して、IP アドレスを IP アドレスホワイトリストに追加してください。
-
パブリックネットワークとクラウド製品相互接続ネットワークに対してのみ IP アドレスホワイトリストを設定した場合、これらのネットワークからのアクセスは制限され、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 アドレスを追加してください。設定した IP アドレスホワイトリストにリクエスト元の VPC が含まれていない場合、コマンドは失敗し、リスク警告が表示されます。例:
odps@ xxx>setproject odps.security.ip.whitelist=192.168.1.xxx; FAILED: Yourself will be banned by your new IP/VPC whitelist! Test result: vpc:'cn-hangzhou_123' or '123' not in vpc white list. project: lyh_meta1 -
VPC に対してのみ IP アドレスホワイトリストを設定した場合、VPC からのアクセスは制限され、パブリックネットワークとクラウド製品相互接続ネットワークからのすべてのアクセスは拒否されます。次のサンプルコマンドは、ホワイトリストの設定方法を示しています。
setproject odps.security.ip.whitelist=\N odps.security.vpc.whitelist=<vpc-instance-id>[192.168.0.10,192.168.0.20];非 VPC ネットワークからのアクセスを無効にせずに、VPC のみのアクセス制御を設定するには、
0.0.0.0/0のワイルドカード IP アドレスを使用します。setproject odps.security.ip.whitelist=0.0.0.0/0 odps.security.vpc.whitelist=<vpc-instance-id>[192.168.0.10,192.168.0.20]; -
パブリックネットワーク/クラウド製品相互接続ネットワークと VPC の両方に IP アドレスホワイトリストを設定する必要がある場合、両方のネットワークタイプからのアクセスが制限されます。次のサンプルコマンドは、ホワイトリストの設定方法を示しています。
setproject odps.security.ip.whitelist=192.168.0.0 odps.security.vpc.whitelist=<vpc-instance-id>[192.168.0.10,192.168.0.20]; -
パブリックネットワーク/クラウド製品相互接続ネットワークおよび複数の VPC に対して、複数の IP アドレスを持つホワイトリストを設定する必要がある場合は、次の形式を使用します。次のサンプルコマンドは、ホワイトリストの設定方法を示しています。
setproject odps.security.ip.whitelist=192.168.0.0,192.168.0.10 odps.security.vpc.whitelist=<vpc-instance-id1>[192.168.0.10,192.168.0.20],<vpc-instance-id2>;複数のパブリックネットワークまたはクラウド製品相互接続ネットワークの IP アドレスは、カンマ (,) で区切ります。VPC の IP アドレスには、
<VPC インスタンス ID>[IP アドレスリスト]の形式を使用します。特定の VPC からのすべての IP アドレスをホワイトリストに登録するには、その VPC インスタンス ID のみを指定します。
ホワイトリストの変更は約 5 分で有効になります。
コンソールの使用
MaxCompute コンソールで、リージョンを選択します。 プロジェクト管理 ページで、対象のプロジェクトを見つけ、操作 列の 管理 をクリックします。次に、パラメーター設定 タブで、Ipホワイトリスト を編集します。
-
パブリックネットワークおよびクラウド製品相互接続ネットワークの IP:複数の IP アドレスはカンマ (,) で区切ります。パブリックネットワークとクラウド製品相互接続ネットワークに対してのみ IP アドレスホワイトリストを設定した場合、これらのネットワークからのアクセスは制限され、VPC からのすべてのアクセスは拒否されます。VPC からのアクセスを制限したくない場合は、「VPC ネットワーク IP」パラメーターをアスタリスク (
*) のワイルドカード文字に設定します。 -
VPC ネットワーク IP:複数の IP アドレスはカンマ (,) で区切ります。VPC に対してのみ IP アドレスホワイトリストを設定した場合、VPC からのアクセスは制限され、パブリックネットワークとクラウド製品相互接続ネットワークからのすべてのアクセスは拒否されます。例:
<vpc-instance-id1>[192.168.0.10,192.168.0.20],<vpc-instance-id2>。非 VPC ネットワークからのアクセスを無効にせずに VPC のみのアクセス制御を設定するには、「パブリックネットワークおよびクラウド製品相互接続ネットワーク 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= の値が空の場合、IP アドレスホワイトリストは設定されていません。
setproject;
次の出力が返されます。
odps.security.ip.whitelist=192.168.0.0
odps.security.vpc.whitelist=<vpc-instance-id>[192.168.0.10,192.168.0.20]
レガシーフォーマット (リージョン 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 コマンドを実行して、パブリックネットワーク、クラウド製品相互接続ネットワーク、および VPC の IP アドレスホワイトリストを変更します。このコマンドは、既存のホワイトリストを新しい設定に置き換えます。
重要:このコマンドはホワイトリスト全体を置き換えます。IP アドレスを追加するには、既存のアドレスと新しいアドレスの両方をコマンドで指定する必要があります。
-
パブリックネットワークとクラウド製品相互接続ネットワークの IP アドレスホワイトリストの変更
setproject odps.security.ip.whitelist=192.168.0.10; -
VPC の IP アドレスホワイトリストの変更
setproject odps.security.vpc.whitelist=<vpc-instance-id>[192.168.10.10,192.168.0.20];
IP アドレスホワイトリストの無効化
次のコマンドを実行して、IP アドレスホワイトリスト機能を無効にします。このコマンドは、パブリックネットワーク、クラウド製品相互接続ネットワーク、および VPC のすべてのアクセス制限を解除します。
setproject odps.security.ip.whitelist= odps.security.vpc.whitelist= ;
IP アドレスホワイトリスト機能を無効にするには、パブリックネットワーク/クラウド製品相互接続ネットワークと VPC の両方のホワイトリストをクリアする必要があります。
Alibaba Cloud サービス用のホワイトリスト
次のコマンドを実行して、すべての 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.0.0/8,33.0.0.0/8,26.0.0.0/8,100.64.0.0/10 odps.security.vpc.whitelist=*;
-
odps.security.ip.whitelist:パブリックネットワークとクラウド製品相互接続ネットワークの IP アドレスホワイトリストです。上記のコマンドの IP アドレスを使用できます。さらに IP アドレスを追加する必要がある場合は、リストに追加してください。
リージョン ID
次の表に、Alibaba Cloud のリージョン ID を示します。
|
リージョン |
リージョン ID |
|
中国 (杭州) |
cn-hangzhou |
|
中国 (上海) |
cn-shanghai |
|
中国 (北京) |
cn-beijing |
|
中国 (張家口) |
cn-zhangjiakou |
|
中国 (ウランチャブ) |
cn-wulanchabu |
|
中国 (深圳) |
cn-shenzhen |
|
中国 (成都) |
cn-chengdu |
|
中国 (香港) |
cn-hongkong |
|
中国東2金融 |
cn-shanghai-finance-1 |
|
中国北2 Ali Gov 1 |
cn-north-2-gov-1 |
|
中国南1金融 |
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 アドレス (sourceIP) がパブリックネットワークまたはクラウド製品相互接続ネットワークの IP アドレスホワイトリストになく、対応するプロジェクトがエラーメッセージ内で
project: xxxとして指定されていることを示します。対応するプロジェクトのパブリックネットワークおよびクラウド製品相互接続ネットワークの IP アドレスホワイトリストに
sourceIPを追加する必要があります。 -
VPC IP アドレスホワイトリストがアクセスを制限した場合、次のエラーが報告されます。
-
VPC が IP アドレスホワイトリストにない:
FAILED: Access denied by project vpc white list: vpc:'vpc-xxx' not in vpc white list, ip: 'xxxx'. project: xxxこのエラーは、リクエストを開始した VPC が IP アドレスホワイトリストにないことを示します。エラーメッセージの
project: xxxフィールドでプロジェクトが識別されます。この VPC インスタンス ID をプロジェクトの VPC IP アドレスホワイトリストに追加してください。
-
VPC は IP アドレスホワイトリストにあるが、送信元 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 アドレスホワイトリストにあるが、送信元 IP アドレスがないことを示します。エラーメッセージの
project: xxxフィールドでプロジェクトが識別されます。この VPC IP アドレスをプロジェクトの VPC IP アドレスホワイトリストに追加してください。
-