zoukankan      html  css  js  c++  java
  • Claims Identity

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Security.Claims;
    using System.Security.Principal;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;

    namespace SecurityDemo
    {
    class Program
    {
    static void Main(string[] args)
    {
    Setup();
    CheckCompatibility();
    CheckNewClaimsUsage();
    Console.ReadLine();
    }

    private static void Setup()
    {
    IList<Claim> claimCollection = new List<Claim>
    {
    new Claim(ClaimTypes.Name, "Andras")
    , new Claim(ClaimTypes.Country, "Sweden")
    , new Claim(ClaimTypes.Gender, "M")
    , new Claim(ClaimTypes.Surname, "Nemes")
    , new Claim(ClaimTypes.Email, "hello@me.com")
    , new Claim(ClaimTypes.Role, "IT")
    };

    ClaimsIdentity claimsIdentity =new ClaimsIdentity(claimCollection, "My e-commerce website");

    Console.WriteLine(claimsIdentity.IsAuthenticated);

    ClaimsPrincipal principal = new ClaimsPrincipal(claimsIdentity);
    Thread.CurrentPrincipal = principal;

    }

    private static void CheckCompatibility()
    {
    IPrincipal currentPrincipal = Thread.CurrentPrincipal;
    Console.WriteLine(currentPrincipal.Identity.Name);
    }

    private static void CheckNewClaimsUsage()
    {
    ClaimsPrincipal currentClaimsPrincipal = ClaimsPrincipal.Current;//Thread.CurrentPrincipal as ClaimsPrincipal;
    Claim nameClaim = currentClaimsPrincipal.FindFirst(ClaimTypes.Name);
    Console.WriteLine(nameClaim.Value);
    foreach (ClaimsIdentity ci in currentClaimsPrincipal.Identities)
    {
    Console.WriteLine(ci.Name);
    }
    }
    }
    }

  • 相关阅读:
    WPF 组织机构摄像机树 全量加载 大数据量 分页加载摄像机节点
    vue3 自定义指令(简易版防抖、节流)
    测试Writer
    The blog In The cnblogs!
    分割
    coeLmiGMmW
    js 之 setTimeout 0 分析
    vue 组件 之 注册 及 组件内data的使用
    Js/es for(let i in Obj)效率分析及优化
    vue.js 表单控件 输入绑定 vmodel的使用
  • 原文地址:https://www.cnblogs.com/shineqiujuan/p/4023903.html
Copyright © 2011-2022 走看看