Exemplo n.º 1
0
        public void GetRolesByUserSubjectPassingTest()
        {
            var roles = IdentityServerDBHelper.GetRolesByUserSubject(ConnectionConst.CORRECTCONNECTIONSTRING,
                                                                     "3f765b07-8b93-4250-91e8-a053d5e1fe3b").Result;

            Assert.NotNull(roles);
        }
Exemplo n.º 2
0
        public async Task GetProfileDataAsync(ProfileDataRequestContext context)
        {
            List <Claim> claimList = new List <Claim>();

            try {
                string userSubject = context.Subject.Claims.ToList().Find(us => us.Type == "sub").Value;
                var    rolesFromDB = await IdentityServerDBHelper.GetRolesByUserSubject(
                    Startup.Configuration.GetSection("ConnectionString").Value,
                    userSubject);

                if (rolesFromDB != null && rolesFromDB.Count != 0)
                {
                    for (int i = 0; i < rolesFromDB.Count; i++)
                    {
                        claimList.Add(new Claim("role", rolesFromDB[i].roleName));
                    }
                }
                context.IssuedClaims = claimList.Where(x => context.RequestedClaimTypes.Contains(x.Type)).ToList();
            }
            catch (Exception ex) {
                Console.WriteLine(ex.Message.ToString());
            }
        }