Ejemplo n.º 1
0
        protected void Button_Get_Click(object sender, EventArgs e)
        {
            string fullUrl    = hdnResultValue.Value;
            string hashUrl    = fullUrl.Substring(fullUrl.IndexOf('#') + 1);
            string minusState = hashUrl.Substring(0, hashUrl.IndexOf('&'));
            string idToken    = minusState.Substring(minusState.IndexOf('=') + 1);
            var    ahandler   = new JwtSecurityTokenHandler();
            var    ajsonToken = ahandler.ReadToken(idToken);
            var    idtokenS   = ahandler.ReadToken(idToken) as JwtSecurityToken;

            GridViewID.DataSource = idtokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
            GridViewID.DataBind();
        }
Ejemplo n.º 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.IsAuthenticated)
            {
                ImageButton1.Enabled = true;

                itokenStr = string.Empty;
                atokenStr = string.Empty;

                //extract the id token and access token from the claims sent back from the sign-in widget
                var claimsList = HttpContext.Current.GetOwinContext().Authentication.User.Claims.ToList();
                foreach (var claimItem in claimsList)
                {
                    if (claimItem.Type == "id_token")
                    {
                        itokenStr = claimItem.Value;
                    }
                    else if (claimItem.Type == "access_token")
                    {
                        atokenStr = claimItem.Value;
                    }

                    if ((itokenStr.Length > 0) && (atokenStr.Length > 0))
                    {
                        break;
                    }
                }

                //display id token claims in a table
                if (itokenStr != string.Empty)
                {
                    var ihandler   = new JwtSecurityTokenHandler();
                    var ijsonToken = ihandler.ReadToken(itokenStr);
                    var itokenS    = ihandler.ReadToken(itokenStr) as JwtSecurityToken;

                    GridViewID.DataSource = itokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                    GridViewID.DataBind();
                }

                //display access token claims in a table
                if (atokenStr != string.Empty)
                {
                    var ahandler   = new JwtSecurityTokenHandler();
                    var ajsonToken = ahandler.ReadToken(atokenStr);
                    var atokenS    = ahandler.ReadToken(atokenStr) as JwtSecurityToken;

                    GridViewAccess.DataSource = atokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                    GridViewAccess.DataBind();

                    var tokenList = atokenS.Claims.ToList();
                    foreach (var tokenItem in tokenList)
                    {
                        if (tokenItem.Type == "ssn")
                        {
                            ssnValue = tokenItem.Value;
                            break;
                        }
                    }
                }

                Label3.Visible = true;
                Label4.Visible = true;
            }
            else
            {
                Label1.Text = "Please authenticate to get to your data.";
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string itokenStr = string.Empty;
            string atokenStr = string.Empty;

            if (Request.IsAuthenticated)
            {
                var claimsList = HttpContext.Current.GetOwinContext().Authentication.User.Claims.ToList();
                foreach (var claimItem in claimsList)
                {
                    if (claimItem.Type == "id_token")
                    {
                        itokenStr = claimItem.Value;
                    }
                    else if (claimItem.Type == "access_token")
                    {
                        atokenStr = claimItem.Value;
                    }

                    if ((itokenStr.Length > 0) && (atokenStr.Length > 0))
                    {
                        break;
                    }
                }

                var    ihandler   = new JwtSecurityTokenHandler();
                var    ijsonToken = ihandler.ReadToken(itokenStr);
                var    itokenS    = ihandler.ReadToken(itokenStr) as JwtSecurityToken;
                string userEmail  = "";
                string userName   = "";
                for (int i = 0; i < itokenS.Claims.ToList().Count; i++)
                {
                    if (itokenS.Claims.ToList()[i].Type == "email")
                    {
                        var userParam = Request.QueryString["email"] + "";
                        if (userParam.Length > 1)
                        {
                            userEmail = userParam;
                        }
                        else
                        {
                            userEmail = itokenS.Claims.ToList()[i].Value;
                        }
                    }
                    else if (itokenS.Claims.ToList()[i].Type == "preferred_username")
                    {
                        userName = itokenS.Claims.ToList()[i].Value;
                    }
                }

                if (userEmail.Length > 1 && userName.Length > 1)
                {
                    if (userEmail == "*****@*****.**")
                    {
                        Response.Redirect("WebForm5.aspx?userName=" + userName);
                    }
                }

                GridViewID.DataSource = itokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                GridViewID.DataBind();

                var ahandler   = new JwtSecurityTokenHandler();
                var ajsonToken = ahandler.ReadToken(atokenStr);
                var atokenS    = ahandler.ReadToken(atokenStr) as JwtSecurityToken;

                GridViewAccess.DataSource = atokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                GridViewAccess.DataBind();
            }
        }
Ejemplo n.º 4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                string itokenStr = string.Empty;
                string atokenStr = string.Empty;
                string stokenStr = string.Empty;

                if (Request.IsAuthenticated)
                {
                    var claimsList = HttpContext.Current.GetOwinContext().Authentication.User.Claims.ToList();
                    foreach (var claimItem in claimsList)
                    {
                        if (claimItem.Type == "id_token")
                        {
                            itokenStr = claimItem.Value;
                        }
                        else if (claimItem.Type == "access_token")
                        {
                            atokenStr = claimItem.Value;
                        }

                        if ((itokenStr.Length > 0) && (atokenStr.Length > 0))
                        {
                            break;
                        }
                    }
                }

                if (stokenStr != string.Empty)
                {
                    var ahandler   = new JwtSecurityTokenHandler();
                    var ajsonToken = ahandler.ReadToken(stokenStr);
                    var idtokenS   = ahandler.ReadToken(stokenStr) as JwtSecurityToken;

                    GridViewID.DataSource = idtokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                    GridViewID.DataBind();
                    Label1.Visible = true;
                }

                if (itokenStr != string.Empty)
                {
                    var ihandler   = new JwtSecurityTokenHandler();
                    var ijsonToken = ihandler.ReadToken(itokenStr);
                    var itokenS    = ihandler.ReadToken(itokenStr) as JwtSecurityToken;

                    GridViewID.DataSource = itokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                    GridViewID.DataBind();
                    Label1.Visible = true;
                }

                if (atokenStr != string.Empty)
                {
                    var ahandler   = new JwtSecurityTokenHandler();
                    var ajsonToken = ahandler.ReadToken(atokenStr);
                    var atokenS    = ahandler.ReadToken(atokenStr) as JwtSecurityToken;

                    GridViewAccess.DataSource = atokenS.Claims.Select(x => new { Name = x.Type, Value = x.Value });
                    GridViewAccess.DataBind();
                    Label2.Visible = true;
                }
            }
            catch
            {
                //do nothing
            }
        }