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(); }
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(); } }
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 } }