public ActionResult Giris(string KullaniciAdi, string Sifre) { CMSDBEntities db = new CMSDBEntities(); if (Request.Cookies["KullaniciAdiCk"] != null) { KullaniciAdi = Crypto.SifreyiCozAES(Request.Cookies["KullaniciAdiCk"].Value, Crypto.paylasilanAnahtar); } var kullanici = db.tbl_Kullanici.SingleOrDefault(d => d.KullaniciAdi == KullaniciAdi && d.Sifre == Sifre); if (kullanici != null) { KullaniciSessionModel kulSesMod = new KullaniciSessionModel(); kulSesMod.Id = kullanici.Id; kulSesMod.AdiSoyadi = kullanici.AdiSoyadi; kulSesMod.KullaniciAdi = kullanici.KullaniciAdi; foreach (var item in kullanici.tbl_KullaniciGrubu.tbl_Izinler) { kulSesMod.Yetkiler.Add(item.KontrollerAdi, item.Yetkiler); } Session["Kullanici"] = kulSesMod; Session["BitisTarihi"] = DateTime.Now.AddHours(1); Session.Timeout = 10; HttpCookie ck = new HttpCookie("KullaniciAdiCk", Crypto.SifreleAES(kullanici.KullaniciAdi, Crypto.paylasilanAnahtar)); ck.Expires = DateTime.Now.AddHours(1); Response.Cookies.Add(ck); return(Redirect("/Yonetim")); } if (Request.Cookies["KullaniciAdiCk"] == null) { return(View()); } return(View("OturumGiris")); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var typeArray = Assembly.GetExecutingAssembly().GetTypes().Where(TheType => TheType.IsClass && !TheType.IsAbstract && TheType.Namespace == "AIOCMS.Areas.Yonetim.Controllers" && TheType.Name.Contains("Controller")).ToList(); var KontrollerAdi = typeArray.Select(d => d.Name).ToList(); var dllPath = Assembly.GetExecutingAssembly().CodeBase.Replace("file:///", ""); string docuPath = dllPath.Substring(0, dllPath.LastIndexOf(".")) + ".XML"; XmlDocument _docuDoc = new XmlDocument(); if (File.Exists(docuPath)) { _docuDoc = new XmlDocument(); _docuDoc.Load(docuPath); } List <KontrollerTipi> kontTipleri = new List <KontrollerTipi>(); foreach (var item in KontrollerAdi) { string path = "T:AIOCMS.Areas.Yonetim.Controllers." + item; XmlNode xmlDocuOfMethod = _docuDoc.SelectSingleNode( "//member[starts-with(@name, '" + path + "')]"); KontrollerTipi kont = new KontrollerTipi (); kont.KontrollerAdi = item.ToUpper(); if (xmlDocuOfMethod != null) { kont.Summary = xmlDocuOfMethod.ChildNodes[0].InnerText; } kontTipleri.Add(kont); } IzinVM.KontrollerAdlari = kontTipleri; CMSDBEntities db = new CMSDBEntities(); var grups = db.tbl_KullaniciGrubu.ToList(); foreach (var item in grups) { foreach (var izin in item.tbl_Izinler.ToList()) { if (!kontTipleri.Any(d => d.KontrollerAdi == izin.KontrollerAdi)) { db.tbl_Izinler.Remove(izin); } } foreach (var sistemIzin in kontTipleri) { if (!item.tbl_Izinler.Any(d => d.KontrollerAdi == sistemIzin.KontrollerAdi)) { db.tbl_Izinler.Add(new tbl_Izinler { AktifDurumu = true, OlusturmaTarihi = DateTime.Now, KontrollerAdi = sistemIzin.KontrollerAdi, Yetkiler = 0, KullaniciGrubuId = item.Id }); } } } db.SaveChanges(); }