示例#1
0
    public void UpdateTickets()
    {
        ChallengeProperties val = null;

        val = Properties.winLoseDictionary[challengeMode];

        if (Properties.GameWonState == "Lose")
        {
            if (val != null)
            {
                Properties.Tickets       = val.LoseAmount;
                Properties.TotalTickets += Properties.Tickets;
            }
        }
        else
        {
            if (val != null)
            {
                Properties.Tickets       = val.WinAmount;
                Properties.TotalTickets += Properties.Tickets;
            }
        }
        PlayerPrefs.SetInt("Total Tickets", (int)Properties.TotalTickets);
        PlayerPrefs.Save();
    }
        /// <summary>
        /// Authenticates external provider and make IdentityServer challenge
        /// </summary>
        /// <param name="input">Provider name.</param>
        /// <param name="context">Current http context from controller</param>
        public void AuthenticateExternal(string input, HttpContextBase context)
        {
            Telerik.Sitefinity.Web.Url returnUri;

            if (this.SuccessfulRegistrationAction == SuccessfulRegistrationAction.RedirectToPage)
            {
                returnUri = new Telerik.Sitefinity.Web.Url(this.GetPageUrl(this.SuccessfulRegistrationPageId));
            }
            else
            {
                returnUri = new Telerik.Sitefinity.Web.Url(context.Request.UrlReferrer.ToString());
            }

            if (this.SuccessfulRegistrationAction == SuccessfulRegistrationAction.ShowMessage)
            {
                returnUri.Query.Add("ShowSuccessfulRegistrationMsg", "true");
            }

            if (this.ActivationMethod == ActivationMethod.AfterConfirmation)
            {
                returnUri.Query.Add("ShowActivationMsg", "true");
            }

            var owinContext   = context.Request.GetOwinContext();
            var selectedRoles = this.selectedRoles.Select(x => x.Name).ToJson();

            var challengeProperties = ChallengeProperties.ForExternalUser(input, returnUri.ToString(), selectedRoles);

            challengeProperties.RedirectUri = returnUri.ToString();

            owinContext.Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
        }
        public virtual LoginFormViewModel Authenticate(LoginFormViewModel input, HttpContextBase context)
        {
            input.LoginError = false;

            if (Config.Get <SecurityConfig>().AuthenticationMode == SecConfig.AuthenticationMode.Claims)
            {
                var owinContext         = context.Request.GetOwinContext();
                var challengeProperties = ChallengeProperties.ForLocalUser(input.UserName, input.Password, this.MembershipProvider, input.RememberMe, context.Request.Url.ToString());
                challengeProperties.RedirectUri = this.GetReturnURL(context);
                owinContext.Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
            }
            else
            {
                User user;
                UserLoggingReason result = SecurityManager.AuthenticateUser(
                    this.MembershipProvider,
                    input.UserName,
                    input.Password,
                    input.RememberMe,
                    out user);

                if (result != UserLoggingReason.Success)
                {
                    input.LoginError = true;
                }
                else
                {
                    input.RedirectUrlAfterLogin = this.GetReturnURL(context);
                }
            }

            return(input);
        }
示例#4
0
        public virtual LoginFormViewModel Authenticate(LoginFormViewModel input, HttpContextBase context)
        {
            input.LoginError = false;

            if (Config.Get <SecurityConfig>().AuthenticationMode == SecConfig.AuthenticationMode.Claims)
            {
                var owinContext = context.Request.GetOwinContext();

                string errorRedirectUrl;

                if (context.Request.UrlReferrer?.AbsoluteUri != null)
                {
                    errorRedirectUrl = context.Request.UrlReferrer.AbsoluteUri;

                    var param = context.Request.Params[MvcControllerProxy.ControllerKey];

                    if (param != null)
                    {
                        var uriBuilder = new UriBuilder(errorRedirectUrl);
                        var query      = HttpUtility.ParseQueryString(uriBuilder.Query);
                        query[LoginControllerKey] = param;
                        uriBuilder.Query          = query.ToString();

                        errorRedirectUrl = uriBuilder.ToString();
                    }
                }
                else
                {
                    errorRedirectUrl = context.Request.Url.ToString();
                }

                var challengeProperties = ChallengeProperties.ForLocalUser(input.UserName, input.Password, this.MembershipProvider, input.RememberMe, errorRedirectUrl);
                challengeProperties.RedirectUri = this.GetReturnURL(context);
                owinContext.Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
            }
            else
            {
                User user;
                UserLoggingReason result = SecurityManager.AuthenticateUser(
                    this.MembershipProvider,
                    input.UserName,
                    input.Password,
                    input.RememberMe,
                    out user);

                if (result != UserLoggingReason.Success)
                {
                    input.LoginError = true;
                }
                else
                {
                    input.RedirectUrlAfterLogin = this.GetReturnURL(context);
                }
            }

            return(input);
        }
        /// <summary>
        /// Authenticates external provider and make IdentityServer challenge
        /// </summary>
        /// <param name="input">Provider name.</param>
        /// <param name="context">Current http context from controller</param>
        public void AuthenticateExternal(string input, HttpContextBase context)
        {
            var widgetUrl           = context.Request.Url.ToString();
            var owinContext         = context.Request.GetOwinContext();
            var challengeProperties = ChallengeProperties.ForExternalUser(input, widgetUrl);

            challengeProperties.RedirectUri = this.GetReturnURL(context);

            owinContext.Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
        }
        public virtual LoginFormViewModel Authenticate(LoginFormViewModel input, HttpContextBase context)
        {
            input.LoginError = false;
            string errorRedirectUrl = GetErrorRedirectUrl(context);

            if (Config.Get <SecurityConfig>().AuthenticationMode == SecConfig.AuthenticationMode.Claims && ClaimsManager.CurrentAuthenticationModule.AuthenticationProtocol != "Default")
            {
                var owinContext = context.Request.GetOwinContext();

                var challengeProperties = ChallengeProperties.ForLocalUser(input.UserName, input.Password, this.MembershipProvider, input.RememberMe, errorRedirectUrl);
                challengeProperties.RedirectUri = this.GetReturnURL(context);
                owinContext.Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
            }
            else
            {
                var redirectUrl = this.GetReturnURL(context);

                User user;
                UserLoggingReason result = SecurityManager.AuthenticateUser(
                    this.MembershipProvider,
                    input.UserName,
                    input.Password,
                    input.RememberMe,
                    out user);

                if (result != UserLoggingReason.Success)
                {
                    if (ClaimsManager.CurrentAuthenticationModule.AuthenticationProtocol == "Default")
                    {
                        errorRedirectUrl = AddErrorParameterToQuery(errorRedirectUrl);
                        SFClaimsAuthenticationManager.ProcessRejectedUserForDefaultClaimsLogin(context, result, user, input.RememberMe, redirectUrl, errorRedirectUrl);
                    }

                    input.LoginError = true;
                }
                else
                {
                    if (ClaimsManager.CurrentAuthenticationModule.AuthenticationProtocol == "Default")
                    {
                        redirectUrl = RemoveErrorParameterFromQuery(redirectUrl);
                    }

                    input.RedirectUrlAfterLogin = redirectUrl;
                    SystemManager.CurrentHttpContext.GetOwinContext().Authentication.SignIn(new AuthenticationProperties {
                        RedirectUri = redirectUrl
                    });
                }
            }

            return(input);
        }
示例#7
0
        protected override void InitializeControls(GenericContainer container)
        {
            if (!SystemManager.IsDesignMode && ClaimsManager.GetCurrentUserId() == Guid.Empty)
            {
                var    providerName = "CustomSTS";
                var    widgetUrl    = HttpContext.Current.Request.Url;
                string redirectUrl  = RouteHelper.ResolveUrl(this.DestinationPageUrl, UrlResolveOptions.Absolute);

                var challengeProperties = ChallengeProperties.ForExternalUser(providerName, widgetUrl.AbsoluteUri);
                challengeProperties.RedirectUri = redirectUrl;

                this.Page.Request.GetOwinContext().Authentication.Challenge(challengeProperties, ClaimsManager.CurrentAuthenticationModule.STSAuthenticationType);
            }
            else
            {
                base.InitializeControls(container);
            }
        }