Пример #1
0
        public HomeModule(IConfigProvider configProvider, IJwtWrapper jwtWrapper)
        {
            Get["/login"] = _ => View["Login"];

            Post["/login"] = _ =>
            {
                var user = this.Bind <UserCredentials>();
                //Verify user/pass
                if (user.User != "fred" && user.Password != "securepwd")
                {
                    return(401);
                }

                var jwttoken = new JwtToken()
                {
                    Issuer   = "http://issuer.com",
                    Audience = "http://mycoolwebsite.com",
                    Claims   =
                        new List <Claim>(new[]
                    {
                        new Claim("http://schemas.microsoft.com/ws/2008/06/identity/claims/role", "Administrator"),
                        new Claim(ClaimTypes.Name, "Fred")
                    }),
                    Expiry = DateTime.UtcNow.AddDays(7)
                };

                var token = jwtWrapper.Encode(jwttoken, configProvider.GetAppSetting("securekey"), JwtHashAlgorithm.HS256);
                return(Negotiate.WithModel(token));
            };

            Get["/"] = _ => "Hello Secure World!";
        }
Пример #2
0
        public HomeModule(IConfigProvider configProvider, IJwtWrapper jwtWrapper)
        {
            Get["/login"] = _ => View["Login"];

            Post["/login"] = _ =>
            {
                var user = this.Bind<UserCredentials>();
                //Verify user/pass
                if (user.User != "fred" && user.Password != "securepwd")
                {
                    return 401;
                }

                var jwttoken = new JwtToken()
                {
                    Issuer = "http://issuer.com",
                    Audience = "http://mycoolwebsite.com",
                    Claims =
                        new List<Claim>(new[]
                        {
                            new Claim("http://schemas.microsoft.com/ws/2008/06/identity/claims/role", "Administrator"),
                            new Claim(ClaimTypes.Name, "Fred")
                        }),
                    Expiry = DateTime.UtcNow.AddDays(7)
                };
                
                var token = jwtWrapper.Encode(jwttoken, configProvider.GetAppSetting("securekey"), JwtHashAlgorithm.HS256);
                return Negotiate.WithModel(token);
            };

            Get["/"] = _ => "Hello Secure World!";
        }
Пример #3
0
        /// <summary>
        /// Initialize dependencies
        /// </summary>
        public UnitTest()
        {
            _jwtWrapper = new JwtWrapper();

            _objectToEncode = new StatusDto
            {
                Message = "Space Dust",
                Code    = HttpStatusCode.OK
            };
        }
Пример #4
0
        public UsersModule(IConfigProvider configProvider, IJwtWrapper jwtWrapper)
            : base("/users")
        {
            _configProvider = configProvider;
            _jwtWrapper = jwtWrapper;

            Post["/"] = r => CreateUser();
            Post["/login"] = r => Login();
            Post["/clientkey"] = r => SaveKey();
            Post["/devicetoken"] = r => SaveAppleToken();
            Post["/clearkey"] = r => ClearKey();
            Post["/forgot"] = r => ForgotPassword();
            Post["/updateEmail"] = r => UpdateEmail();
            Post["/updatePassword"] = r => UpdatePassword();
            Post["/saveAvatar"] = r => UpdateUserAvatar();
            Post["/saveuser"] = r => UpdateUserProfile();
        }