6. azurerm vs. azuread
プロバイダ azurerm azuread
開発・保守 HashiCorp HashiCorp
ライブラリ Azure SDK for Go Azure SDK for Go
API Azure Resource Manager
Azure Active Directory Graph
2022/06 終了予定
機能
仮想マシン、ストレージ、
マネージド DB や K8s など
Azure のほとんどのサービス
ユーザー、グループ、アプリケー
ションなどの ID 管理
7. azuread provider をとりまく状況
API: Azure AD Graph の廃止と MS Graph 移行の要請
▪ Azure AD Graph は古い API - 2022 年 6 月 30 日で廃止のアナウンス
▪ MS Graph は新しい API - Azure AD Graph の機能も包含している
▪ すでに Azure AD Graph への新機能の追加は止まっている
Library: azuread provider の Azure SDK for Go への依存
▪ Azure SDK は Azure AD Graph のみに対応しており MS Graph は使えない
▪ 公式の MS Graph SDK には Go 言語のサポートがない
9. 状況に一石を投じる msgraph.go
msgraph.go とは?
▪ 非公式の Go 言語用 MS Graph ライブラリです
https://github.com/yaegashi/msgraph.go
▪ 会社の Office 365 をいじるために Go 言語でツールを自作したのが始まり
▪ Go Conference 2019 Autumn で発表
10. msgraph provider の誕生
Terraform provider の開発
▪ terraform-plugin-sdk を使用する
https://github.com/hashicorp/terraform-plugin-sdk
▪ msgraph.go のようなライブラリがあれば Terraform provider 開発は容易
msgraph provider を開発する意義
▪ azuread provider の補完と代替
▪ Azure SDK for Go の代わりに msgraph.go を使用
▪ Azure AD Graph では実現できないことを MS Graph で実現する
11. azuread vs. msgraph
プロバイダ azuread msgraph
開発・保守 HashiCorp コミュニティ
ライブラリ
Azure SDK for Go
(Microsoft)
msgraph.go
(コミュニティ)
API
Azure Active Directory Graph
2022/06 終了予定
Microsoft Graph
機能
ユーザー、グループ、アプリケー
ションなどの ID 管理
ID 管理、ファイル、メール、カレン
ダー、サイト、チームなどの
Microsoft 365 サービスのリソー
スすべて (予定)