セキュリティで保護された接続を確保するために安全な転送を要求する

ストレージ アカウントに [安全な転送が必須] プロパティを設定すると、セキュリティで保護された接続からの要求のみを受け入れるようにストレージ アカウントを構成できます。 安全な転送を要求すると、セキュリティで保護されていない接続から送信される要求はすべて拒否されます。 Microsoft では、すべてのストレージ アカウントに対して常に、セキュリティで保護された転送を要求することをお勧めしています。

安全な転送が必要な場合、Azure Storage REST API 操作の呼び出しは HTTPS を介して行う必要があります。 HTTP を介して行われた要求はすべて拒否されます。 既定では、ストレージ アカウントを作成すると、 [安全な転送が必須] プロパティが有効になります。

Azure Policy には、ストレージ アカウントに対して安全な転送が要求されることを保証する組み込みのポリシーが用意されています。 詳細については、「Azure Policy の組み込みのポリシー定義」の「ストレージ」セクションを参照してください。

ストレージ アカウントに対して安全な転送が求められている場合、暗号化なしの SMB 経由で Azure ファイル共有に接続しても失敗します。 セキュリティで保護されていない接続の例としては、暗号化なしの SMB 2.1 または SMB 3.x 経由の接続を挙げることができます。

注意

Azure Storage ではカスタム ドメイン名の HTTPS はサポートされないため、カスタム ドメイン名を使用している場合、このオプションは適用されません。

このセキュリティで保護された転送設定は、TCP には適用されません。 セキュリティで保護されていない、TCP を使用した Azure Blob Storage での NFS 3.0 プロトコルのサポートによる接続は成功します。

Azure portal で安全な転送を要求する

Azure portal でストレージ アカウントを作成するときに、 [安全な転送が必須] プロパティを有効にすることができます。 既存のストレージ アカウントの場合も有効にすることができます。

新しいストレージ アカウントの安全な転送が必須

  1. Azure Portal で [ストレージ アカウントの作成] ウィンドウを開きます。

  2. [詳細設定] ページで、 [安全な転送を有効にする] チェック ボックスをオンにします。

    [ストレージ アカウントの作成] ブレード

既存のストレージ アカウントの安全な転送が必須

  1. Azure Portal で既存のストレージ アカウントを選択します。

  2. ストレージ アカウント メニュー ウィンドウの [設定] で、 [構成] を選択します。

  3. [安全な転送が必須] で、 [有効] を選択します。

    ストレージ アカウント メニュー ウィンドウ

コードから安全な転送を要求する

安全な転送をプログラムで要求するには、ストレージ アカウントで enableHttpsTrafficOnly プロパティを True に設定します。 このプロパティを設定するには、ストレージ リソース プロバイダーの REST API、クライアント ライブラリ、またはツールを使用します。

PowerShell を使用して安全な転送を要求する

注意

この記事は、Azure Az PowerShell モジュールを使用するように更新されています。 Az PowerShell モジュールは、Azure と対話するために推奨される PowerShell モジュールです。 Az PowerShell モジュールの使用を開始するには、「Azure PowerShell をインストールする」を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

このサンプルには、Azure PowerShell モジュール Az バージョン 0.7 以降が必要です。 バージョンを確認するには、Get-Module -ListAvailable Az を実行します。 インストールまたはアップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。

Connect-AzAccount を実行して、Azure との接続を作成します。

以下のコマンド ラインを使って、設定を確認します。

Get-AzStorageAccount -Name "{StorageAccountName}" -ResourceGroupName "{ResourceGroupName}"
StorageAccountName     : {StorageAccountName}
Kind                   : Storage
EnableHttpsTrafficOnly : False
...

以下のコマンド ラインを使って、設定を有効にします。

Set-AzStorageAccount -Name "{StorageAccountName}" -ResourceGroupName "{ResourceGroupName}" -EnableHttpsTrafficOnly $True
StorageAccountName     : {StorageAccountName}
Kind                   : Storage
EnableHttpsTrafficOnly : True
...

Azure CLI を使用して安全な転送を要求する

このサンプルを実行するには、最新バージョンの Azure CLI をインストールします。 開始するには、az login を実行して、Azure との接続を作成します。

Azure CLI のサンプルは、bash シェル用に記述されています。 このサンプルを Windows PowerShell またはコマンド プロンプトで実行するには、スクリプトの要素を変更する必要があります。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

次のコマンドを使用して設定を確認します。

az storage account show -g {ResourceGroupName} -n {StorageAccountName}
{
  "name": "{StorageAccountName}",
  "enableHttpsTrafficOnly": false,
  "type": "Microsoft.Storage/storageAccounts"
  ...
}

次のコマンドを使用して設定を有効にします。

az storage account update -g {ResourceGroupName} -n {StorageAccountName} --https-only true
{
  "name": "{StorageAccountName}",
  "enableHttpsTrafficOnly": true,
  "type": "Microsoft.Storage/storageAccounts"
  ...
}

次のステップ

BLOB ストレージのセキュリティに関する推奨事項