# 以下の記事が書かれた時の版数は .NET Core 3.1 (3.1.201), ASP.NET Core 3.1 (3.1.3) となります. Azure App Service に組み込まれた Easy Auth を使った Azure AD 認証連携、設定が簡単すぎて感動的. ただ、User.Identity.Name が空だったのでコードを書いた. Visual Studio 2019 の新しいプロジェクトの作成で「ASP.NET Core Web アプリケーション」を選び、ASP.NET Core 3.1 の Web アプリケーション(モデル ビュー コントローラ) を選んで生成されるソースコードがまず出発地点. 次に Startup.cs を開き、先頭に using System.Security.Principal; を追加して、Configure メソッドの app.Us
Azure App Service では、組み込みの認証機能が提供されています。この機能は Easy Auth と呼ばれていて、アプリケーション側に最低限のコードを実装するだけで、Azure AD などのさまざまなプロバイダーを使って保護できます。 docs.microsoft.com 今回は、Web Apps と Functions で Easy Auth を有効にして、Azure AD で認証されたフロントエンドの Web アプリケーションからバックエンドの API を呼び出します。 Web Apps で ClaimsPrincipal を取得する Functions のアクセストークンを取得するように構成する この2つの構成がポイントになるので、まとめておきます。 Azure App Service の Easy Auth を有効にする Azure ポータルを使って、Web Apps
AzureADはAzureのためのID認証サービスです。AzureへのログインもAzureADを使っています。 今回はAzure Web Appsで実行しているASP.NET CoreアプリをAzureAD認証する方法を紹介します。 ActiveDirectoryとの違い まず従来のActiveDirectoryとAzureADはどう違うの?というところが気になると思います。 ActiveDirectoryもAzureADも認証するためのシステムなのですが、ActiveDirectoryは組織アカウントを管理するためのもの、対してAzureADはあくまでAzure上でIDを管理するためのものです。 例えばAzureADを使ってグループポリシーを管理するといったことはできません。代わりにAzureADではデバイス単位の認証管理ができるなどよりクラウドに最適化されています。 Azure Web
ASP.NET Core ASP.NET Java Node.js Python この記事および以下のコード スニペットは、ASP.NET Core Web アプリ増分チュートリアルの第 1 章から抜粋されています。 完全な実装の詳細については、このチュートリアルをご覧ください。 この記事および以下のコード スニペットは、ASP.NET Web アプリ サンプルから抜粋されたものです。 完全な実装の詳細については、このサンプルをご覧ください。 この記事および以下のコード スニペットは、MSAL Java の Microsoft Graph を呼び出す Java Web アプリケーション サンプルから抜粋されています。 完全な実装の詳細については、このサンプルをご覧ください。 この記事および以下のコード スニペットは、MSAL Node の Node.js Web アプリケーションのユーザー
このクイックスタートでは、ASP.NET Core Web アプリで Microsoft Entra 組織のユーザーをサインインする方法を示すコード サンプルをダウンロードして実行します。 手順 1:Azure portal でのアプリケーションの構成 このクイックスタートのコード サンプルを動作させるには、次のことを行います。 [リダイレクト URI] に「 https://localhost:44321/ 」および「 https://localhost:44321/signin-oidc 」と入力します。 [フロントチャネルのログアウト URL] に「https://localhost:44321/signout-oidc」と入力します。 要求の ID トークンが承認エンドポイントによって発行されます。
Created at: 2018-05-26 ASP.NET Core MVCでは認証は基本的にフィルターではなく、認証ハンドラーを認証スキーム名で登録しておき、使用したい認証スキームをAuthorize属性などで指定するという形になっています(デフォルトという指定もできます)。 今回やりたいこととしては「認証機構は基本的に一つで、あるアクションの時だけ認証中に追加で特殊な処理を行いたい」というパターンです。例えばコントローラーに共通のAuthorizeを付けているが、一部特殊なアクションでは追加の処理をしたいというケースです。 難しいところそもそも認証ハンドラーはASP.NET Coreの一部であってMVCとは切り離されたものなので、操作可能なものは主にHttpContextとなります。つまりASP.NET Core MVCが認識しているアクションであるとかコントローラーであるとかを取り
プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。 内容の保証はできませんのであしからずご了承ください。 ASP.NET Core において、Identity を使わない認証はどうやってやるのか調べてみました。 ただし、ASP.NET Core 2.0 以降とそれより前とで大きく異なるようです。 ここでは ASP.NET Core 2.0 以降を対象とします。 基本的に [Microsoft のページ](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/cookie)に書いてあるのですが、その通りにやっても全く動きませんでした。 というかいろいろ説明不足だなと感じます(もしくは前提となる知識が私に不足しているか)。 そんなわけで、上記のページ書いてあることの要約+補足事項みたいな感じ
ASP.NET CoreでCookie認証を使ってログイン・ログアウト機能を実装してみます。 Microsoft.AspNetCore.Authenticationを使うと簡単に行うと簡単に実装できるようです。 [Microsoft.AspNetCore.Authentication - Nuget] .NET Core SDKのバージョンは以下の通りです。 サンプルプロジェクトの作成 今回はRazorページのテンプレートを使いたいと思います。Visual Studioでは以下の操作でプロジェクトを開始できます。 新規作成 > プロジェクト >新しいプロジェクト > Web > ASP.NET Core Web アプリケーション > Web アプリケーション .NET Core CLIで作成する場合は以下のコマンドです。 完成後のソースはこちらのリポジトリに置きました。 https://g
ASP.NET 4.x プロジェクトでは、ClaimsPrincipal.Current を使用して、現在認証されているユーザーの ID と要求を取得することが一般的でした。 ASP.NET Core では、このプロパティは設定されません。 それに依存していたコードは更新し、現在認証されているユーザーの ID を別の手段で取得する必要があります。 静的状態ではなくコンテキスト固有状態 ASP.NET Core の使用時、ClaimsPrincipal.Current と Thread.CurrentPrincipal の両方の値が設定されません。 これらのプロパティはどちらも静的な状態を表し、ASP.NET Core では通常、避けられます。 代わりに、ASP.NET Core では依存関係の挿入 (DI) を使用し、現在のユーザーの ID など、依存関係を提供します。 テスト ID を簡
Note 2024 年 6 月 1 日より、新しく作成されたすべての App Service アプリには、名前付け規則 <app-name>-<random-hash>.<region>.azurewebsites.net を使用して一意の既定のホスト名を生成するオプションが備わります。 既存のアプリ名は変更されません。 例: myapp-ds27dh7271aah175.westus-01.azurewebsites.net 詳細については、App Service リソースの一意の既定のホスト名に関するページを参照してください。 Azure App Service は組み込みの認証と認可の機能 (Easy Auth (簡単認証) と呼ばれることもあります) を提供するので、Web アプリ、RESTful API、モバイル バックエンド、さらには Azure Functions でも、最小
ミドルウェアはクライアントからのリクエストに対応するコードの一部である(そう私は、意図的に「コードの一部」と言って非常に一般化していた)。 それは異なる2つの方法で実装できる。ほとんどのケースでクラスベースのバージョンが優先されていても、適切な署名を持つデリゲートが必要である。クライアントからリクエストが到着したときに、リクエストを検査し、クライアントに返されるレスポンスを変更することができる。もしそれを望まない場合、それ自身がクライアントに送信するレスポンスを生成することもできる。 ミドルウェアはパイプラインにまとめられ、パイプラインに追加された順番で、ミドルウェアからミドルウェアに渡され、ミドルウェアのいずれかがレスポンスを生成する方法を知っていて、決定するまでそれが続く。その後、クライアントに返す途中でミドルウェアによって変更される機能を持ち、検査されるパイプラインを通じてレスポンス
ミドルウェアとかミドルウェアパイプラインとかリクエストデリゲートなどを理解するために、次のドキュメントを読みながら記事内にあるミドルウェアパイプラインの画像の動きを作ってみました。 ASP.NET Core のミドルウェア | Microsoft Docs この画像のことです。 https://docs.microsoft.com/ja-jp/aspnet/core/fundamentals/middleware/index/_static/request-delegate-pipeline.png Use/Run拡張メソッドを使ってパイプラインを作る Startup.Configureメソッド内でミドルウェアパイプラインを構築します。Use拡張メソッドやRun拡張メソッドを使うと、ミドルウェアをインライン(ラムダ式)で記述できます。Use拡張メソッドは次のミドルウェア(コンポーネントとも
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く