しばやん雑記

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

Azure Functions の .NET 8 向けアップデートが発表された

.NET 8 の GA が 2 カ月後に迫ってきたこのタイミングで、Azure Functions での .NET 8 向けアップデートが本格的に発表され始めました。そろそろ .NET 6/7 で Isolated を利用しているケースではアップデートを検討しても良いでしょう。.NET 6 の In-Proces…

Windows App SDK を使ってモダンなタイトルバーを持つアプリケーションを作る

Windows 11 で全面的に導入された Fluent Design System は個人的には結構好みなので、自作アプリでも同じようなデザインを実現したいのですが意外に難しいです。コントロールだけに限れば Windows App SDK を使うとある程度は対応は可能ですが、まだ使いや…

Hack Azure! #11 - Semantic Kernel をハックしよう フォローアップ

久し振りに Hack Azure を開催しましたが、今回は少し毛色を変えて Semantic Kernel について話をしました。Azure とあまり関係なさそうに見えますが Semantic Kernel は Azure OpenAI はもちろん、それ以外の各種サービスと組み合わせての利用や、Semantic …

C# Dev Kit for Visual Studio Code は GitHub Codespaces 上だと無料で使えてお得という話

最近は Azure OpenAI Service と Semantic Kernel の盛り上がりに伴い、ワークショップなどで GitHub Codespaces と Azure Functions の組み合わせで開発することが増えてきているので、安定して利用できる C# 開発環境を構築する方法を模索していました。こ…

Azure Functions (.NET Isolated Worker) に追加された ASP.NET Core Integration を一通り試した

今年の 11 月にリリース予定の .NET 8 と同時に .NET 向け Azure Functions は、これまでの In-Process モデルから Isolated Worker Process というモデルに統一されるのですが、正直なところ完成度が低いのと In-Process からの移行を全く考慮していない SD…

Application Insights の Code Optimizations 機能を ASP.NET Core アプリケーションで試してみた

少し前から Application Insights の Performance を開くと、上部に Code Optimizations というボタンが表示されるようになっています。隣にある Profiler は以前からある機能ですが、Code Optimizations はひっそりと追加された新しい機能となります。あま…

App Service Authentication と Entra ID で保護された Web API にアクセス可能な Access Token を取得する

App Service Authentication (Easy Auth) は非常に便利な機能なのですが、Web API をホストしている場合には他のアプリケーションから Service Principal を利用してアクセスしたいことがあります。直近では自分が開発している Key Vault Acmebot というアプ…

Build 2023 で発表されて Windows 11 Insider Preview で利用可能になった Dev Drive を試した

先月の時点で Windows 11 Insider Preview の Dev Channel では利用可能になっていて、パフォーマンス面で気になっていた点を検証していたのですが、ようやく Dev Drive について簡単にまとめる気になりました。Build 2023 ではオフライン限定の Dev Drive …

DARTSLIVE Home と iPad Pro で自宅ダーツ環境を整えた

この 1 年ほど再びダーツブームが自分の中に来ているのですが、家の近所に安心してダーツを投げて練習できる場所が無かったので、思い切って自宅のデッドスペース*1を活用してダーツ練習スペースを作りました。自宅のキッチンスペースはダーツに最適な幅と長…

Terraform と Azure DNS を使って Azure Front Door への Apex ドメイン割り当てを自動化する

Azure Front Door は Azure DNS のような Alias record set に対応したサービスと組み合わせると、Apex ドメインを割り当てて利用することが可能です。もちろん Managed Certificate として必要な証明書も自動で発行されるので HTTPS を無料で有効化できます…

Azure OpenAI Service に追加された Content filters (Preview) の実行結果を取得する

少し前から Azure OpenAI Service に Content filters (Preview) が追加されたからなのか、たまに Chat Completion を使っていると以下のようなメッセージが返ってくることがあります。メッセージ内容から Content filters に引っかかっていることは一発でわ…

ASP.NET (.NET Framework) 向けの各 Session State Provider が大規模アップデート

ASP.NET (.NET Framework) を利用したアプリケーションで必要になることが多い Session State Provider ですが、今年になってから大規模なアップデートが多いので一通り確認しておきました。現状 ASP.NET 向け Session State Provider は Cosmos DB / SQL Se…

Azure AD B2C のサインイン用メールアドレスを変更する

Azure AD B2C を使ってローカルアカウントのサインアップを実装するのが非常に簡単なのですが、用意されているユーザーフローでは登録時に使用したメールアドレスを変更出来ないという問題が出てきます。プロフィールの編集やパスワードのリセット機能はあり…

App Service / Static Web Apps / Container Apps の Easy Auth が OpenID Connect の RP-Initiated Logout をサポート

App Service などに実装されている Easy Auth (Authentication) はアプリケーション側の修正をすることなく、Azure AD や任意の OpenID Connect に対応した IdP を使ったログインを追加できる非常に便利な機能です。各 PaaS / Serverless 系サービスに実装さ…

Microsoft Build 2023 に現地参加してきた

これまで 2 本ほど Build 2023 関連のエントリを書いてきましたが、最後は Microsoft Build 2023 に現地参加してきたという内容です。MVP Global Summit には比較的参加してきましたが、Build への参加は初めてだったので現地の熱気を感じられて非常に楽しか…

Build 2023 で発表された Azure App Service のアップデート

Build 2023 では珍しく App Service のアップデートもいくつか発表されました。これまでは Build のようなイベントと関係ないタイミングでアップデートが発表されることが多かったので意外でした。とはいえ Build 前に発表されたものが半分ぐらいと、新規の…

Build 2023 で発表された Azure Cosmos DB のアップデート

先日開催された Microsoft Build 2023 では Azure Cosmos DB の新機能が数多く公開されました。ぶっちゃけかなり大規模な機能追加となっているので、気になる機能は個別に検証しつつまずは全体として NoSQL API に関連するアップデートをまとめることにしま…

仕事用 の PC を ASRock の Radeon RX 7900 XTX で強化した

先日仕事用の PC を Ryzen 9 7950X で新しく組みなおしたのですが、その際に GPU だけは欲しいモデルがなかったので、以前使っていた RX 6700 XT のリファレンスを付けていました。こだわりを持って NZXT のホワイト系のモデルを選んで組みなおしたので、せ…

4 年振りに MVP Global Summit に現地参加してきた

2020 年の MVP Global Summit が直前になってコロナの影響でオンライン開催になってから久しいのですが、2023 年になってようやくハイブリッド開催ということで Redmond Campus での参加も出来るようになったので現地参加してきました。コロナ前の最後に行っ…

Windows App SDK 1.3 で System Backdrop の設定と AppWindow の利用が簡単になった

先日 Windows App SDK 1.3 がリリースされて、個人的に良いアップデートだと思ったのでブログに書くことにしました。アップデート内容としてはタイトルの通りで少ないですが、Windows App SDK に対する不満の一部が解消されて嬉しいです。ぶっちゃけてしまう…

Azure App Service の Premium V3 に新しいインスタンスサイズが追加されたので試した

先日 Azure App Service の Premium V3 に新しいインスタンスサイズが追加されたことが発表されました。Premium V3 は Premium V2 よりも大きいインスタンスサイズ設定となっていましたが、サイズが拡充されたことでコストパフォーマンスと使い勝手が向上し…

仕事用の PC を NZXT と Ryzen 9 7950X で新しく自作した

2 年前に衝動的に Intel から Ryzen 9 5950X に乗り換えましたが、そろそろ Zen 4 に組み替えたくなってきたので Ryzen 9 7950X を使ってケースから一式組み替えました。最近は NZXT のパーツが大好きなので、今回は可能な限り NZXT で揃えました。メモリと …

Packer を利用して GitHub Actions から Azure Compute Gallery へ VM Image を作成する

前までは最近は Azure VM を使うことがほぼ無くなっていたのですが、最近は GPU インスタンスが必要なケースで VMSS の利用を検討することが多くなってきたので、VM Image のカスタマイズを自動化する際に役立つ HashiCorp Packer を触っておきました。Azure…

Azure App Service の Disaster Recovery Mode が 2025/3/31 で廃止されるらしい

ここ数日の間に App Service の Disaster Recovery Mode が 2025/3/31 で廃止されるというメールが大量に届いていると思います。こういうメールが届くと少し身構えてしまうものですが、そもそも App Service の Disaster Recovery Mode ってなんやねんという…

Azure Cosmos DB の Burst Capacity (Preview) を試した

去年の Build で発表されていた Cosmos DB の Burst Capacity ですが、当時は Private Preview に近い形だったのでサインアップが必要で検証をしていなかったのですが、最近何となくドキュメントを確認するとサインアップの記述が消えていたので試しました。…

Azure App Serivce の Regional VNET Integration の制約が緩和されて更に便利に

App Service で個人的に一番重要な機能は Regional VNET Integration だと考えていて、この機能の追加によってマルチテナントの App Service でもセキュアなアプリケーション構成が組めるようになりました。Regional VNET Integration については既に何回も…

Terraform Cloud に追加された Dynamic Provider Credentials を Azure Provider で試した

今朝に発表された Terraform Cloud のアップデートで OpenID Connect を利用した認証情報の取得に対応したようです。Dynamic Provider Credentials という名前で紹介されています。GitHub Actions ではほぼ OIDC のみを使うようになりましたが、一番強い権限…

既存 App Service の実行基盤も VMSS に移行され始めた模様

昔にデプロイした Azure App Service の実行基盤はトラディショナルな Cloud Services で構築されているのですが、少し前に Cloud Services ベースで動いていた App Service が VMSS ベースに切り替わっていることに気が付きました。いつかは移行されると思…

Azure Cosmos DB を使って安全にシーケンス番号を生成する

Cosmos DB には組み込みで RDB のようにシーケンス番号を生成する機能は用意されていないので、基本的には GUID / UUID を使うことになるのですが、稀にシーケンス番号が欲しくなることがあります。RDB というか SQL Server の場合は以下のようにシンプルに…

Azure Container Apps のカスタム DNS サフィックスを試した

何時から実装されていたのかは分からないのですが、Azure Container Apps の Container Apps Environment 単位でワイルドカードドメインを割り当てることで、Container Apps 単位でカスタムドメインが一括で利用できる機能が追加されています。App Service E…