public FederatedIPSecurityToken(
     DateTime issueDate, 
     DateTime expirationDate, 
     IEnumerable<Saml2Attribute> pricipalAttributes, 
     IEnumerable<Saml2Attribute> tokenAttributes, 
     FederatedIPAuthentication federatedIPAuthentication, 
     IIntegratedSharedService application) : base()
 {
     FederatedIPAuthentication = federatedIPAuthentication;
     User = (TPrincipal)Activator.CreateInstance(typeof(TPrincipal), pricipalAttributes);
     RefreshDate = tokenAttributes.GetValue<DateTime>("RefreshDate");
     SetData(issueDate, expirationDate, FederatedIPAuthentication.Issuer);
 }
        public string SignIn <TPrincipal>(IIntegratedSharedService application, FederatedIPSecurityToken <TPrincipal> secutityToken)
            where TPrincipal : FederatedIPUser
        {
            string     data         = GetTokenString(secutityToken.ToSaml2SecurityToken(application));
            HttpCookie updateCookie = application.Context.CreateCookie(CookieName, data, secutityToken.ValidTo);

            if (application.Context.HasCookie(CookieName))
            {
                application.Context.SetCookie(updateCookie);
            }
            else
            {
                application.Context.AddCookie(updateCookie);
            }
            application.UpdateUser(secutityToken.User);
            return(data);
        }
 public FederatedIPSecurityToken <TPrincipal> GetCredentials <TPrincipal>(IIntegratedSharedService application)
     where TPrincipal : FederatedIPUser
 {
     if (application.Context.HasCookie(CookieName))
     {
         try
         {
             HttpCookie         cookie             = application.Context.GetCookie(CookieName);
             Saml2SecurityToken saml2SecurityToken = ParseTokenString(cookie.Value);
             FederatedIPSecurityToken <TPrincipal> securityToken = saml2SecurityToken.ToSecurityToken <TPrincipal>(this, application);
             if (securityToken.IsValidTokenDate())
             {
                 return(securityToken);
             }
         }
         catch
         {
             return(null);
         }
     }
     return(null);
 }
        private static Type GetControllerFromContext(this RequestContext requestContext, IIntegratedSharedService application)
        {
            string controller = requestContext.RouteData.Values.GetRouteValueDictionaryValue("controller").ToString();
            string area       = requestContext.RouteData.DataTokens.GetRouteValueDictionaryValue("area");

            string controllerName = GetFullName(application.ProjectName, controller, area);

            Type ty = application.ApplicationAssembly.ApplicationControllers().FirstOrDefault(t => t.FullName == controllerName);

            return(ty);
        }
        private static MethodInfo GetActionMethod(this ControllerContext controllerContext, IIntegratedSharedService application)
        {
            Type controllerType = controllerContext.RequestContext.GetControllerFromContext(application);
            ControllerDescriptor controllerDescriptor = new ReflectedControllerDescriptor(controllerType);
            ActionDescriptor     actionDescriptor     = controllerDescriptor.FindAction(controllerContext, controllerContext.RouteData.Values.GetRouteValueDictionaryValue("action").ToString());

            return((actionDescriptor as ReflectedActionDescriptor).MethodInfo);
        }
 internal static Type ActionType(this ControllerContext controllerContext, IIntegratedSharedService application)
 {
     return(controllerContext.GetActionMethod(application).ReturnType);
 }
 internal static IEnumerable <AuthorizeGroupAttribute> GetAuthorizeGroupAttributes(this ControllerContext controllerContext, IIntegratedSharedService application)
 => controllerContext.GetActionMethod(application).GetAuthorizeGroupAttributes();
 internal static bool IsLogoutRequest(this ControllerContext controllerContext, IIntegratedSharedService application)
 {
     return(controllerContext.GetActionMethod(application).IsLogoutEndppointMethod());
 }
 internal static bool RequiresAuthentication(this ControllerContext controllerContext, IIntegratedSharedService application)
 {
     return(controllerContext.GetActionMethod(application).IsAuthentictedMethod());
 }
 public void SignOut(IIntegratedSharedService application, IPrincipal user)
 {
     application.UpdateUser(user);
     application.Context.RemoveCookie(CookieName);
 }
 public FederatedIPSecurityToken(TPrincipal principal, FederatedIPAuthentication federatedIPAuthentication, IIntegratedSharedService application) : base()
 {
     FederatedIPAuthentication = federatedIPAuthentication;
     User = principal;
     Update();
 }
Example #12
0
 //public static IEnumerable<ISiteMapItem> MapSite() => MapSite(new UrlHelper(HttpContext.Request.RequestContext));
 public static IEnumerable <ISiteMapItem> MapSite(this IIntegratedSharedService application, UrlHelper url)
 {
     return(application.ApplicationAssembly.ApplicationControllers()
            .SelectMany(controller => controller.GetSiteMapActions(controller))
            .Select(method => new SiteMapItem(url, method.Key, method.Value, application.ProjectName)));
 }
Example #13
0
 public static ISiteMapItem ToSiteMapItem <TMvcApplication>(this MethodInfo method, UrlHelper url, IIntegratedSharedService application)
 {
     return(new SiteMapItem(url, method.ReflectedType, method, application.ProjectName));
 }