動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About
C#

定石5: User.Identity.Nameでユーザー情報取得

出典: 業務イントラの認証 — Windows認証 / Forms認証 / Cookie の使い分けで業務SE が踏む選択定石5: User.Identity.Nameでユーザー情報取得

定石5: User.Identity.Nameでユーザー情報取得 (csharp)#5b90d26c7949
// ✅定石5: User.Identityからの情報取得
public class HomeController : Controller
{
    [Authorize]
    public ActionResult Profile()
    {
        //認証済みか
        bool isAuth = User.Identity.IsAuthenticated;
 
        //ユーザー名(認証方式で形式が違う)
        string userName = User.Identity.Name;
        // Windows認証: "MYDOMAIN\\suzuki"
        // Forms認証: "suzuki"(SetAuthCookieで渡した値)
        // Cookie認証: "suzuki@example.com"(IdentityのUserName)
 
        // Role判定
        bool isAdmin = User.IsInRole("Admin");
        bool isInAdGroup = User.IsInRole("MYDOMAIN\\SalesGroup");
 
        // ClaimsIdentityから追加情報(Cookie認証時)
        if (User.Identity is System.Security.Claims.ClaimsIdentity claims)
        {
            string email = claims.FindFirst(System.Security.Claims.ClaimTypes.Email)?.Value;
        }
 
        return View();
    }
}
▸ この snippet は実行結果未収録
▸ 実行結果は未収録です
  • id: #5b90d26c7949
  • lines: 28
  • extracted: 2026-06-10

Source収録記事

この snippet は記事の「定石5: User.Identity.Nameでユーザー情報取得」セクションに登場する。コードの前後の文脈・ハマりどころの解説は記事本文で。

同じ記事から

4
図鑑トップ