Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Azure Microsoft

Azure StorageでSASトークン発行時の「使用できるリソースの種類」の意味について

投稿日:2023年5月14日 更新日:

 

<目次>

(1) Azure StorageでSASトークン発行時の「使用できるリソースの種類」の意味について
 (1-1) 知りたいこと
 (1-2) 「使用できるリソースの種類」の説明
 (1-3) まとめ

(1) Azure StorageでSASトークン発行時の「使用できるリソースの種類」の意味について

(1-1) 知りたいこと

・Azure StorageでSASトークン発行時に「使用できるリソースの種類」という選択肢があり「サービス」「コンテナ」「オブジェクト」が選べるが、それぞれの意味を知りたい。
・また、Azure Machine Learningで機械学習の処理でストレージアカウントを操作する際に「どれを選べばよいか?」を理解したい。
(図100)

目次にもどる

(1-2) 「使用できるリソースの種類」の説明

サービス、コンテナ、オブジェクトのそれぞれの違いを説明。
(表1)
権限 説明
使用できるリソースの種類
∟サービス
■概要
サービスレベルのAPIを意味する。
(例)サービスのプロパティの取得/操作
(例)サービスのステータス取得
(例)BLOB/キュー/テーブル/ファイル共有の一覧取得

■無い場合のエラー(例:Azure Machineの場合)

使用できるリソースの種類
∟コンテナ
■概要
コンテナレベルのAPIを意味する。
単語が紛らわしいですが「BLOBコンテナ」の意味ではなく、BLOB/キュー/テーブル/ファイル共有の4つを総称した呼称。

(例)BLOBのCREATE/DELETE操作
(例)キューのCREATE/DELETE操作
(例)テーブルのCREATE/DELETE操作
(例)ファイル共有のCREATE/DELETE操作
(例)ファイルやディレクトリの一覧取得

■無い場合のエラー(例:Azure Machineの場合)
PermissionError: [Errno 13] Permission denied: ‘/mnt/azureml/cr/j/cfb8f05a271c470cbc42ce0e9c2eadbc/cap/data-capability/wd/INPUT_data_folder’

⇒Azure MLの場合、Notebook処理を実行するCPU/ストレージとは別に、モデルの学習処理やデプロイなどはDockerコンテナ上で実行しています。そのDockerコンテナイメージもまたAzure Storage(BLOB)上に保持されているため、このようなエラーが起きるものと推察。

使用できるリソースの種類
∟オブジェクト
■概要
オブジェクトレベルのAPIを意味する。
(例)「BLOB」へのPUT処理
(例)「キュー」内の「メッセージ」の読み取り
(例)「テーブル」の中にある「エンティティ」の読み取り
(例)「ファイル共有」内の「ファイルやディレクトリ」の作成操作

■無い場合のエラー(例:Azure Machineの場合)
DataAccessError(PermissionDenied(None))

(図121)無い場合のエラー

目次にもどる

(1-3) まとめ

「使用できるリソースの種類」は「BLOB/キュー/テーブル/ファイル共有」の4つのサービスについて「どのレベルでのAPI操作を許容するか?」を設定するものです。
よって、上記4つのサービス自体を作成・削除したい場合は「コンテナレベルのAPI」が必要です。
そうではなく、単に中のファイルやメッセージを操作したい場合は「オブジェクトレベルのAPI」でOKです。
このように、実現したい処理に応じて、SASトークンの権限を細かく制御する事が可能です。

Adsense審査用広告コード


Adsense審査用広告コード


-Azure, Microsoft
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Azure FunctionsでPythonのライブラリを追加する方法(依存関係解決)

  <目次> (1) Azure FunctionsでPythonのライブラリを追加する方法(依存関係解決)  (1-1) requirement.txtの設定手順  (1-2) 補足事項 …

Azure DevOpsのwikiを別プロジェクトに移動する方法

<目次> (1) Azure DevOpsのwikiを別プロジェクトに移動する方法  (1-1) 概要  (1-2) 手順(wikiの移行)  (1-3) 補足(PBIの移行方法) (1) Azure …

Outlookで「エラー(0x8004010F)」が発生した際の対処例のご紹介

  <目次> (1) Outlookで「エラー(0x8004010F)」が発生した際の対処例のご紹介  (1-1) 発生状況・エラーメッセージ  (1-2) 原因  (1-3) 対策 (1) …

Azure Machine LearningでDataStoreを作成してAzure Storage File Shares(ファイル共有)のデータを操作する方法

  <目次> (1) Azure Machine LearningでDataStoreを作成してAzure Storage File Shares(ファイル共有)のデータを操作する方法  ( …

no image

Outlookで「代理人アクセス」が表示されない

  <目次> (1) Outlookで「代理人アクセス」が表示されない  (1-1) 事象概要  (1-2) 原因  (1-3) 対策(Gmailの例)  (1-4) 備考:「代理人アクセス …

  • English (United States)
  • 日本語
Top