public ContentResult GetUserRole()
        {
            try
            {
                var claims = User.Claims
                             .FirstOrDefault(claim => claim.Type == PermissionsType)?.Value;
                ApiUserRole role = ApiUserRole.NoRole;

                if (claims != null)
                {
                    if (claims.Contains(configurationRoot["PermissionsSettings:Permissions_Edit"]))
                    {
                        role = ApiUserRole.Editor;
                    }
                    else if (claims.Contains(configurationRoot["PermissionsSettings:Permissions_StopRun"]))
                    {
                        role = ApiUserRole.StopRunner;
                    }
                    else if (claims.Contains(configurationRoot["PermissionsSettings: Permissions_View"]))
                    {
                        role = ApiUserRole.Viewer;
                    }
                }

                return(GetSuccessfulResult(JsonConvert.SerializeObject(role)));
            }
            catch
            {
                return(GetInternalErrorResult());
            }
        }
Beispiel #2
0
        public ContentResult GetUserRole()
        {
            try
            {
                var claims = User.Claims
                             .FirstOrDefault(claim => claim.Type == PermissionsType)?.Value;

                ApiUserRole role = ApiUserRole.NoRole;

                if (claims != null)
                {
                    if (claims.Contains("reporting.edit"))
                    {
                        role = ApiUserRole.Editor;
                    }
                    else if (claims.Contains("reporting.stoprun"))
                    {
                        role = ApiUserRole.StopRunner;
                    }
                    else if (claims.Contains("reporting.view"))
                    {
                        role = ApiUserRole.Viewer;
                    }
                }

                return(GetSuccessfulResult(JsonConvert.SerializeObject(role)));
            }
            catch
            {
                return(GetInternalErrorResult());
            }
        }
Beispiel #3
0
        public Response GetUserRole()
        {
            try
            {
                var claims = Context.CurrentUser.Claims
                             .FirstOrDefault(claim => claim.Type == PermissionsType)?.Value;

                ApiUserRole role = ApiUserRole.NoRole;

                if (claims != null)
                {
                    if (claims.Contains(EditPermission))
                    {
                        role = ApiUserRole.Editor;
                    }
                    else if (claims.Contains(StopRunPermission))
                    {
                        role = ApiUserRole.StopRunner;
                    }
                    else if (claims.Contains(ViewPermission))
                    {
                        role = ApiUserRole.Viewer;
                    }
                }

                var response = (Response)JsonConvert.SerializeObject(role);
                response.StatusCode = HttpStatusCode.OK;
                return(response);
            }
            catch
            {
                return(HttpStatusCode.InternalServerError);
            }
        }
        public void FromApiUserAccount()
        {
            // ARRANGE
            UserAccount expected = FactoryUser.UserAccount;

            expected.UserRoles = new List <UserRole> {
                UserRole.ConfigManager,
                UserRole.RoomManager
            };

            ApiUserAccount param = new ApiUserAccount {
                Id                  = expected.Id,
                LoginName           = expected.LoginName,
                Title               = expected.Title,
                FirstName           = expected.FirstName,
                LastName            = expected.LastName,
                Email               = expected.Email,
                IsEncryptionEnabled = expected.HasEncryptionEnabled,
                HasManageableRooms  = expected.HasManageableRooms,
                ExpireAt            = expected.ExpireAt,
                LastLoginSuccessAt  = expected.LastLoginSuccessAt,
                LastLoginFailAt     = expected.LastLoginFailAt,
                UserRoles           = new ApiUserRoleList {
                    Items = new List <ApiUserRole>(expected.UserRoles.Count)
                },
                HomeRoomId = 2
            };

            foreach (UserRole current in expected.UserRoles)
            {
                ApiUserRole currentApi = new ApiUserRole {
                    Id = (int)current
                };
                param.UserRoles.Items.Add(currentApi);
            }

            // ACT
            UserAccount actual = UserMapper.FromApiUserAccount(param);

            // ASSERT
            Assert.Equal(expected, actual, new UserAccountComparer());
        }