sakutomo.com
Open in
urlscan Pro
157.112.187.154
Public Scan
URL:
https://sakutomo.com/asp-net-webapi-login-cookie-auth/
Submission: On November 22 via api from US — Scanned from JP
Submission: On November 22 via api from US — Scanned from JP
Form analysis
2 forms found in the DOMPOST https://sakutomo.com/wp-comments-post.php
<form action="https://sakutomo.com/wp-comments-post.php" method="post" id="commentform" class="comment-form">
<p class="comment-notes"><span id="email-notes">メールアドレスが公開されることはありません。</span> <span class="required-field-message"><span class="required">※</span> が付いている欄は必須項目です</span></p>
<p class="comment-form-comment"><label for="comment">コメント <span class="required">※</span></label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required="required"></textarea></p>
<p class="comment-form-author"><label for="author">名前 <span class="required">※</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" autocomplete="name" required="required"></p>
<p class="comment-form-email"><label for="email">メール <span class="required">※</span></label> <input id="email" name="email" type="text" value="" size="30" maxlength="100" aria-describedby="email-notes" autocomplete="email" required="required"></p>
<p class="comment-form-url"><label for="url">サイト</label> <input id="url" name="url" type="text" value="" size="30" maxlength="200" autocomplete="url"></p>
<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"> <label for="wp-comment-cookies-consent">次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。</label></p>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAAAYAQAAAABxGIYdAAAAAnRSTlMAAHaTzTgAAAAMSURBVAjXY2AYWQAAAPAAAde3lqIAAAAASUVORK5CYII=" alt="CAPTCHA" data-src="https://sakutomo.com/wp-content/siteguard/536384651.png" decoding="async"
class="lazyload"><noscript><img src="https://sakutomo.com/wp-content/siteguard/536384651.png" alt="CAPTCHA" data-eio="l"></noscript></p>
<p><label for="siteguard_captcha">上に表示された文字を入力してください。</label><br><input type="text" name="siteguard_captcha" id="siteguard_captcha" class="input" value="" size="10" aria-required="true"><input type="hidden" name="siteguard_captcha_prefix"
id="siteguard_captcha_prefix" value="536384651"></p>
<p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="送信"> <input type="hidden" name="comment_post_ID" value="777" id="comment_post_ID">
<input type="hidden" name="comment_parent" id="comment_parent" value="0">
</p>
<p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="a16c0eca0a"></p>
<p style="display: none !important;"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="1700620869954">
<script>
document.getElementById("ak_js_1").setAttribute("value", (new Date()).getTime());
</script>
</p>
</form>
GET https://sakutomo.com/
<form method="get" id="searchform" action="https://sakutomo.com/">
<label class="hidden" for="s">
</label>
<input type="text" placeholder="" value="" name="s" id="s">
<input type="submit" value="" class="st-fa" id="searchsubmit">
</form>
Text Content
* トップページ * このブログについて * お問い合わせフォーム * プライバシーポリシー TOMO LOG * トップページ * このブログについて * お問い合わせフォーム * プライバシーポリシー 1. HOME > 2. プログラミング > 3. C# > 4. ASP.NET > ASP.NET ASP.NET Core C# WEB API プログラミング 【 ASP.NET WEBAPI 】COOKIE を使用したログイン認証機能の実装方法 2023年8月2日 ASP.NET Core(.NET 6)でCookieを使用したログイン認証機能の実装方法を解説します。 今回はSPAのプロジェクトと仮定してWebAPI 側にログイン認証の機能を実装して解説したいと思います。 目次[開く] * Program.cs の設定 * ログイン認証の実装 * ASP.NET おすすめ入門講座 PROGRAM.CS の設定 以前までのバージョンでは、Program.cs以外に「Startup.cs」というファイルもあり、 そちらにCookie認証の定義を記述しているようでしたが、 ASP.NET Coreの.NET 6バージョンでは、Program.csファイルとStartup.csファイルは統合されてProgram.csのみになりました。 そのため、Cookie認証の定義は、Program.csに記述する必要があります。 以下がProgram.cs (一部抜粋) の実装内容となります。 // Cookie による認証スキームを追加する builder.Services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddCookie(); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseSwagger(); app.UseSwaggerUI(); } app.UseHttpsRedirection(); // Cookie認証実装に必要 app.UseAuthentication(); app.UseAuthorization(); app.MapControllers(); app.Run(); AddAuthentication メソッド、AddCookie メソッドを実装することでアプリケーションに対してCookie認証が必要となるように設定することが可能です。 AddAuthentication メソッドの引数では、 CookieAuthenticationDefaults.AuthenticationScheme を設定してください。 また、アプリケーションに認証機能を追加するために app.UseAuthentication(); を app.UseAuthorization(); の前に記述しておいてください。 ログイン認証の実装 ログイン認証用のコントローラーがあると仮定して、そのコントローラー内でログイン認証がOKだった場合に 生成した認証Cookieをレスポンスに設定します。 namespace WebAPI.Controllers { [ApiController] [Route("api/[controller]")] public class LoginController : ControllerBase { // ログイン [HttpPost] [AllowAnonymous] public async Task<IActionResult> Login([FromQuery] string loginName, [FromQuery] string password) { //ログイン認証判定 if (// ログイン認証 == true) { // サインインに必要なプリンシパルを作る var claims = new[] { new Claim(ClaimTypes.Name, loginName) }; var identity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme); var principal = new ClaimsPrincipal(identity); // 認証クッキーをレスポンスに追加 await HttpContext.SignInAsync(principal); return Ok(); } return BadRequest("ログイン認証 == false"); } } } ASP.NET おすすめ入門講座 3つのWebアプリケーションの開発を通して、ASP.NETについて基礎から学べるおすすめの入門講座がこちら☟ 【入門者向け】ASP.NET MVCでWebアプリ開発のノウハウを学ぼう! * Twitter * Share * Pocket * Hatena * LINE * URLコピー おすすめ記事はコチラ 1 【 スマレジ テックファーム 】スマレジのテックファーム事業を紹介! スマレジ テックファーム で Webエンジニアとして勤めている tomoです。 今回は株式会社スマレジや私が所属している 「 スマレジ テックファーム 」についてPRしていきたいと思います。 スマレジ ... 2 【 ASP.NET WEBAPI 】BODYパラメータのJSONを受け取る方法 FROMBODY FromBody 属性を使用して、 ASP.NET Core(.NET 6)のWebAPIでBodyパラメータのJSONを受け取る方法を解説します。 FromBody 属性 POSTやGETで呼び出さ ... 3 【 ASP.NET CORE 】COOKIE認証 有効期限 (タイムアウト) の設定方法 ASP.NET Core(.NET 6)でCookie認証のタイムアウトを設定する方法を解説します。 Cookieの有効期限について Cookieには通常はタイムアウト(有効期限)を設定します。 基本 ... 4 【 ASP.NET WEBAPI 】クロスオリジンリクエスト( CORS )の設定方法 ASP.NET Core(.NET 6)でクロスオリジンリクエスト ( CORS )を設定する方法を解説します。 簡単に クロスオリジンリクエスト ( CORS )とは何かについても少し解説したいと思 ... -ASP.NET, ASP.NET Core, C#, WEB API, プログラミング -エンジニア, スマレジ, プログラミング author -------------------------------------------------------------------------------- COMMENT コメントをキャンセル メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です コメント ※ 名前 ※ メール ※ サイト 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。 上に表示された文字を入力してください。 Δ 関連記事 ASP.NET Razor Pages プログラミング ASP.NET CORE RAZOR PAGES WEBアプリの公式チュートリアルをやってみた①(プロジェクト作成~アプリの実行まで) 今回はタイトルにある通り、MSDN公式の「ASP.NET Core Razor Pages Webアプリ」のチュートリアルを進めて学んでいこうと思います! 初めてプログラミングをする方でもわかりやすい ... ASP.NET JavaScript jQuery プログラミング 【 JQUERY 】HASCLASS メソッドの使用方法 / 条件分岐の方法 今回はjQueryのhasClassメソッドとは何か、そしてその使用方法について解説していきたいと思います。 また、ASP.NET環境下での便利な使用方法も解説したいと思います。 例えば、お気に入り機 ... ASP.NET Web Forms 独習ASP.NET Web Forms 独習 ASP.NET WEBフォームを読んで学んだことをまとめてみました。PART.5 前回に引き続き、「独習 ASP.NET Webフォーム(第6版)」を 読んで学んだことを少しずつ記事にまとめていきたいと思います。 読んで学んでインプットするだけではなく、 ブログ記事にまとめてアウト ... Node.js プログラミング 【 SEQUELIZE 】QUERY メソッドの各オプションの使い方 | NODE.JS sequelizeの queryメソッドは、実行するSQLクエリにさまざまなオプションを提供することができます。以下に、いくつかの重要なオプションとそれらの役割、使い方について説明します。 Seque ... ASP.NET Web Forms 独習ASP.NET Web Forms 独習 ASP.NET WEBフォームを読んで学んだことをまとめてみました。PART.6 前回に引き続き、「独習 ASP.NET Webフォーム(第6版)」を 読んで学んだことを少しずつ記事にまとめていきたいと思います。 読んで学んでインプットするだけではなく、 ブログ記事にまとめてアウト ... 【 ASP.NET WebAPI 】URLパラメータの受け取り方法 FromQuery 【 ASP.NET WebAPI 】クロスオリジンリクエスト( CORS )の設定方法 tomo * 問合せはコチラ ブログ プログラミング ブログ開設しました! 2023/1/21 Node.js プログラミング 【 SEQUELIZE 】QUERY メソッドの各オプションの使い方 | NODE.JS 2023/10/21 Node.js プログラミング 【 NODE.JS 】SEQUELIZEで直接SQL文を実行する方法 | QUERY メソッド 2023/10/21 プログラミング 【JAVASCRIPT】JSONオブジェクトから要素を削除する方法 2023/9/30 プログラミング 【JAVASCRIPT】文字列の前方一致を判別する方法:STARTSWITH()メソッドの使い方 2023/9/30 Node.js プログラミング 【 NODE.JS 】時間計測を行うNODE.JSのPROCESS.HRTIME()メソッドの使い方 2023/8/26 Search * トップページ * このブログについて * お問い合わせフォーム * プライバシーポリシー TOMO LOG © 2023 TOMO LOG S