しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Azure App Service と Regional VNET Integration を使ったセキュアなアプリケーションの実装パターン

2020 年は Azure App Service にとってはネットワーク周りの新機能やアップデートが非常に多い年になりました。そろそろ今年も終わりなので App Service の定石アーキテクチャをアップデートする良い機会です。まずは今年のネットワーク関連アップデートにつ…

Vue.js 3.0 へのアップグレードを行った作業メモ

これまでも小規模なアプリで Vue.js 2.x を使っていましたが、そろそろ 3.0 へアップグレードするかという気持ちになったので、何故か日付が変わってから作業しました。該当のコミット、Pull Request は以下のようになりました。一部分だけサラッと使えるの…

App Service Authentication が OpenID Connect Provider をサポートするようになった

タイトルの通り App Service の Authentication (Easy Auth) で OpenID Connect に対応したプロバイダーを追加出来るようになりました。プレビュー公開されたのは数か月前だったのですが、諸々の事情によって動かないパターンのが多かったためお蔵入り状態に…

Cosmos DB のインデックスポリシーの基本と最適化の方法

Cosmos DB は RDB のようにインデックスを個別で付ける必要がなく、デフォルトのままでも十分なパフォーマンスが出るようになっていますが、最適化を行うとスループットの向上やコスト削減に繋がります。特に最近は大量データの処理基盤として Cosmos DB を…

WPF と WebView2 で MSAL を使わずに Azure AD 向け認可コードフローを実装してみた

普段は App Service の Easy Auth を使ってサクッと済ませるのですが、ちょいちょい MSAL を使った Azure AD や Azure AD B2C へのログイン処理をアプリケーションに組み込むことがあります。特にネイティブアプリケーションの場合が多いので、.NET Core の …

Azure App Service のネットワーク関連アップデート (NAT Gateway / NSG / Access Restriction)

ASE ではないマルチテナントの App Service では Outbound IP は同じ Stamp に乗っている他の App Service と共有されていて、外部連携などで IP を使ったアクセス制限が必要な場合には若干の問題がありましたが、NAT Gateway を使うことで任意の IP に固定…

.NET Conf 2020 Online - .NET 5 リリース記念パーティートーク フォローアップ

金曜の夜に .NET 5 のリリース記念と称して、.NET 好きメンバーを集めてアップデートや新機能について話をしました。考えていたタイムスケジュールが完全に崩壊してしまいましたが、2 時間で何とか収まりました。スピーカーは綺麗に興味が異なっていたので、…

Azure App Service の .NET 5 Early Access を一通り試してみた

.NET Conf 2020 で .NET 5 が正式リリースされましたが、同じタイミングで App Service での .NET 5 Early Access 機能が発表され、多少の制約はありますがリリースとほぼ同時に利用可能になりました。App Service Teams のブログと GitHub にドキュメントが…

Hack Azure! #4 - Synapse と Cosmos で実現するサーバーレスデータ分析 フォローアップ

Hack Azure! #2 の Cosmos DB 回の時から何時かはやりたいと言っていた Synapse Analytics の回を開催しました。別名 Microsoft 畠山さんに何でも聞ける会という感じです。少し前に Synapse Link for Cosmos DB を Synapse SQL Serverless で使う機能が Publ…

Azure Functions の Retry Policy 機能を使って信頼性の高い処理を実装する

GitHub 上で開発が進んでいることは把握していましたが、ついに待望の Retry Policy 機能が Azure Functions に実装されました。まだ Preview 扱いのようですが、1 年以上は待った気がします。単純にリトライするだけであれば Polly などを使えば済みますが…