BEACHSIDE BLOG

Azure とか C# 好きなエンジニアの個人メモ ( ・ㅂ・)و ̑̑

Azure

Microsoft Graph API で グループ 情報を操作する ( C#, .NET SDK )

前回のブログでは、C# の SDK を使ってユーザーの操作について触れましたが、今回はグループの操作をしていきましょう。 事前準備 グループの作成 グループの作成(ユーザー追加無し) グループの作成(ユーザー追加もする) グループにメンバーを追加する …

Microsoft Graph API で ユーザー 情報を操作する ( C#, .NET SDK )

Microsoft Graph API を使って Azure Active Directory (略して Azure AD とか AAD) からユーザーの情報を操作するのってかなり昔から使ってるんですがブログにしたことがなかったので改めて書いてみようと思いました。 今回は C# の SDK を使ったユーザーの…

Azure AD で Microsoft Graph API のアクセス許可を追加する

Microsoft Graph API を使って情報を取得する際、デフォルトではログインしたユーザーのプロファイルしか見ることができません。ほかに情報を取得したい場合は、必要に応じてアクセス許可を追加してできるパーミッションを増やしてあげる必要があります。 と…

Cognitive Services の Form Recognizer の更新情報(2020年3月 version)

Form Recognizer は、v2.1 preview 3 のアップデートで実用的に使えるじゃないかってくらいに感じたので、改めて機能や更新内容をメモしてみます。 Form Recognizer とは ざっくり機能を説明すると、請求書やレシートといったドキュメントからデータを読み取…

Form Recognizer の Form OCR Testing Tool のセットアップ方法 (2021年3月 version)

Azure の Cognitive Services の中のひとつ、Form Recognizer をサクッと試せるツール Form OCR Testing Tool のセットアップ方法のメモです。 実際に使ってどれくらいの精度でるんやろってのがみたいところですが、それは分析した請求書といったフォームへ…

Azure Cognitive Search - データをインポートしてインデックス作成する

全開のブログではインデックスがある前提でインデックスを push モデルで更新する方法と、camel case への変換に関する Tips を書きました。 blog.beachside.dev インデックスありきの話を書いたので、今回はそもそものインデックスを作るところのメモです。…

Azure Cognitive Search - 検索のインデックス更新の基礎 ( C#, SDK v11 )

Azure Cognitive Search でインデックスを更新する際 C# でサクッと更新できるのですが、それに関するメモです。 インデックスの更新は大きく2パターン Pull model Push model SDK v11 の基礎知識 パッケージ名 Json の Serializer 実装してみる Azure Porta…

Swagger UI で Azure AD の認証をする (ASP.NET Core, Authorization Code Flow with PKCE)

前回は Open API の基本的な設定をしましたが、今回のゴールはこんな感じ。 Swagger UI の Authorize ボタンから Azure Active Directory (Azure AD) のサインイン画面にとんで、サインインできたらトークンを取得する Swagger UI で認証が必要な API を Aut…

Cosmos DB の 整合性レベル ( Consistency levels ) を改めて整理してみた

Cosmos DB の整合性レベルは、個人的にはいつもはあまり意識せずに Session を使ってます (意識する必要のない使い方や設計をしているって言った方が妥当か..)。 ただ、Document DB が出た時からもう4-5年使ってるのに、整合性レベルの日本語表記の英語の表…

Cognitive Services: Read API 3.x - OCR の API を試す (2020/10月)

2020 年は1月から9月の間で Cognitive Services の Vision カテゴリーの中の OCR の機能がちょろちょろとアップデートしてました。 OCR の今までのアップデートを振り返りつつ、最新の Read API v3.1 Preview2 を試してみます。 Cogbot #29でもお話しした内…

Python + Azure Functions 入門: タイマートリガー 編

前回は Python で Azure Functions をローカルで開発するときの環境セットアップと、HTTP トリガーの Function App を作りました。 blog.beachside.dev 今回はタイマートリガー、つまり一定の時間間隔で起動するような Function App を作ってみます。 時間指…

Azure AD で ゲストユーザー が所属するグループのメンバー一覧が見えてしまうのを制限する

Azure Active Directory (Azure AD) に外部のゲストユーザーを招待すると、招待されたユーザーは アクセスパネル からグループに属しているユーザー全員の ID (メールアドレス) を見ることができました。以下図のようにがっつりみえます(ぼかして見えてねー…

Python + Azure Functions 入門: Http トリガー 編

普段から C# で Functions をがっつり使ってる私ですが、たまには Python での入門ネタでも整理しようかと思った今日この頃です。 今回は、Python で HTTP リクエストを受けてレスポンスを返す Azure Functions を作ります。簡易な Web API ですね。デバッグ…

Azure Active Directory のテナントを削除する

いらなくなった Azure AD のテナントを削除する際、以下図のよう削除前にやるべきことを示唆されます。 ほとんどが画面上からポチポチして状態をグリーンにできるんですが、エンタープライズアプリケーションの削除は、画面上では削除できないやつがあります…

アダプティブダイアログ を使って Echo Bot を作ってみる (Bot Framework, C#)

先日 Cogbot でお話しした際にコーディングだけですましてしまったので、そのフォローアップとして話した内容やコードをまとめました。 はじめに Echo Bot の作成 EchoBot の Adaptive dialog を書いてみる root.dialog の追加 出力ディレクトリに常にコピー…

Azure のリソースの命名規則: 2020年版

ちょいちょい使う Azure のリソースの命名規則に関するドキュメント、ちょいちょいググるがめんどくなったのでリンクをメモしておきます(ブックマークとかする気はないのだ)。 docs.microsoft.com ドキュメント後半の"名前の例" にあるように、このドキュ…

Azure AD の AppRoles ( アプリ ロール ) で認可 - 3: ASP.NET Core の実装

Azure AD で AppRoles を使って認証・認可をするのも、ようやく今回 ASP.NET Core (3.1)で Web API を作り、認証・認可を実現するターンです。 過去2つのブログでは 前々回、Azure AD の設定と AppRoles を定義 前回は、フロント側のサンプルコードで認証を…

Azure AD の AppRoles ( アプリ ロール ) で認可 - 2: SPAで認証トークンの取得

前回 AzureAD で AppRoles で権限を作って、ユーザーに割り当てました。 blog.beachside.dev 続編の今回は、フロントエンドのサンプルアプリで認証するメモです。 Azure AD を設定する上で一番重要と思っている Azure AD の "サポートされているアカウントの…

Azure AD の AppRoles ( アプリ ロール ) で認可 - 1: Azure AD の設定

例えば ASP.NET Core の Web API を Azure Active Directory ( Azure AD ) で認証をするとき、Azure AD の アプリの登録 ってメニューから登録をします( Web API が Azure AD を使いますっていうサービスプリンシパルの登録っすな)。 今回は Azure AD B2C …

Azure AD B2C の ID プロバイダー ( IdP ) に AWS Cognito を追加する

Azure AD B2C は ID プロバイダー(Identity Provider, IdP, また OpenID Provider, OP)として使うことができます。 雑にいうとユーザーのパスワードは AAD B2C で管理されている状態です。 また、Azure AD B2C を Relying Party (RP) として使うこともでき…

Azure AD B2C のカスタム属性を Graph API で管理する (後編)

前回は AAD B2C の設定をするだけで力尽きました。今回は Console App を使って、前回設定した Azure AD B2C のユーザーの情報やカスタム属性を取得・変更してみましょう。 カスタム属性は、前回 Tenant という名前の属性を追加したってことを前提に、Tenant…

Azure AD B2C のカスタム属性を Graph API で管理する (前編)

Azure AD B2C では、ユーザーの情報として Email や表示名、姓、名といったの一般的な Claim があります。それに加えて独自の Claim を追加することができます。 それがカスタム属性です。 Azure Portal からでは、カスタム属性を作成することがはきますが、…

Azure の Computer Vision まとめ ( Azure Cognitive Services: Vision 編 2020-03版 )

Cognitive Services のブログはしばらく書いてなかったし仕事でも使ってなかったので、そろそろ一通りのおさらいしようと思っています。 ということでまずは Azure の Cognitive Services の中で Vision 系のサービスのひとつ、Computer Vision API から始め…

Azure Data Studio で LocalDB に接続して SQL Notebook を実行する

Azure Data Studio から LocalDB に接続するときは何の値を入れればいいのかなーのメモ。 接続するだけだと寂しさを感じたので知名度が低い SQL Notebook でクエリを実行してみましょう。これは Jupyter Notebook のカーネルが SQL のやつです。 Local DB に…

Cosmos DB の Change Feed 機能と使い方 ( Azure )

Azure Cosmos DB の Change Feed は、データの変更を検知してイベントを発火できる超便利な機能です。Azure Functions の Cosmos DB Trigger を使うことで超簡単に利用できます。 個人的には近年 RDB はほぼ使ってなくて Cosmos DB ばっか使ってるわりに Cha…

Slack 通知用の Azure Functions の Custom Bindings を作る (2)

前回 Slack 側の準備と送信したいメッセージの json フォーマットを作りました。 blog.beachside.dev 今回は本題の Azure Functions の Custom Bindings を実装します。 作った順にコードを解説していきますが、コード全部は下の方にリンク張ってます。 Azur…

Slack 通知用の Azure Functions の Custom Bindings を作る (1)

自分のアプリから Slack への通知を、Azure Functions の Custom Bindings を使って作ります。 Slack の Incoming Webhook を使うことで簡単に Slack へ送信できるため、Logic Apps ...いやそれより Functions で HTTP Request 投げた方が早いですが、時間を…

Azure Database for PostgreSQL の入門 Tips と Data Studio を使って接続

Azure Database for PostgreSQL を作って Azure Data Studio でアクセスしてみようってお話です。 SQL Database と Cosmos DB ばかり触っているので、PostgreSQL をいじったり参考ドキュメントの整理にメモしてみました。 Azure Database for PostgreSQL (Si…

Azure のアイコン ( svg ) を取得する

資料作成時に利用する Azure の svg のアイコンの一覧記載のサイトってどこだっけ?ってなるのがめんどくさいのでメモしておきます。 サイトからダウンロード(イマイチ) Chrome の拡張で取得(おすすめ) サイトからダウンロード(イマイチ) Icons 以前の…

Azure Machine Learning の Workspace アクセス時に認証エラー

Azure Machine Learning ( ml.azure.com ) では、Workspace で NotebookVM を作りそのVM上で Jupyter Notebook を起動できます。 ちなみに Azure AI Advent Calendar 初日の投稿です!まだ空きがありますよ! qiita.com 一応説明しておくと、Azure Machine L…