クラウド ストレージ コネクション ファイルの作成 (Create Cloud Storage Connection File) (データ管理)

サマリー

ArcGIS がサポートするクラウド ストレージのコネクション ファイルを作成します。 このツールを使用すると、既存のラスター ジオプロセシング ツールは、クラウド ラスター フォーマット (CRF) データセットをクラウド ストレージ バケットに書き込んだり、入力としてクラウド ストレージに格納されたラスター データ (CRF に限定されない) を読み取ったりすることができます。

使用法

  • このツールを使用するには、アクセス キー ID、シークレット アクセス キー文字列、バケット名など、クラウド ストレージを接続するために必要な情報を提供する必要があります。 [プロバイダー オプション] パラメーターを使用して、代替の認証方法を使用することもできます。

    クラウド ストアへの接続の詳細

  • このツールは、ArcGIS クラウド ストレージ フォーマットでバイナリ クラウド ストレージのコネクション ファイル (*.acs) を出力します。

  • クラウド ストレージに格納されたラスター データセットは、c:/temp/amazons3.acs/someraster などのファイル パスを使用して参照できます。

  • このツールは、Amazon Simple Storage Service (S3) バケット、Microsoft Azure Blob ストレージ コンテナー、Microsoft Azure Data Lake Storage Gen2、Alibaba Cloud Object Storage Service (OSS) バケット、Google Cloud Storage Service (GCS) バケット、 WebHDFS および MinIO Object Storage Service バケットへの接続をサポートしています。

  • データセットがバケット内のフォルダーに格納されている場合、c:/temp/amazons3.acs/foldername/someraster など、フォルダー名がパスに含まれる必要があります。

  • ツールは、実行時に提供される資格情報を整合チェックします。 接続が作成できない場合は、このツールを正常に実行できません。

  • ロールベースのアクセス制御 (RBAC) は、AmazonAzureGoogle の各クラウド プロバイダーで使用できます。 EC2Azure 仮想コンピューター、または Google Compute Engine の使用時にすべての認証パラメーターを空にしておくと、IAM ロールまたは Azure RBAC を使用して ArcGIS Pro から Blob ストレージにアクセスすることができます。 Amazon では、IMDSv1 および IMDSv2 がサポートされています。

    Microsoft Azure Data Lake Storage Gen2 は、Azure と同じオプションに準拠していますが、DFS エンドポイントを使用して実際のディレクトリ サポートと不可分操作を実行できます。 クラウド操作の実行中に発生した一部のネットワーク エラーは、指数バックオフの後で再試行されます。

    パフォーマンス上の考慮事項と追加情報については、GDAL Virtual File Systems に関するドキュメントをご参照ください。

パラメーター

ラベル説明データ タイプ
コネクション ファイルの場所

コネクション ファイルの作成先となるフォルダー パス。

Folder
コネクション ファイル名

クラウド ストレージ コネクション ファイルの名前。

String
サービス プロバイダー

使用するクラウド ストレージ サービス プロバイダーを指定します。

  • AzureMicrosoft Azure をサービス プロバイダーに指定します。
  • AmazonAmazon S3 をサービス プロバイダーに指定します。
  • GoogleGoogle Cloud Storage をサービス プロバイダーに指定します。
  • AlibabaAlibaba Cloud Storage をサービス プロバイダーに指定します。
  • WebHDFSWebHDFS をサービス プロバイダーに指定します。
  • MinIOMinIO をサービス プロバイダーに指定します。
  • Azure Data LakeAzure Data Lake をサービス プロバイダーに指定します。
String
バケット (コンテナー) 名

ラスター データセットを格納するクラウド ストレージ コンテナーの名前。 多くのクラウド プロバイダーがこのコンテナーをバケットと呼んでいます。

String
アクセス キー ID (アカウント名)
(オプション)

特定のクラウド ストレージ タイプのアクセス キー ID 文字列。 Azure のように、アカウント名でもあります。

String
シークレット アクセス キー (アカウント キー)
(オプション)

クラウド ストレージへの接続を認証するためのシークレット アクセス キー文字列。

Encrypted String
領域 (環境)
(オプション)

クラウド ストレージの領域文字列。 指定した場合、値はクラウド ストレージの選択によって定義された形式を使用する必要があります。 デフォルトは、選択したクラウド プロバイダーのデフォルト アカウントです。

String
サービス エンド ポイント
(オプション)

oss-us-west-1.aliyuncs.com など、クラウド ストレージのサービス エンドポイント (uris)。 パラメーターを指定しない場合は、選択されたクラウド ストレージ タイプのデフォルトのエンドポイントが使用されます。 必要に応じて、CNAME リダイレクト エンドポイントが使用されます。

String
プロバイダー オプション
(オプション)

特定タイプのクラウド サービスに関する構成オプションを指定します。 サービスによってはオプションがないものもあります。 オプションをオンにする場合はこのパラメーターを設定するだけです。

  • Azure および Microsoft Azure Data Lake
    • AZURE_SAS - 共有アクセス シグネチャを指定します。 値が URL エンコードされており、先頭の文字が「?」でも「&」でもないことを確認します。 このオプションを使用する場合は、[シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • AZURE_NO_SIGN_REQUEST (デフォルト: False) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。 このオプションを使用する場合は、[シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • AZURE_STORAGE_CONNECTION_STRING - Azure Storage 接続文字列を指定します。 この文字列には、アカウント名、キー、およびエンドポイントが埋め込まれています。 このオプションを使用する場合は、[アクセス キー ID (アカウント名)] パラメーターと [シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • CPL_AZURE_USE_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • Amazon および MinIO
    • AWS_NO_SIGN_REQUEST (デフォルト: False) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。
    • AWS_SESSION_TOKEN - 一時的な認証情報を指定します。
    • AWS_DEFAULT_PROFILE - AWS 認証情報プロファイルは、アクセス キーまたは ID が見つからない場合に自動的に使用されます。 このオプションでは、使用するプロファイルを指定できます。
    • AWS_REQUEST_PAYER - このオプションをリクエスタに設定すると、リクエスタ支払いバケットにアクセスできます。
    • AWS_Virtual_Hosting (デフォルト: True) - パススタイルのリクエストだけをサポートしている Amazon S3 または S3 対応クラウド プロバイダーを使用している場合、このオプションを True に設定します。 仮想ホスティングがサポートされている場合は、仮想ホスティングを使用することをお勧めします。
    • CPL_VSIS3_USE_BASE_RMDIR_RECURSIVE (デフォルト: True) - 古い一部の S3 対応の実装では、一括削除操作を実行できません。 このようなプロバイダーでは、このオプションを False に設定します。
    • AWS_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • Google
    • GS_NO_SIGN_REQUEST (デフォルト: True) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。
    • GS_USER_PROJECT - 請求用の OAuth2 キーとプロジェクトを設定すると、リクエスタ支払いバケットにアクセスできます。 プロジェクトはこのオプションを使用して指定でき、HMAC キーをシークレット アクセス キーまたは ID として使用するのではなく、他のオプションを使用して OAuth2 キーを設定する必要があります。
    • GS_OAUTH2_REFRESH_TOKEN - OAuth2 リフレッシュ アクセス トークンを指定します。 GS_OAUTH2_CLIENT_ID GS_OAUTH2_CLIENT_SECRET を使って OAuth2 クライアント認証情報を設定します。
    • GOOGLE_APPLICATION_CREDENTIALS - プライベート キーとクライアントのメール アドレスを含む *.json ファイルを使用して、サービス アカウント OAuth2 認証情報を指定します。
    • GS_OAUTH2_ PRIVATE_KEY - プライベート キー文字列を使用して、サービス アカウント OAuth2 認証情報を指定します。 GS_AUTH2_CLIENT_EMAIL が設定される必要があります。
    • GS_OAUTH2_ PRIVATE_KEY_FILE - ファイルのプライベート キーを使用して、サービス アカウント OAuth2 認証情報を指定します。 GS_AUTH2_CLIENT_EMAIL が設定される必要があります。
    • GS_AUTH2_CLIENT_EMAIL - クライアントのメール アドレスを使用して、サービス アカウント OAuth2 認証情報を指定します。
    • GS_AUTH2_SCOPE - サービス アカウント OAuth2 のスコープを指定します。 有効な値は https://www.googleapis.com/auth/devstorage.read_write (デフォルト) と https://www.googleapis.com/auth/devstorage.read_only です。
    • GDAL_HTTP_HEADER_FILE - 外部ファイルに保存されているベアラー認証情報を指定します。
  • Alibaba
    • OSS_Virtual_Hosting (デフォルト: True) - パススタイルのリクエストだけをサポートしている Alibaba または S3 対応クラウド プロバイダーを使用している場合、このオプションを True に設定します。 仮想ホスティングがサポートされている場合は、仮想ホスティングを使用することをお勧めします。
    • OSS_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • WebHDFS
    • WEBHDFS_REPLICATION (整数) - ファイルの作成時にレプリケーション値が使用されます。
    • WEBHDFS_PERMISSION (小数) - ファイルの作成時に権限マスクが使用されます。

複数の認証パラメーターを指定した場合の優先順位は次のとおりです。

  • Azure - AZURE_STORAGE_CONNECTION_STRING、アカウント名またはキー、AZURE_SAS、AZURE_NO_SIGN_REQUEST、RBAC
  • Amazon - AWS_NO_SIGN_REQUEST、アクセス ID またはキーまたは AWS_SESSION_TOKEN、AWS 認証情報プロファイル、IAM ロール
  • Google - GS_NO_SIGN_REQUEST、アクセス ID またはキー、GDAL_HTTP_HEADER_FILE(GS_OAUTH2_REFRESH_TOKEN or GS_OAUTH2_CLIENT_ID and GS_OAUTH2_CLIENT_SECRET)GOOGLE_APPLICATION_CREDENTIALS(GS_OAUTH2_PRIVATE_KEY or GS_OAUTH2_CLIENT_EMAIL)(GS_OAUTH2_PRIVATE_KEY_FILE or GS_OAUTH2_CLIENT_EMAIL)、または IAM Role

上記のプロバイダー オプション以外に、ARC_DEEP_CRAWL オプション (デフォルト: True) も、すべてのサービス プロバイダーで使用することができます。 このオプションを True に設定すると、クラウド内で拡張子が付いていない CRF を識別できます。 この処理には時間がかかるため、カタログ参照操作と巡回操作を高速化する場合は、このオプションを False に設定することをお勧めします。

Value Table
フォルダー
(オプション)

ラスター データセットが格納されるクラウド ストレージ [バケット (コンテナー) 名] パラメーター値内のフォルダー。

String

派生した出力

ラベル説明データ タイプ
出力コネクション ファイル

出力クラウド ストレージ コネクション ファイルのパス。

File

arcpy.management.CreateCloudStorageConnectionFile(out_folder_path, out_name, service_provider, bucket_name, {access_key_id}, {secret_access_key}, {region}, {end_point}, {config_options}, {folder})
名前説明データ タイプ
out_folder_path

コネクション ファイルの作成先となるフォルダー パス。

Folder
out_name

クラウド ストレージ コネクション ファイルの名前。

String
service_provider

使用するクラウド ストレージ サービス プロバイダーを指定します。

  • AZUREMicrosoft Azure をサービス プロバイダーに指定します。
  • AMAZONAmazon S3 をサービス プロバイダーに指定します。
  • GOOGLEGoogle Cloud Storage をサービス プロバイダーに指定します。
  • ALIBABAAlibaba Cloud Storage をサービス プロバイダーに指定します。
  • WEBHDFSWebHDFS をサービス プロバイダーに指定します。
  • MINIOMinIO をサービス プロバイダーに指定します。
  • AZUREDATALAKEAzure Data Lake をサービス プロバイダーに指定します。
String
bucket_name

ラスター データセットを格納するクラウド ストレージ コンテナーの名前。 多くのクラウド プロバイダーがこのコンテナーをバケットと呼んでいます。

String
access_key_id
(オプション)

特定のクラウド ストレージ タイプのアクセス キー ID 文字列。 Azure のように、アカウント名でもあります。

String
secret_access_key
(オプション)

クラウド ストレージへの接続を認証するためのシークレット アクセス キー文字列。

Encrypted String
region
(オプション)

クラウド ストレージの領域文字列。 指定した場合、値はクラウド ストレージの選択によって定義された形式を使用する必要があります。 デフォルトは、選択したクラウド プロバイダーのデフォルト アカウントです。

String
end_point
(オプション)

oss-us-west-1.aliyuncs.com など、クラウド ストレージのサービス エンドポイント (uris)。 パラメーターを指定しない場合は、選択されたクラウド ストレージ タイプのデフォルトのエンドポイントが使用されます。 必要に応じて、CNAME リダイレクト エンドポイントが使用されます。

String
config_options
[config_options,...]
(オプション)

特定タイプのクラウド サービスに関する構成オプションを指定します。 サービスによってはオプションがないものもあります。 オプションをオンにする場合はこのパラメーターを設定するだけです。

  • Azure および Microsoft Azure Data Lake
    • AZURE_SAS - 共有アクセス シグネチャを指定します。 値が URL エンコードされており、先頭の文字が「?」でも「&」でもないことを確認します。 このオプションを使用する場合は、[シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • AZURE_NO_SIGN_REQUEST (デフォルト: False) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。 このオプションを使用する場合は、[シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • AZURE_STORAGE_CONNECTION_STRING - Azure Storage 接続文字列を指定します。 この文字列には、アカウント名、キー、およびエンドポイントが埋め込まれています。 このオプションを使用する場合は、[アクセス キー ID (アカウント名)] パラメーターと [シークレット アクセス キー (アカウント キー)] パラメーターを空にする必要があります。
    • CPL_AZURE_USE_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • Amazon および MinIO
    • AWS_NO_SIGN_REQUEST (デフォルト: False) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。
    • AWS_SESSION_TOKEN - 一時的な認証情報を指定します。
    • AWS_DEFAULT_PROFILE - AWS 認証情報プロファイルは、アクセス キーまたは ID が見つからない場合に自動的に使用されます。 このオプションでは、使用するプロファイルを指定できます。
    • AWS_REQUEST_PAYER - このオプションをリクエスタに設定すると、リクエスタ支払いバケットにアクセスできます。
    • AWS_Virtual_Hosting (デフォルト: True) - パススタイルのリクエストだけをサポートしている Amazon S3 または S3 対応クラウド プロバイダーを使用している場合、このオプションを True に設定します。 仮想ホスティングがサポートされている場合は、仮想ホスティングを使用することをお勧めします。
    • CPL_VSIS3_USE_BASE_RMDIR_RECURSIVE (デフォルト: True) - 古い一部の S3 対応の実装では、一括削除操作を実行できません。 このようなプロバイダーでは、このオプションを False に設定します。
    • AWS_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • Google
    • GS_NO_SIGN_REQUEST (デフォルト: True) - 認証アクセスを必要としないバケット (コンテナー) に匿名で接続します。
    • GS_USER_PROJECT - 請求用の OAuth2 キーとプロジェクトを設定すると、リクエスタ支払いバケットにアクセスできます。 プロジェクトはこのオプションを使用して指定でき、HMAC キーをシークレット アクセス キーまたは ID として使用するのではなく、他のオプションを使用して OAuth2 キーを設定する必要があります。
    • GS_OAUTH2_REFRESH_TOKEN - OAuth2 リフレッシュ アクセス トークンを指定します。 GS_OAUTH2_CLIENT_ID GS_OAUTH2_CLIENT_SECRET を使って OAuth2 クライアント認証情報を設定します。
    • GOOGLE_APPLICATION_CREDENTIALS - プライベート キーとクライアントのメール アドレスを含む *.json ファイルを使用して、サービス アカウント OAuth2 認証情報を指定します。
    • GS_OAUTH2_ PRIVATE_KEY - プライベート キー文字列を使用して、サービス アカウント OAuth2 認証情報を指定します。 GS_AUTH2_CLIENT_EMAIL が設定される必要があります。
    • GS_OAUTH2_ PRIVATE_KEY_FILE - ファイルのプライベート キーを使用して、サービス アカウント OAuth2 認証情報を指定します。 GS_AUTH2_CLIENT_EMAIL が設定される必要があります。
    • GS_AUTH2_CLIENT_EMAIL - クライアントのメール アドレスを使用して、サービス アカウント OAuth2 認証情報を指定します。
    • GS_AUTH2_SCOPE - サービス アカウント OAuth2 のスコープを指定します。 有効な値は https://www.googleapis.com/auth/devstorage.read_write (デフォルト) と https://www.googleapis.com/auth/devstorage.read_only です。
    • GDAL_HTTP_HEADER_FILE - 外部ファイルに保存されているベアラー認証情報を指定します。
  • Alibaba
    • OSS_Virtual_Hosting (デフォルト: True) - パススタイルのリクエストだけをサポートしている Alibaba または S3 対応クラウド プロバイダーを使用している場合、このオプションを True に設定します。 仮想ホスティングがサポートされている場合は、仮想ホスティングを使用することをお勧めします。
    • OSS_HTTPS (デフォルト: True) - HTTP リクエストを使用する場合は False に設定します。 一部のサーバーは HTTPS リクエストだけをサポートするように設定されている場合があります。
  • WebHDFS
    • WEBHDFS_REPLICATION (整数) - ファイルの作成時にレプリケーション値が使用されます。
    • WEBHDFS_PERMISSION (小数) - ファイルの作成時に権限マスクが使用されます。

複数の認証パラメーターを指定した場合の優先順位は次のとおりです。

  • Azure - AZURE_STORAGE_CONNECTION_STRING、アカウント名またはキー、AZURE_SAS、AZURE_NO_SIGN_REQUEST、RBAC
  • Amazon - AWS_NO_SIGN_REQUEST、アクセス ID またはキーまたは AWS_SESSION_TOKEN、AWS 認証情報プロファイル、IAM ロール
  • Google - GS_NO_SIGN_REQUEST、アクセス ID またはキー、GDAL_HTTP_HEADER_FILE(GS_OAUTH2_REFRESH_TOKEN or GS_OAUTH2_CLIENT_ID and GS_OAUTH2_CLIENT_SECRET)GOOGLE_APPLICATION_CREDENTIALS(GS_OAUTH2_PRIVATE_KEY or GS_OAUTH2_CLIENT_EMAIL)(GS_OAUTH2_PRIVATE_KEY_FILE or GS_OAUTH2_CLIENT_EMAIL)、または IAM Role

上記のプロバイダー オプション以外に、ARC_DEEP_CRAWL オプション (デフォルト: True) も、すべてのサービス プロバイダーで使用することができます。 このオプションを True に設定すると、クラウド内で拡張子が付いていない CRF を識別できます。 この処理には時間がかかるため、カタログ参照操作と巡回操作を高速化する場合は、このオプションを False に設定することをお勧めします。

Value Table
folder
(オプション)

ラスター データセットが格納される bucket_name パラメーター値内のフォルダー。

String

派生した出力

名前説明データ タイプ
out_connection

出力クラウド ストレージ コネクション ファイルのパス。

File

コードのサンプル

CreateCloudStorageConnectionFile (クラウド ストレージ コネクション ファイルの作成) の例 1 (Python ウィンドウ)

以下は、CreateCloudStorageConnectionFile 関数を実行する Python サンプルです。

#====================================
# CreateCloudStorageConnectionFile
# Usage:
# arcpy.management.CreateCloudStorageConnectionFile(
#     out_folder_path, out_name, AZURE | AMAZON | GOOGLE | ALIBABA, bucket_name,
#     {access_key_id}, {secret_access_key}, {region}, {end_point},
#     { {Name} {Value}; {Name} {Value}...})
# arcpy.management.CreateCloudStorageConnectionFile(
#     out_folder_path, out_name, AZURE | AMAZON | GOOGLE | ALIBABA, bucket_name,
#     {access_key_id}, {secret_access_key}, {region}, {end_point},
#     {config_options})

import arcpy

# Create connection to open public bucket with requester pay option
arcpy.management.CreateCloudStorageConnectionFile(
    "C:/Workspace/connections", "awss3storage.acs", "AMAZON", "publicrasterstore",
    config_options="AWS_REQUEST_PAYER requester")

# Create connection to secured Azure bucket
arcpy.management.CreateCloudStorageConnectionFile(
    "C:/Workspace/connections", "azurestorage.acs", "AZURE", "rasterstore", "imageaccount",
    "NOGEOU1238987OUOUNOQEWQWEIO")

# Create Alibaba connection with end points
arcpy.management.CreateCloudStorageConnectionFile(
    "C:/Workspace/connections", "aliyun.acs", "ALIBABA", "rasterstore", "AYOUER9273PJJNY",
"NOGEOU1238987OUOUNOQEWQWEIO", end_point="rasterstore.oss-us-west-1.aliyuncs.com")
CreateCloudStorageConnectionFile (クラウド ストレージ コネクション ファイルの作成) の例 2 (スタンドアロン スクリプト)

以下は、CreateCloudStorageConnectionFile 関数を実行する Python サンプルです。

#====================================
# CreateCloudStorageConnectionFile
# Usage:
# arcpy.management.CreateCloudStorageConnectionFile(
#     out_folder_path, out_name, AZURE | AMAZON | GOOGLE | ALIBABA, bucket_name,
#     {access_key_id}, {secret_access_key}, {region}, {end_point},
#     { {Name} {Value}; {Name} {Value}...})
# arcpy.management.CreateCloudStorageConnectionFile(
#     out_folder_path, out_name, AZURE | AMAZON | GOOGLE | ALIBABA, bucket_name,
#     {access_key_id}, {secret_access_key}, {region}, {end_point},
#     {config_options})

import arcpy

outfolder = "C:/Workspace/connections"
connectname = "googlecloudos.acs"
provider = "GOOGLE"
accesskey = "AYOUER9273PJJNY"
secretkey = "NOGEOU1238987OUOUNOQEWQWEIO"
bucketname = "rasterstore"

# Create connection to Google cloud object storage
arcpy.management.CreateCloudStorageConnectionFile(
outfolder, connectname, provider, bucketname, accesskey, secretkey)

環境

このツールは、ジオプロセシング環境を使用しません。

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック