示例#1
0
        public ActionResult <CapturedHashCredential> CreateHashCredential([FromBody] CapturedHashCredential hashCredential)
        {
            _context.Credentials.Add(hashCredential);
            _context.SaveChanges();

            return(CreatedAtRoute(nameof(GetHashCredential), new { id = hashCredential.Id }, hashCredential));
        }
        private bool ContextContainsCredentials(CapturedCredential cred)
        {
            switch (cred.Type)
            {
            case CapturedCredential.CredentialType.Password:
                CapturedPasswordCredential passcred = (CapturedPasswordCredential)cred;
                return(_context.Credentials.Where(C => C.Type == CapturedCredential.CredentialType.Password)
                       .Select(C => (CapturedPasswordCredential)C)
                       .FirstOrDefault(PC =>
                                       PC.Type == passcred.Type &&
                                       PC.Domain == passcred.Domain &&
                                       PC.Username == passcred.Username &&
                                       PC.Password == passcred.Password
                                       ) != null);

            case CapturedCredential.CredentialType.Hash:
                CapturedHashCredential hashcred = (CapturedHashCredential)cred;
                return(_context.Credentials.Where(C => C.Type == CapturedCredential.CredentialType.Hash)
                       .Select(C => (CapturedHashCredential)C)
                       .FirstOrDefault(PC =>
                                       PC.Type == hashcred.Type &&
                                       PC.Domain == hashcred.Domain &&
                                       PC.Username == hashcred.Username &&
                                       PC.Hash == hashcred.Hash &&
                                       PC.HashCredentialType == hashcred.HashCredentialType
                                       ) != null);

            case CapturedCredential.CredentialType.Ticket:
                CapturedTicketCredential ticketcred = (CapturedTicketCredential)cred;
                return(_context.Credentials.Where(C => C.Type == CapturedCredential.CredentialType.Ticket)
                       .Select(C => (CapturedTicketCredential)C)
                       .FirstOrDefault(PC =>
                                       PC.Type == ticketcred.Type &&
                                       PC.Domain == ticketcred.Domain &&
                                       PC.Username == ticketcred.Username &&
                                       PC.Ticket == ticketcred.Ticket &&
                                       PC.TicketCredentialType == ticketcred.TicketCredentialType
                                       ) != null);

            default:
                return(_context.Credentials.FirstOrDefault(P =>
                                                           P.Type == cred.Type &&
                                                           P.Domain == cred.Domain &&
                                                           P.Username == cred.Username
                                                           ) != null);
            }
        }
示例#3
0
        public ActionResult <CapturedHashCredential> EditHashCredential([FromBody] CapturedHashCredential hashCredential)
        {
            CapturedHashCredential matching_hashCredential = (CapturedHashCredential)_context.Credentials.FirstOrDefault(c =>
                                                                                                                         c.Type == CapturedCredential.CredentialType.Hash && hashCredential.Id == c.Id
                                                                                                                         );

            if (matching_hashCredential == null)
            {
                return(NotFound($"NotFound - CapturedHashCredential with id: {hashCredential.Id}"));
            }

            matching_hashCredential.Username           = hashCredential.Username;
            matching_hashCredential.Hash               = hashCredential.Hash;
            matching_hashCredential.HashCredentialType = hashCredential.HashCredentialType;
            matching_hashCredential.Type               = hashCredential.Type;

            _context.Credentials.Update(matching_hashCredential);
            _context.SaveChanges();
            return(matching_hashCredential);
        }
        public async Task <ActionResult <CapturedHashCredential> > CreateHashCredential([FromBody] CapturedHashCredential credential)
        {
            try
            {
                CapturedHashCredential addedCredential = await _service.CreateHashCredential(credential);

                return(CreatedAtRoute(nameof(GetHashCredential), new { id = addedCredential.Id }, addedCredential));
            }
            catch (ControllerNotFoundException e)
            {
                return(NotFound(e.Message));
            }
            catch (ControllerBadRequestException e)
            {
                return(BadRequest(e.Message));
            }
            catch (ControllerUnauthorizedException)
            {
                return(new UnauthorizedResult());
            }
        }
示例#5
0
 public Task <CapturedHashCredential> EditHashCredential(CapturedHashCredential credential)
 {
     return(_connection.InvokeAsync <CapturedHashCredential>("EditHashCredential", credential));
 }
 public async Task <ActionResult <CapturedHashCredential> > EditHashCredential([FromBody] CapturedHashCredential credential)
 {
     try
     {
         return(await _service.EditHashCredential(credential));
     }
     catch (ControllerNotFoundException e)
     {
         return(NotFound(e.Message));
     }
     catch (ControllerBadRequestException e)
     {
         return(BadRequest(e.Message));
     }
     catch (ControllerUnauthorizedException)
     {
         return(new UnauthorizedResult());
     }
 }
示例#7
0
        public async Task <IActionResult> CreateHashCredential(CapturedHashCredential credential)
        {
            CapturedCredential createdCredential = await _context.CreateHashCredential(credential);

            return(RedirectToAction("Index", "Data"));
        }