ある企業が Azure ストレージアカウントでユーザー委任 SAS(User Delegation SAS)を作成したいと考えている。ユーザー委任 SAS がアカウントキーを使った SAS と最も異なる点として正しい説明はどれか。
- A. ユーザー委任 SAS は Entra ID ユーザー(またはサービスプリンシパル)の認証情報で署名されるため、アカウントキーへのアクセスが不要でより安全である
- B. ユーザー委任 SAS はキューとテーブルにも使用でき、BLOB にのみ有効なアカウントキー SAS より適用範囲が広い
- C. ユーザー委任 SAS は有効期限を設定できないため、永続的なアクセスに適している
- D. ユーザー委任 SAS はストレージアカウント全体に対してのみ発行でき、特定のコンテナには使えない
解答と解説を見る
正解: A
ユーザー委任 SAS は Entra ID(Azure AD)の認証トークンを使ってユーザーまたはサービスプリンシパルの ID で署名される。これによりストレージアカウントキーへのアクセス権を持たない運用者でも SAS を生成でき、アカウントキーの露出リスクをなくせる。さらに、SAS を作成したユーザーが持つ権限の範囲内でのみ SAS を発行できるため、過剰権限の SAS 発行を防ぐことができる。ユーザー委任 SAS は特定のコンテナや BLOB に限定して発行できる(アカウント全体のみではない)。ユーザー委任 SAS は BLOB ストレージにのみ適用でき、キューやテーブルには使えないため選択肢 B は逆である。ユーザー委任 SAS も有効期限の設定が必要であり、最大 7 日間に制限されている。
📚 関連サービスの解説: Microsoft Entra ID