このコンテンツは次に適用されます:🟩v4.0 (GA)🟩v3.1 (GA)🟥v3.0 (廃止)🟥v2.1 (廃止)
この記事では、Azure ポータルまたはAzure Storage Explorerを使用して、ユーザー委任、Shared Access Signature (SAS) トークンを作成する方法について説明します。 ユーザー委任 SAS トークンは、Microsoft Entra資格情報で保護されます。 SAS トークンは、Azure ストレージ アカウント内のリソースへのセキュリティで保護された委任されたアクセスを提供します。
大まかに言うと、SAS トークンのしくみを次に示します。
まず、アプリケーションは、REST API 要求の一部としてAzure Storageに SAS トークンを送信します。
次に、ストレージ サービスが SAS が有効であることを確認した場合、要求は承認されます。 SAS トークンが無効と見なされた場合、要求は拒否され、エラー コード 403 (禁止) が返されます。
Azure Blob Storageには、次の 3 種類のリソースが用意されています。
- Storage アカウントは、Azureでのデータに対して一意の名前空間を提供します。
- データ ストレージ コンテナー はストレージ アカウントに配置され、BLOB のセットを整理します。
- BLOB はコンテナーに配置され、ファイル、テキスト、画像などのテキストとバイナリ データを格納します。
SAS トークンを使用するタイミング
カスタム モデルのトレーニング。 トレーニング ドキュメントの組み立てセットは、必ず Azure Blob Storage コンテナーにアップロードされなければなりません。 SAS トークンを使用して、トレーニング ドキュメントへのアクセスを許可することを選択できます。
パブリック アクセスでストレージ コンテナーを使用する。 SAS トークンを使用して、パブリック読み取りアクセス権を持つストレージ リソースへの制限付きアクセスを許可することを選択できます。
重要
Azure ストレージ アカウントが仮想ネットワークまたはファイアウォールによって保護されている場合、SAS トークンを使用してアクセス権を付与することはできません。 マネージド ID を使用して、ストレージ リソースへのアクセスを許可する必要があります。
管理 ID は、プライベートアカウントとパブリックアクセス可能なAzure Blob Storage アカウントの両方をサポートします。
SAS トークンはストレージ リソースにアクセス許可を付与し、アカウント キーと同じ方法で保護する必要があります。
SAS トークンを使用する操作は HTTPS 接続経由でのみ実行し、SAS URI は HTTPS などのセキュリティで保護された接続でのみ配布する必要があります。
前提 条件
開始するには、次のものが必要です。
アクティブな Azure アカウント。 お持ちでない場合は、 無料アカウントを作成できます。
Document Intelligence または multi-service リソース。
標準のパフォーマンスAzure Blob Storage アカウント。 ストレージ アカウント内に BLOB データを格納および整理するためのコンテナーを作成する必要があります。 ストレージ コンテナーを使用して Azure ストレージ アカウントを作成する方法がわからない場合は、次のクイック スタートに従います。
- ストレージ アカウントを作成します。 ストレージ アカウントを作成するときに、[インスタンスの詳細][>] フィールドで [Standard performance] を選択します。
- コンテナーを作成します。 コンテナーを作成するときに、[新しいコンテナー] ウィンドウでパブリック アクセス レベルをコンテナー (コンテナーと BLOB の匿名読み取りアクセス) に設定します。
ドキュメントをアップロードする
Azure ポータルにサインインします。
- ストレージ アカウント → データ ストレージ → コンテナーを選択します。
一覧からコンテナーを選択します。
ページの上部にあるメニューから [ アップロード ] を選択します。
[ BLOB のアップロード ] ウィンドウが表示されます。 アップロードするファイルを選択します。
メモ
既定では、REST API はコンテナーのルートにあるドキュメントを使用します。 API 呼び出しで指定されている場合は、サブフォルダーに整理されたデータを使用することもできます。 詳細については、「 サブフォルダーにデータを整理する」を参照してください。
SAS トークンの生成
前提条件が満たされ、ドキュメントをアップロードしたら、SAS トークンを生成できるようになりました。 ここから 2 つのパスを取得できます。1 つはAzure ポータルを使用し、もう 1 つは Azure ストレージ エクスプローラーを使用します。 詳細については、次の 2 つのタブから選択します。
Azure ポータルは、グラフィカル ユーザー インターフェイス (GUI) を使用してAzureサブスクリプションとリソースを管理できる Web ベースのコンソールです。
Azure ポータルにサインインします。
ストレージ アカウント>コンテナー>コンテナーに移動します。
ページの上部付近にあるメニューから [ SAS の生成 ] を選択します。
ユーザー委任キー→署名方法を選択します。
適切なチェック ボックスをオンまたはオフにして、 アクセス許可 を定義します。
- 読み取り、書き込み、削除、およびリストのアクセス許可が選択されていることを確認します。
Azure ポータルで SAS アクセス許可フィールドを示すスクリーンショット
重要
次のようなメッセージが表示される場合は、ストレージ アカウント内の BLOB データへのアクセス権を割り当てる必要もあります。
Azure ロールベースのアクセス制御 (Azure RBAC) は、Azure リソースへのアクセスを管理するために使用される承認システムです。 Azure RBAC は、Azure リソースのアクセスとアクセス許可を管理するのに役立ちます。
BLOB データにアクセスするためのAzure ロールを割り当てますAzure ストレージ コンテナーの読み取り、書き込み、削除のアクセス許可を許可するロールを割り当てます。 ストレージ BLOB データ共同作成者を参照してください。
署名されたキーの 開始時刻 と 有効期限を 指定します。
- SAS トークンを作成する場合、既定の期間は 48 時間です。 48 時間後に、新しいトークンを作成する必要があります。
- ドキュメント インテリジェンス サービスの操作にストレージ アカウントを使用する期間を長く設定することを検討してください。
- 有効期限の値は、 アカウント キー と ユーザー委任キーのどちらの署名方法を使用しているかによって決まります。
- アカウント キー: 制限時間は課されません。ただし、間隔を制限し、侵害を最小限に抑えるように有効期限ポリシーを構成することをお勧めします。 Shared Access Signature の有効期限ポリシーを構成します。
-
ユーザー委任キー: 有効期限の値は、SAS トークンの作成から最大 7 日間です。 SAS は、ユーザー委任キーの有効期限が切れた後も無効であるため、有効期限が 7 日を超える SAS は 7 日間のみ有効になります。 詳細については、「
「Microsoft Entra 資格情報を使用して SAS をセキュリティで保護する」を参照してください。
[許可される IP アドレス] フィールドは省略可能で、要求を受け入れる IP アドレスまたは IP アドレスの範囲を指定します。 要求 IP アドレスが SAS トークンで指定された IP アドレスまたはアドレス範囲と一致しない場合、承認は失敗します。 IP アドレスまたは IP アドレスの範囲は、プライベートではなくパブリック IP である必要があります。 詳細については、「IP アドレスまたは IP 範囲を指定する」を参照してください。
[許可されるプロトコル] フィールドは省略可能であり、SAS トークンで行われた要求に対して許可されるプロトコルを指定します。 既定値は HTTPS です。
[ SAS トークンと URL の生成] を選択します。
BLOB SAS トークンクエリ文字列と BLOB SAS URL がウィンドウの下部に表示されます。 BLOB SAS トークンを使用するには、ストレージ サービス URI に追加します。
BLOB SAS トークンと BLOB SAS URL の値をコピーして、セキュリティで保護された場所に貼り付けます。 値は 1 回だけ表示され、ウィンドウを閉じた後は取得できません。
SAS URL を作成するには、ストレージ サービスの URL に SAS トークン (URI) を追加します。