理系学生日記

おまえはいつまで学生気分なのか

「ひと目でわかるAzure Active Directory」を読んだ

仕事でAzure周りを扱うことになりました。 有識者の方に話を聞いてみたところ、AzureはAzure Active Directory(Azure AD)を中心として構成されているそうです。そうであれば、まずはAzure ADを押さえておかないと話ができないであろうと考え、Azure ADの本を読んでみました。

Azure ADはAzureサブスクリプションとは独立している

この本を読む前に混乱していたことは、AzureサブスクリプションとAzure ADとの関係でした。 ぼくの持っていた先入観は以下のようなものでした。

  • 「Azure AD」という名前がついている以上、Azure ADはAzureサブスクリプションに包含されている
  • 「Azure AD」はAzureサブスクリプションの管理対象である

しかしこの本を読んだ後、前者については正しく、後者については全くの誤解、という認識になりました。

Azure ADテナント1は、Office365あるいはAzureサブスクリプションのサインアップにより取得できます。一方で、Azure ADはAzureサブスクリプションとは包含関係にない、独立したサービスです。 AzureサブスクリプションとAzure ADは信頼関係を結び連携しているだけであり、課金の考え方も請求書の単位も別になります。

別サービスであるため、ポータル画面としても別の画面が用意されています。 Azure ADは、AzureからだけでなくOffice365からも「利用される」サービスであるため、独立したポータルやダッシュボードを持つという思想もうなづけるところです。

Azure AD

Azure ADはユーザーやグループ、アプリケーションを管理するサービスであり、そしてそれらを管理するために認証や認可・監査といった機能も統合されています。 Azure ADでユーザーとアプリケーションを管理していれば、アプリケーションのユーザー認証をAzure ADに任せることも可能(アプリで認証を実装する必要がない)です。 この具体的な例がAzure Portalです。以下のスクリーンショットのように、Azure Portal自体もAzure ADを利用する1つのアプリケーションとして登録されています。

もちろんAzure ADだけではないにせよ、アプリケーションに変更を加えることなく一定の認証・認可機能が付与できるというのは便利です。 ユーザー管理機能を1つのバックエンドサービスとして切り出し、他のサービスから使えるようにするというのは12 factor appのいうBacking Serviceに通じるものがあります。

AWSとAzureの違いは多く触れられる話題であり、AzureでもAWS サービスと Azure サービスの比較でまとめています。 しかしその前の大方針としてAzureはADを中心として個々のサービスが紐づけられており、AWSのIAMとはまた違った発展を遂げているというのは、非常に特徴的な部分だと感じました。

書籍自体はどうだったか

書籍自体は、管理画面のスクリーンショット多めで操作のイメージが掴みやすく良い本でした。 AzureがAzure ADを理解しないと使いこなせないサービスである一方で、Azure ADを軸とした書籍はこの本を除いてほとんどないので、そういった意味でも貴重な本です。 Azureを使って開発を進めるチームにはAzure ADについての理解が必須なので、ある種必携ではないかとも感じました。


  1. xxx.onmicrosoft.comといった一意の名前を持つ、組織専用のAzure AD環境。