Пример #1
0
 private static CryptographyConfiguration CreateCrypto()
 {
     string passphrase = ConfigurationManager.AppSettings["CRYPTO_PASSPHRASE"];
     byte[] salt = Encoding.UTF8.GetBytes(ConfigurationManager.AppSettings["CRYPTO_SALT"]);
     var keygen = new PassphraseKeyGenerator(passphrase, salt);
     return new CryptographyConfiguration(new RijndaelEncryptionProvider(keygen), new DefaultHmacProvider(keygen));
 }
        /// <summary>
        /// Configures authentication for the specified <paramref name="pipelines"/>
        /// using the specified <paramref name="userMapper"/>.
        /// </summary>
        /// <param name="pipelines"></param>
        /// <param name="userMapper"></param>
        public static void RegisterAuthentication(IPipelines pipelines, IUserMapper userMapper)
        {
            Verify.NotNull(userMapper, nameof(userMapper));

            var keyGenerator = new PassphraseKeyGenerator(KEY, Salt);

            var encryptionProvider = new RijndaelEncryptionProvider(keyGenerator);
            var hmacProvider = new DefaultHmacProvider(keyGenerator);
            var cryptographyConfiguration = new CryptographyConfiguration(encryptionProvider, hmacProvider);

            var formsConfiguration = new FormsAuthenticationConfiguration(cryptographyConfiguration)
            {
                RedirectUrl = "~/sign-in",
                UserMapper = userMapper
            };

            FormsAuthentication.Enable(pipelines, formsConfiguration);
        }