Beispiel #1
0
        public override async Task <AlertListReply> ListAlerts(Empty request, ServerCallContext context)
        {
            AppUser user = await _userManager.GetUserAsync(context.GetHttpContext().User);

            List <IAlert> alerts = await _alertManager.GetUserAlertsAsync(user);

            AlertListReply alertListReply = new AlertListReply {
            };

            foreach (IAlert alert in alerts)
            {
                System.Type alertType = alert.GetType();

                if (alertType == typeof(BruteforceUserAlert))
                {
                    BruteforceUserAlert castedAlert = (BruteforceUserAlert)alert;

                    alertListReply.Alerts.Add(
                        new Alert
                    {
                        BruteforceUserAlert = new Alert.Types.BruteforceUserAlert(),
                        Level = Shared.ClientAndWeb.Security.Alert.Types.LevelEnum.Low,
                        Id    = alert.Id.ToString(),
                    }
                        );
                }
            }

            return(alertListReply);
        }
Beispiel #2
0
 private async Task IssueAlertIfUserIsNowBlocked(AppUser user)
 {
     if (await IsUserBlockedAsync(user))
     {
         BruteforceUserAlert alert = new BruteforceUserAlert(user);
         await _alertManager.AddAlertAsync(alert);
     }
 }
Beispiel #3
0
        public async Task <List <IAlert> > GetUserAlertsAsync(AppUser user)
        {
            List <UserSecurityAlert> alerts = await _authDbContext.UserSecurityAlerts.ToListAsync();

            List <IAlert> alertList = new List <IAlert>();

            foreach (UserSecurityAlert alert in alerts)
            {
                switch (alert.AlertType)
                {
                case AlertTypeEnum.BruteforceUserAlert:
                    BruteforceUserAlert bruteforceUserAlert = new BruteforceUserAlert(user);
                    bruteforceUserAlert.Id = alert.Id;
                    alertList.Add(bruteforceUserAlert);
                    break;
                }
            }

            return(alertList);
        }