つばろぐ

主に C#, .NET, Azure の備忘録です。たまに日記。

dotnet/announcements のベストプラクティスが出ていた

GitHubdotnet/announcements リポジトリには、.NET についてのアナウンスや変更についての通知が Issue として集約されている。

github.com

このリポジトリの目的、どういう通知がまとめられるか、Issue の読み方や探し方などがまとめられたベストプラクティスが公開された。

github.com

GitHub から .NET のアップデートを収集している人はベストプラクティスを一度読んでみると良いだろう。

Microsoft MVP for Developer Technologies を再受賞しました!(2022-2023)

今年も Microsoft MVP を再受賞することができました。
カテゴリは引き続き Developer Technologies です。

コミュニティ活動としては #devblogradio を継続的に行いつつ、そろそろ Fukuoka.NET などオフラインのコミュニティも再開してもいいかもなという気持ちになっています。

これからも .NET や Azure などの様々なアウトプットを楽しんでいきたいなと思います。

※会社ブログもぜひ読んでください

aadojo.alterbooth.com

リソースグループへのRBACを設定するAzure CLI

やりたいこと

  1. Azure AD にユーザーを招待する
  2. リソースグループを作成する
  3. リソースグループに招待したユーザーのRBACを設定する

この流れの作業を行う機会が少なくないので、ポータルではなく Azure CLI でできるようにしておきたい。

1. Azure AD にユーザーを招待する

本来なら Azure CLI ではなく Microsoft Graph API を使用するが、Azure CLI にも az rest という便利なコマンドがある。
az restMicrosoft Graph API の認証に必要なアクセストークンが取得できるため、結果的に Azure CLI で操作ができるようになる。

docs.microsoft.com

例:自身のユーザー情報を取得する

$ az rest \
>   --method get \
>   --url https://graph.microsoft.com/v1.0/me/
{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
  "businessPhones": [],
  "displayName": "松村優大",
  "givenName": "優大",
  "id": "...",
  "jobTitle": null,
  "mail": null,
  "mobilePhone": null,
  "officeLocation": null,
  "preferredLanguage": null,
  "surname": "松村",
  "userPrincipalName": "..."
}

※一部の値はダミー

Azure AD にユーザーを招待する

az rest \
  --method post \
  --url "https://graph.microsoft.com/v1.0/invitations" \
  --body "{\"invitedUserEmailAddress\": \"email@example.com\", \"inviteRedirectUrl\": \"https://myapp.contoso.com\", \"sendInvitationMessage\": true}"

invitedUserEmailAddress に招待先のメールアドレスを指定する。
sendInvitationMessagetrue を指定することで招待メールが送付される。

docs.microsoft.com

2. リソースグループを作成する

まぁ、これは定番ですかね。

az group create --name rg-rbac-control

docs.microsoft.com

3. リソースグループに招待したユーザーのRBACを設定する

普段この作業は Azure ポータルで行うので、改めてコマンドを把握しておきたい。
例えばリソースグループの共同作成者ロールを付与したいときは次のようになる。

USER_ID=RBACを設定したいユーザーID

az role assignment create \
  --assignee $USER_ID \
  --role "Contributor" \
  --resource-group rg-rbac-control

docs.microsoft.com