ネットワーク セキュリティの設定
項目一覧
Overview
App Services は、データへの不正アクセスを防ぐために、さまざまなネットワーク セキュリティ プロトコルを使用します。 ここでは、次の作業が可能です。
TLS を設定して、アプリケーションとの間のネットワークリクエストを保護します。
すべてのアウトバウンド リクエストの発信元となる IP アドレスを定義します。
インバウンド リクエストの発信元となる可能性のある URL と IP アドレスを定義および管理します。
トランスポート層セキュリティ (TLS)
App Services は TLS1.3 を使用します アプリケーションとの間のすべてのネットワークリクエストを保護します。これには次のものが含まれます。
Realm SDK から接続するアプリ。
HTTPS 経由で送信されたデータ API リクエスト。
リンクされた MongoDB Atlas データソースに対してクエリと操作を実行します。
TLS 証明書は事前定義されており、カスタマイズしたり無効にしたりすることはできません。
注意
バックエンドの暗号化
App Services と Atlas 間のすべての内部通信は x509 証明書で暗号化されます。
ファイアウォール構成
App Services は、IP アドレスのセット リストからのみアウトバウンド リクエストを送信します。 正確なリストは、アプリ サーバーが配置されるクラウドプロバイダーによって異なります。 このセクションにリストされている IP アドレスを、ファイアウォールの受信リクエストの許可リストにコピーできます。
App Services が使用するすべての IP アドレスのコンピューター対応リストを、 JSONまたはCSV形式でダウンロードできます。 次のセクションでも、クラウドプロバイダー固有の JSON ファイルと CSV ファイルを見つけることができます。
注意
Atlas App Services UI から関数を実行する場合、リクエストはアプリが配置されたリージョンではなく、最も近いサーバーから送信されます。
Amazon Web Services
Amazon Web Services IPアドレスのダウンロード: JSON 、 CSV
Amazon Web Servicesに配置されたアプリからのアウトバウンド リクエストは、次のいずれかのIPアドレスから送信されます。
13.236.189.10 18.202.2.23 18.210.66.32 18.211.240.224 18.213.24.164 52.63.26.53 54.203.157.107 54.69.74.169 54.76.145.131 18.192.255.128 18.157.138.240 18.158.38.156 52.220.57.174 18.140.123.126 13.251.182.174 65.0.112.137 3.6.231.140 13.234.189.107 13.232.212.70 65.0.113.75 3.7.215.88 3.6.255.136 65.0.188.79 13.233.17.88 18.136.226.22 122.248.203.228 54.251.109.67 54.255.78.248 54.179.247.236 13.251.170.158 3.105.146.190 52.65.242.206 54.79.24.107 13.238.106.70 52.28.11.211 3.121.9.73 52.29.205.189 3.122.49.121 3.121.58.147 3.121.97.130 108.128.63.52 108.128.66.245 108.128.51.69 108.128.45.118 52.213.157.241 108.128.66.107 3.9.6.254 3.9.74.211 3.9.61.59 35.176.121.115 3.9.85.190 3.9.47.47 13.36.132.152 15.188.240.49 13.37.29.138 15.188.152.56 13.39.52.19 15.188.159.135 177.71.159.160 52.67.231.12 18.230.146.14 52.67.94.32 18.230.109.192 18.229.199.232 3.212.79.116 3.92.113.229 34.193.91.42 34.237.40.31 3.215.10.168 34.236.228.98 3.214.203.147 3.208.110.31 100.26.2.217 3.215.143.88 18.119.73.75 3.136.153.91 3.128.101.143 35.166.246.78 35.161.40.209 54.149.249.153 35.161.32.231 52.34.65.236 35.163.245.143
Azure
Azure IP アドレスのダウンロード: JSON 、 CSV
Azure に配置されたアプリからのアウトバウンド リクエストは、次のいずれかの IP アドレスから送信されます。
20.105.25.17 20.212.99.191 20.24.112.135 20.53.104.226 20.84.232.59 20.96.47.95 40.112.209.0 52.149.111.83
GCP
GCP IP アドレスのダウンロード: JSON 、 CSV
GCP にデプロイされたアプリからのアウトバウンド リクエストは、次のいずれかの IP アドレスから送信されます。
34.150.239.218 34.69.118.121 34.78.133.163 34.82.246.143 34.93.58.231
注意
上記のIP リストは、送信リクエストを行うAtlas trigger や など、 FunctionHTTPS endpoints からの送信リクエストにのみ適用されます。
同期サーバーから送信されるリクエストの場合は、アプリの配置リージョンとクラウドプロバイダーのサブネット全体を許可リストに登録することをお勧めします。 配置リージョンは、App Services UI の App Settings > General > Deployment Regionの下にあります。
DNS フィルタリング
DNS フィルタリングを使用して、Device Sync クライアントを含むクライアント アプリケーションからサーバーへの接続を個別に許可できます。
HTTPS またはポート 443 経由で *.services.cloud.mongodb.com
にアクセスします。
許可されたリクエスト元
この構成オプションは、アプリレベルのroot_config.json
ファイルで定義できます。 このフィールドは、受信リクエストの発信元となる可能性のある URL の配列を受け入れます。 許可されたリクエスト オリジンを定義すると、App Services はリストされていないオリジンからの受信リクエストをブロックします。
IP アクセス リスト
Atlas App Services は、アプリの IP アクセス リストで有効なエントリからのクライアント リクエストを許可します。許可されたリクエストでは、引き続き Atlas App Servicesの認証ルールと承認ルールが使用されます。 IP アクセス リスト エントリを追加すると、Atlas App Services はアクセス リストにないIPからのリクエストをブロックします。
重要
デフォルトでは、新しく作成されたアプリでは、0.0.0.0/0 のアクセス リスト エントリを追加することで、任意のクライアント IP からのアクセスが許可されます。 このエントリを削除すると、クライアントは IP アドレスからアプリにアクセスできなくなります。
IP アドレスの検索
ipconfig の実行 コマンドを使用して、Windows マシンの IP アドレスを検索します。
whenconfig を実行する コマンドを使用して、Linux または Mac マシンの IP アドレスを検索できます。
IP アクセス リスト エントリの表示
IP アクセス リストの設定を表示するには、App Services UI でApp Settingsに移動し、[ IP Access List ] タブをクリックします。
IP アクセス リスト エントリを表示するには、 appservices accessList list
を呼び出します。 次に、CLI によりアプリ ID の入力を求められます。
IP アクセスリスト エントリを表示するには、次の形式でGET
リクエストを作成します。 グループ ID とアプリ ID を指定する必要があります。
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/security/access_list
IP アクセス リスト エントリの作成
有効エントリのリストに IP アドレスを追加するには、緑色のAdd IP addressボタンをクリックしてAdd IP Access List Entryモーダルを開きます。 このモーダルでは、現在の IP アドレスを指定したり、カスタムの IP アドレスを使用したりできます。 エントリに関するコメントを指定することもできます。
IP アクセス リスト エントリを作成するには、 appservices accessList create
を呼び出します。 CLI では、IP アドレスを入力し、すべてのアプリのリストからアプリを選択するように求められます。
オプションとして、プログラムを呼び出すときに次のいずれかの引数を指定できます。
appservices accessList create \ --app=<Your App ID> \ --ip=<IP Address> \ --comment=<Optional Comment> \ --use-current \ --allow-all
IP アクセス リスト エントリを作成するには、次の形式でPOST
リクエストを作成します。 リクエスト本文に IP アドレスを指定し、リクエスト URL にグループ ID とアプリ ID を指定する必要があります。
curl --request POST \ --header 'Authorization: Bearer <access_token>' \ --data '{ "address": "<IP Address>" }' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/security/access_list
IP アクセス リスト エントリの編集
エントリを編集するには、エントリの右側にあるeditボタンをクリックすると、 Update IP Access List Entryモーダルが開きます。 このモーダルでは、現在の IP アドレスを指定したり、カスタムの IP アドレスを使用したりできます。 エントリに関するコメントを指定することもできます。
IP アクセス リスト エントリの IP アドレスを更新したり、エントリにコメントを追加したりして、IP アクセス リスト エントリを編集できます。 エントリの IP アドレスを更新するには、次を呼び出します。
``appservices accessList update --new-ip <IP Address>``
コメントを追加または更新するには、次の呼び出しを呼び出します。
``appservices accessList update --comment <Optional Comment>``
次に、CLI により、すべてのアプリと更新する IP アドレスのリストからアプリを選択するように求められます。
エントリの IP アドレスを更新するには、次の形式でPATCH
リクエストを作成します。 リクエスト本文に新しい IP アドレスを指定し、リクエスト URL にグループ、アプリ、および IP アドレス ID を指定する必要があります。 IP アドレス ID は、更新対象のエントリを参照します。 IP アドレスの ID を取得するには、IP アクセス リスト エントリを表示します。
curl --request PATCH \ --header 'Authorization: Bearer <access_token>' \ --data '{ "address": "<IP Address>" }' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/security/access_list/<ipID>
IP アクセス リスト エントリの削除
エントリを削除するには、エントリの右側にある [ delete ] ボタンをクリックします。また、エントリを削除するかどうかを確認するようリクエストするモーダルが開きます。 エントリの削除を完了するには、 モーダルの赤色のdeleteボタンをクリックします。
IP アクセス リスト エントリを削除するには、 appservices accessList delete
を呼び出します。 CLI では、アプリ ID の入力と、削除する IP アドレスの選択を求めるプロンプトが表示されます。
IP アクセス リスト エントリを削除するには、次の形式でDELETE
リクエストを作成します。 グループ、アプリ、および IP アドレス ID を指定する必要があります。 IP アドレスの ID を取得するには、IP アクセス リスト エントリを表示します。
curl --request DELETE \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/security/access_list/<ipID>
API アクセス リスト
Realm CLI または App Services Admin API からプロジェクトまたは組織のアクセス用の Atlas API キーを作成するときに、この API キーを使用できる IP アドレスを指定できます。 IP アドレスを指定すると、アクセス リストにない IP アドレスからのリクエストはすべてブロックされます。