Example #1
0
        public FidoController(
            UserManager <User> users,
            AuthenticationContext authContext,
            IConfiguration configuraiton)
        {
            _users       = users;
            _authContext = authContext;

            var invalidToken = "6d6b44d78b09fed0c5559e34c71db291d0d322d4d4de0000";

            _origin = configuraiton["Fido2:Origin"];
            var MDSAccessKey    = configuraiton["fido2:MDSAccessKey"];
            var MDSCacheDirPath = configuraiton["fido2:MDSCacheDirPath"] ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain    = configuraiton["Fido2:ServerDomain"],
                ServerName      = "Fido2 Identity Server",
                Origin          = _origin,
                MetadataService = _mds
            });
        }
        public SignInFidoController(IConfiguration config,
                                    Fido2Storage fido2Storage,
                                    UserManager <IdentityUser> userManager,
                                    SignInManager <IdentityUser> signInManager)
        {
            _signInManager = signInManager;
            _userManager   = userManager;
            _fido2Storage  = fido2Storage;
            var MDSAccessKey    = config["fido2:MDSAccessKey"];
            var MDSCacheDirPath = config["fido2:MDSCacheDirPath"] ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }
            _origin = config["fido2:origin"];
            _lib    = new Fido2(new Fido2Configuration()
            {
                ServerDomain = config["fido2:serverDomain"],
                ServerName   = "Fido2 test",
                Origin       = _origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService         = _mds,
                TimestampDriftTolerance = config.GetValue <int>("fido2:TimestampDriftTolerance")
            });
        }
        public WebauthController(IConfiguration config)
        {
            var MDSAccessKey    = config["fido2:MDSAccessKey"];
            var invalidToken    = "6d6b44d78b09fed0c5559e34c71db291d0d322d4d4de0000";
            var MDSCacheDirPath = config["fido2:MDSCacheDirPath"] ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }
            _origin = "https://localhost:44329";
            _lib    = new Fido2(new Fido2Configuration()
            {
                ServerDomain = "localhost",
                ServerName   = "Fido2 test",
                Origin       = _origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService         = _mds,
                TimestampDriftTolerance = config.GetValue <int>("fido2:TimestampDriftTolerance")
            });
        }
Example #4
0
        public UnitTest1()
        {
            var MDSAccessKey = Environment.GetEnvironmentVariable("fido2:MDSAccessKey");
            var CacheDir     = Environment.GetEnvironmentVariable("fido2:MDSCacheDirPath");

            // Only create and use MetadataService if we have an accesskey
            MetadataService = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, CacheDir);
        }
Example #5
0
 public TestController(IConfiguration config)
 {
     _lib = new Fido2(new Fido2.Configuration()
     {
         ServerDomain    = config["fido2:serverDomain"],
         ServerName      = "Fido2 test",
         Origin          = config["fido2:origin"],
         MetadataService = MDSMetadata.Instance(config["fido2:MDSAccessKey"], config["fido2:MDSCacheDirPath"])
     });
 }
        public MyController(IConfiguration config)
        {
            var MDSAccessKey = config["fido2:MDSAccessKey"];

            _lib = new Fido2(new Fido2.Configuration()
            {
                ServerDomain = config["fido2:serverDomain"],
                ServerName   = "Fido2 test",
                Origin       = config["fido2:origin"],
                // Only create and use Metadataservice if we have and acesskey
                MetadataService = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, config["fido2:MDSCacheDirPath"])
            });
        }
Example #7
0
        public AccountController(
            IIdentityServerInteractionService interaction,
            IClientStore clientStore,
            IAuthenticationSchemeProvider schemeProvider,
            IEventService events,
            UserManager <User> users,
            IUserStore <User> userStore,
            IResourceOwnerPasswordValidator validator,
            IPasswordHasher <User> passwordHasher,
            SignInManager <User> signInManager,
            AuthenticationContext authenticationContext,
            IConfiguration configuration,
            IJsonHelper jsonHelper)
        {
            // if the TestUserStore is not in DI, then we'll just use the global users collection
            // this is where you would plug in your own custom identity management library (e.g. ASP.NET Identity)
            _users                 = users;
            _userStore             = userStore;
            _signInManager         = signInManager;
            _interaction           = interaction;
            _clientStore           = clientStore;
            _schemeProvider        = schemeProvider;
            _events                = events;
            _validator             = validator;
            _passwordHasher        = passwordHasher;
            _authenticationContext = authenticationContext;
            _jsonHelper            = jsonHelper;

            var invalidToken = "6d6b44d78b09fed0c5559e34c71db291d0d322d4d4de0000";

            _origin = configuration["Fido2:Origin"];
            var MDSAccessKey    = configuration["fido2:MDSAccessKey"];
            var MDSCacheDirPath = configuration["fido2:MDSCacheDirPath"] ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain    = configuration["Fido2:ServerDomain"],
                ServerName      = "Fido2 Identity Server",
                Origin          = _origin,
                MetadataService = _mds
            });
        }
Example #8
0
        public TestController(IConfiguration config)
        {
            var MDSAccessKey = config["fido2:MDSAccessKey"];

            _mds    = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, config["fido2:MDSCacheDirPath"]);
            _origin = config["fido2:origin"];
            _lib    = new Fido2(new Fido2.Configuration()
            {
                ServerDomain    = config["fido2:serverDomain"],
                ServerName      = "Fido2 test",
                Origin          = _origin,
                MetadataService = _mds
            });
        }
Example #9
0
        public UnitTest1()
        {
            var MDSAccessKey = Environment.GetEnvironmentVariable("fido2:MDSAccessKey");
            var CacheDir     = Environment.GetEnvironmentVariable("fido2:MDSCacheDirPath");

            // Only create and use MetadataService if we have an accesskey
            MetadataService = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, CacheDir);
            if (null != MetadataService)
            {
                if (false == MetadataService.IsInitialized())
                {
                    MetadataService.Initialize().Wait();
                }
            }
        }
Example #10
0
        public TestController(IConfiguration config)
        {
            // Sample bogus key from https://fidoalliance.org/metadata/
            var invalidToken = "6d6b44d78b09fed0c5559e34c71db291d0d322d4d4de0000";

            _origin = config["fido2:origin"];
            _mds    = MDSMetadata.ConformanceInstance(invalidToken, config["fido2:MDSCacheDirPath"], _origin);

            _lib = new Fido2(new Fido2.Configuration()
            {
                ServerDomain    = config["fido2:serverDomain"],
                ServerName      = "Fido2 test",
                Origin          = _origin,
                MetadataService = _mds
            });
        }
Example #11
0
        public UnitTest1()
        {
            var MDSAccessKey = Environment.GetEnvironmentVariable("fido2:MDSAccessKey");
            var CacheDir     = Environment.GetEnvironmentVariable("fido2:MDSCacheDirPath");

            // Only create and use MetadataService if we have an accesskey
            MetadataService = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, CacheDir);
            if (null != MetadataService)
            {
                if (false == MetadataService.IsInitialized())
                {
                    MetadataService.Initialize().Wait();
                }
            }
            config = new Fido2.Configuration {
                Origin = "https://localhost:44329"
            };
        }
Example #12
0
        public WebAuthTestController(IConfiguration config)
        {
            // Sample bogus key from https://fidoalliance.org/metadata/
            var invalidToken = "6d6b44d78b09fed0c5559e34c71db291d0d322d4d4de0000";

            _origin = config["https://localhost:44329"];
            _mds    = MDSMetadata.ConformanceInstance(invalidToken, config["fido2:MDSCacheDirPath"], _origin);
            if (false == _mds.IsInitialized())
            {
                _mds.Initialize().Wait();
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain    = config["localhost"],
                ServerName      = "Fido2 test",
                Origin          = _origin,
                MetadataService = _mds
            });
        }
Example #13
0
        public MyController(IConfiguration config)
        {
            var MDSAccessKey = config["fido2:MDSAccessKey"];

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, config["fido2:MDSCacheDirPath"]);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }
            _origin = config["fido2:origin"];
            _lib    = new Fido2(new Configuration()
            {
                ServerDomain = config["fido2:serverDomain"],
                ServerName   = "Fido2 test",
                Origin       = _origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService = _mds
            });
        }
Example #14
0
        public RegisterFido2Controller(IConfiguration config, Fido2Storage fido2Storage, UserManager <IdentityUser> userManager, IDistributedCache distributedCache)
        {
            _userManager      = userManager;
            _fido2Storage     = fido2Storage;
            _distributedCache = distributedCache;
            var MDSAccessKey    = config["fido2:MDSAccessKey"];
            var MDSCacheDirPath = config["fido2:MDSCacheDirPath"] ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(MDSAccessKey) ? null : MDSMetadata.Instance(MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }
            _origin = config["fido2:origin"];
            if (_origin == null)
            {
                _origin = "https://localhost:44388";
            }

            var domain = config["fido2:serverDomain"];

            if (domain == null)
            {
                domain = "localhost";
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain = domain,
                ServerName   = "Fido2IdentityMfa",
                Origin       = _origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService         = _mds,
                TimestampDriftTolerance = config.GetValue <int>("fido2:TimestampDriftTolerance")
            });
        }
Example #15
0
        public MfaFido2RegisterController(
            Fido2Storage fido2Storage,
            UserManager <ApplicationUser> userManager,
            IOptions <Fido2Configuration> optionsFido2Configuration,
            IOptions <Fido2MdsConfiguration> optionsFido2MdsConfiguration,
            IStringLocalizerFactory factory)
        {
            _userManager = userManager;
            _optionsFido2Configuration    = optionsFido2Configuration;
            _optionsFido2MdsConfiguration = optionsFido2MdsConfiguration;
            _fido2Storage = fido2Storage;

            var type         = typeof(SharedResource);
            var assemblyName = new AssemblyName(type.GetTypeInfo().Assembly.FullName);

            _sharedLocalizer = factory.Create("SharedResource", assemblyName.Name);

            var MDSCacheDirPath = _optionsFido2MdsConfiguration.Value.MDSCacheDirPath ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(_optionsFido2MdsConfiguration.Value.MDSAccessKey) ? null : MDSMetadata.Instance(
                _optionsFido2MdsConfiguration.Value.MDSAccessKey, MDSCacheDirPath);
            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain = _optionsFido2Configuration.Value.ServerDomain,
                ServerName   = _optionsFido2Configuration.Value.ServerName,
                Origin       = _optionsFido2Configuration.Value.Origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService         = _mds,
                TimestampDriftTolerance = _optionsFido2Configuration.Value.TimestampDriftTolerance
            });
        }
Example #16
0
        public PwFido2SignInController(
            Fido2Storage fido2Storage,
            UserManager <IdentityUser> userManager,
            SignInManager <IdentityUser> signInManager,
            IOptions <Fido2Configuration> optionsFido2Configuration,
            IOptions <Fido2MdsConfiguration> optionsFido2MdsConfiguration)
        {
            _userManager = userManager;
            _optionsFido2Configuration    = optionsFido2Configuration;
            _optionsFido2MdsConfiguration = optionsFido2MdsConfiguration;
            _signInManager = signInManager;
            _userManager   = userManager;
            _fido2Storage  = fido2Storage;

            var MDSCacheDirPath = _optionsFido2MdsConfiguration.Value.MDSCacheDirPath ?? Path.Combine(Path.GetTempPath(), "fido2mdscache");

            _mds = string.IsNullOrEmpty(_optionsFido2MdsConfiguration.Value.MDSAccessKey) ? null : MDSMetadata.Instance(
                _optionsFido2MdsConfiguration.Value.MDSAccessKey, MDSCacheDirPath);

            if (null != _mds)
            {
                if (false == _mds.IsInitialized())
                {
                    _mds.Initialize().Wait();
                }
            }

            _lib = new Fido2(new Fido2Configuration()
            {
                ServerDomain = _optionsFido2Configuration.Value.ServerDomain,
                ServerName   = _optionsFido2Configuration.Value.ServerName,
                Origin       = _optionsFido2Configuration.Value.Origin,
                // Only create and use Metadataservice if we have an acesskey
                MetadataService         = _mds,
                TimestampDriftTolerance = _optionsFido2Configuration.Value.TimestampDriftTolerance
            });
        }