using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Security.Authentication; using System.Web; using System.Web.Mvc; using System.Web.Security; using Tango.BL; using Tango.MachineService.Models; using Tango.Web.ActiveDirectory; using Tango.Web.Helpers; namespace Tango.MachineService.Controllers { public class AccountController : Controller { private ActiveDirectoryManager _ad_manager; public AccountController() { _ad_manager = new ActiveDirectoryManager(); } public ActionResult Login() { if (HttpContext.User.Identity.IsAuthenticated) { return RedirectToAction("Index", "Downloads", null); } return View(); } [HttpPost] public ActionResult Login(AccountLogin request) { var authResult = _ad_manager.ValidateUserCredentials(request.Email, request.Password); //if (!_ad_manager.CanUserAccessCurrentEnvironment(request.Email)) //{ // throw new AuthenticationException($"You do not have permissions to access the {MachineServiceConfig.DEPLOYMENT_SLOT.ToDescription()} environment."); //} FormsAuthentication.SetAuthCookie(request.Email, true); return new HttpStatusCodeResult(HttpStatusCode.OK); } [Authorize] public ActionResult Logout() { FormsAuthentication.SignOut(); return Login(); } } }