Beispiel #1
0
        public ActionResult SnimiAutentifikator(KupacAutentifikatorVM model)
        {
            Korisnik k = HttpContext.GetLogiraniKorisnik();

            if (k == null)
            {
                return(Redirect("/Autentifikacija/Index"));
            }

            TwoFactorAuthenticator TwoFacAuth = new TwoFactorAuthenticator();
            bool isValid = TwoFacAuth.ValidateTwoFactorPIN(model.TwoFactorUserUniqueKey, model.TwoFactorPin);

            if (isValid)
            {
                k.TwoFactorUniqueKey = model.TwoFactorUserUniqueKey;
                ctx.SaveChanges();

                bool token = false;
                if (ctx.AutorizacijskiToken.Where(a => a.KorisnikId == k.Id).Count() > 0)
                {
                    token = true;
                }
                HttpContext.SetLogiraniKorisnik(k, token);
            }


            return(RedirectToAction("Index"));
        }
Beispiel #2
0
        public ActionResult DozvoliAutentifikator()
        {
            Korisnik k = HttpContext.GetLogiraniKorisnik();

            if (k == null)
            {
                return(Redirect("/Autentifikacija/Index"));
            }

            TwoFactorAuthenticator TwoFacAuth = new TwoFactorAuthenticator();
            var userUniqueKey = Guid.NewGuid().ToString().Replace("-", "");
            var setupInfo     = TwoFacAuth.GenerateSetupCode("Online namjestaj", k.KorisnickoIme, userUniqueKey, 300, 300);

            var model = new KupacAutentifikatorVM();

            model.TwoFactorUserUniqueKey = userUniqueKey;
            model.TwoFactorBarcodeImage  = setupInfo.QrCodeSetupImageUrl;
            model.TwoFactorCode          = setupInfo.ManualEntryKey;

            return(View(model));
        }