/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public CookieCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, ILogger <CookieCaptchaStorageProvider> logger) { _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; }
public ReservationController(ReservationDbContext dbcontext, NPOLJwtTokenService tokenservice, SMSService smsService, CultureContext cultureContext, ICaptchaProtectionProvider captchaProtectionProvider, IHumanReadableIntegerProvider humanReadableIntegerProvider) : base(cultureContext) { db = dbcontext; this.tokenservice = tokenservice; this.smsService = smsService; this.cultureContext = cultureContext; this.captchaProtectionProvider = captchaProtectionProvider; this.humanReadableIntegerProvider = humanReadableIntegerProvider; }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public CookieCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, ILogger <CookieCaptchaStorageProvider> logger) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; }
/// <summary> /// The cookie value's bindings. /// </summary> public static string GetSalt(this HttpContext context, ICaptchaProtectionProvider captchaProtectionProvider) { var ip = context.Connection.RemoteIpAddress; var userAgent = (string)context.Request.Headers[HeaderNames.UserAgent]; var issueDate = DateTime.Now.ToString("yyyy_MM_dd", CultureInfo.InvariantCulture); var name = typeof(ProvidersExtensions).Name; var salt = $"::{issueDate}::{name}::{ip}::{userAgent}"; return(captchaProtectionProvider.Hash(salt)); }
/// <summary> /// Serialization Provider /// </summary> public InMemorySerializationProvider( IMemoryCache memoryCache, ICaptchaProtectionProvider captchaProtectionProvider, ILogger <InMemorySerializationProvider> logger) { memoryCache.CheckArgumentNull(nameof(memoryCache)); _memoryCache = memoryCache; _logger = logger; _captchaProtectionProvider = captchaProtectionProvider; _logger.LogInformation("Using the InMemorySerializationProvider."); }
/// <summary> /// Serialization Provider /// </summary> public DistributedSerializationProvider( IDistributedCache distributedCache, ICaptchaProtectionProvider captchaProtectionProvider, ILogger <DistributedSerializationProvider> logger) { distributedCache.CheckArgumentNull(nameof(distributedCache)); _distributedCache = distributedCache; _logger = logger; _captchaProtectionProvider = captchaProtectionProvider; _logger.LogDebug("Using the DistributedSerializationProvider."); }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public SessionCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, ILogger <SessionCaptchaStorageProvider> logger) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _logger.LogInformation("Using the SessionCaptchaStorageProvider."); }
/// <summary> /// Serialization Provider /// </summary> public InMemorySerializationProvider( IMemoryCache memoryCache, ICaptchaProtectionProvider captchaProtectionProvider, ILogger <InMemorySerializationProvider> logger, IOptions <DNTCaptchaOptions> options) { memoryCache.CheckArgumentNull(nameof(memoryCache)); _memoryCache = memoryCache; _logger = logger; _options = options.Value; _captchaProtectionProvider = captchaProtectionProvider; _logger.LogDebug("Using the InMemorySerializationProvider."); }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public CookieCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, ILogger <CookieCaptchaStorageProvider> logger, IOptions <DNTCaptchaOptions> options) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _options = options.Value; _logger.LogDebug("Using the CookieCaptchaStorageProvider."); }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public MemoryCacheCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, IMemoryCache memoryCache, ILogger <MemoryCacheCaptchaStorageProvider> logger) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); memoryCache.CheckArgumentNull(nameof(memoryCache)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _memoryCache = memoryCache; _logger.LogInformation("Using the MemoryCacheCaptchaStorageProvider."); }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public DistributedCacheCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, IDistributedCache distributedCache, ILogger <DistributedCacheCaptchaStorageProvider> logger) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); distributedCache.CheckArgumentNull(nameof(distributedCache)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _distributedCache = distributedCache; _logger.LogInformation("Using the DistributedCacheCaptchaStorageProvider."); }
/// <summary> /// DNTCaptcha Image Controller /// </summary> public DNTCaptchaImageController( ICaptchaImageProvider captchaImageProvider, ICaptchaProtectionProvider captchaProtectionProvider, ITempDataProvider tempDataProvider, ICaptchaStorageProvider captchaStorageProvider) { captchaImageProvider.CheckArgumentNull(nameof(captchaImageProvider)); captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); tempDataProvider.CheckArgumentNull(nameof(tempDataProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); _captchaImageProvider = captchaImageProvider; _captchaProtectionProvider = captchaProtectionProvider; _tempDataProvider = tempDataProvider; _captchaStorageProvider = captchaStorageProvider; }
/// <summary> /// DNTCaptcha TagHelper /// </summary> public DNTCaptchaTagHelper( ICaptchaProtectionProvider captchaProtectionProvider, IRandomNumberProvider randomNumberProvider, IHumanReadableIntegerProvider humanReadableIntegerProvider, ICaptchaStorageProvider captchaStorageProvider) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); randomNumberProvider.CheckArgumentNull(nameof(randomNumberProvider)); humanReadableIntegerProvider.CheckArgumentNull(nameof(humanReadableIntegerProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); _captchaProtectionProvider = captchaProtectionProvider; _randomNumberProvider = randomNumberProvider; _humanReadableIntegerProvider = humanReadableIntegerProvider; _captchaStorageProvider = captchaStorageProvider; }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public MemoryCacheCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, IMemoryCache memoryCache, ILogger <MemoryCacheCaptchaStorageProvider> logger, IOptions <DNTCaptchaOptions> options) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); memoryCache.CheckArgumentNull(nameof(memoryCache)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _memoryCache = memoryCache; _options = options.Value; _logger.LogDebug("Using the MemoryCacheCaptchaStorageProvider."); }
/// <summary> /// Represents the storage to save the captcha tokens. /// </summary> public DistributedCacheCaptchaStorageProvider( ICaptchaProtectionProvider captchaProtectionProvider, IDistributedCache distributedCache, ILogger <DistributedCacheCaptchaStorageProvider> logger, IOptions <DNTCaptchaOptions> options) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); logger.CheckArgumentNull(nameof(logger)); distributedCache.CheckArgumentNull(nameof(distributedCache)); _captchaProtectionProvider = captchaProtectionProvider; _logger = logger; _distributedCache = distributedCache; _options = options.Value; _logger.LogDebug("Using the DistributedCacheCaptchaStorageProvider."); }
/// <summary> /// The cookie value's bindings. /// </summary> public static string GetSalt(this HttpContext context, ICaptchaProtectionProvider captchaProtectionProvider) { //IP за балансировщиком передается в заголовке "X-Real-Ip" string ip = context.Request.Headers["X-Real-Ip"]; if (ip == null) { ip = context.Connection.RemoteIpAddress?.ToString(); } var userAgent = (string)context.Request.Headers[HeaderNames.UserAgent]; var issueDate = DateTime.Now.ToString("yyyy_MM_dd", CultureInfo.InvariantCulture); var name = typeof(ProvidersExtensions).Name; //{ip} убрали из соли var salt = $"::{issueDate}::{name}::{userAgent}"; return(captchaProtectionProvider.Hash(salt)); }
/// <summary> /// /// </summary> public DNTCaptchaValidatorService( ILogger <DNTCaptchaValidatorService> logger, ICaptchaProtectionProvider captchaProtectionProvider, ICaptchaStorageProvider captchaStorageProvider, IHumanReadableIntegerProvider humanReadableIntegerProvider ) { logger.CheckArgumentNull(nameof(logger)); _logger = logger; captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); _captchaProtectionProvider = captchaProtectionProvider; captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); _captchaStorageProvider = captchaStorageProvider; humanReadableIntegerProvider.CheckArgumentNull(nameof(humanReadableIntegerProvider)); _humanReadableIntegerProvider = humanReadableIntegerProvider; }
/// <summary> /// /// </summary> public DNTCaptchaValidatorService( ILogger <DNTCaptchaValidatorService> logger, ICaptchaProtectionProvider captchaProtectionProvider, ICaptchaStorageProvider captchaStorageProvider, Func <DisplayMode, ICaptchaTextProvider> captchaTextProvider ) { logger.CheckArgumentNull(nameof(logger)); _logger = logger; captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); _captchaProtectionProvider = captchaProtectionProvider; captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); _captchaStorageProvider = captchaStorageProvider; captchaTextProvider.CheckArgumentNull(nameof(captchaTextProvider)); _captchaTextProvider = captchaTextProvider; }
/// <summary> /// DNTCaptcha TagHelper /// </summary> public DNTCaptchaApiController( ICaptchaProtectionProvider captchaProtectionProvider, IRandomNumberProvider randomNumberProvider, Func <DisplayMode, ICaptchaTextProvider> captchaTextProvider, ICaptchaStorageProvider captchaStorageProvider, ISerializationProvider serializationProvider) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); randomNumberProvider.CheckArgumentNull(nameof(randomNumberProvider)); captchaTextProvider.CheckArgumentNull(nameof(captchaTextProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); serializationProvider.CheckArgumentNull(nameof(serializationProvider)); _captchaProtectionProvider = captchaProtectionProvider; _randomNumberProvider = randomNumberProvider; _captchaTextProvider = captchaTextProvider; _captchaStorageProvider = captchaStorageProvider; _serializationProvider = serializationProvider; }
/// <summary> /// DNTCaptcha Image Controller /// </summary> public DNTCaptchaImageController( ICaptchaImageProvider captchaImageProvider, ICaptchaProtectionProvider captchaProtectionProvider, ITempDataProvider tempDataProvider, ICaptchaStorageProvider captchaStorageProvider, ILogger <DNTCaptchaImageController> logger, ISerializationProvider serializationProvider) { captchaImageProvider.CheckArgumentNull(nameof(captchaImageProvider)); captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); tempDataProvider.CheckArgumentNull(nameof(tempDataProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); logger.CheckArgumentNull(nameof(logger)); serializationProvider.CheckArgumentNull(nameof(serializationProvider)); _captchaImageProvider = captchaImageProvider; _captchaProtectionProvider = captchaProtectionProvider; _tempDataProvider = tempDataProvider; _captchaStorageProvider = captchaStorageProvider; _logger = logger; _serializationProvider = serializationProvider; }
public DNTCaptchaMiddleware( RequestDelegate next, ICaptchaImageProvider captchaImageProvider, ICaptchaProtectionProvider captchaProtectionProvider, ITempDataProvider tempDataProvider, ICaptchaStorageProvider captchaStorageProvider, ILogger <DNTCaptchaImageController> logger) { this._next = next; captchaImageProvider.CheckArgumentNull(nameof(captchaImageProvider)); captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); tempDataProvider.CheckArgumentNull(nameof(tempDataProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); captchaStorageProvider.CheckArgumentNull(nameof(logger)); _captchaImageProvider = captchaImageProvider; _captchaProtectionProvider = captchaProtectionProvider; _tempDataProvider = tempDataProvider; _captchaStorageProvider = captchaStorageProvider; _logger = logger; }
/// <summary> /// DNTCaptcha Api /// </summary> public DNTCaptchaApiProvider( ICaptchaProtectionProvider captchaProtectionProvider, IRandomNumberProvider randomNumberProvider, Func <DisplayMode, ICaptchaTextProvider> captchaTextProvider, ICaptchaStorageProvider captchaStorageProvider, ISerializationProvider serializationProvider, IHttpContextAccessor httpContextAccessor, IUrlHelper urlHelper) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); randomNumberProvider.CheckArgumentNull(nameof(randomNumberProvider)); captchaTextProvider.CheckArgumentNull(nameof(captchaTextProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); serializationProvider.CheckArgumentNull(nameof(serializationProvider)); _captchaProtectionProvider = captchaProtectionProvider; _randomNumberProvider = randomNumberProvider; _captchaTextProvider = captchaTextProvider; _captchaStorageProvider = captchaStorageProvider; _serializationProvider = serializationProvider; _httpContextAccessor = httpContextAccessor; _urlHelper = urlHelper; }
/// <summary> /// DNTCaptcha TagHelper /// </summary> public DNTCaptchaTagHelper( ICaptchaProtectionProvider captchaProtectionProvider, IRandomNumberProvider randomNumberProvider, Func <DisplayMode, ICaptchaTextProvider> captchaTextProvider, ICaptchaStorageProvider captchaStorageProvider, IAntiforgery antiforgery, ISerializationProvider serializationProvider ) { captchaProtectionProvider.CheckArgumentNull(nameof(captchaProtectionProvider)); randomNumberProvider.CheckArgumentNull(nameof(randomNumberProvider)); captchaTextProvider.CheckArgumentNull(nameof(captchaTextProvider)); captchaStorageProvider.CheckArgumentNull(nameof(captchaStorageProvider)); antiforgery.CheckArgumentNull(nameof(antiforgery)); serializationProvider.CheckArgumentNull(nameof(serializationProvider)); _captchaProtectionProvider = captchaProtectionProvider; _randomNumberProvider = randomNumberProvider; _captchaTextProvider = captchaTextProvider; _captchaStorageProvider = captchaStorageProvider; _antiforgery = antiforgery; _serializationProvider = serializationProvider; }
/// <summary> /// Serialization Provider /// </summary> public SerializationProvider(IMemoryCache memoryCache, ICaptchaProtectionProvider captchaProtectionProvider) { memoryCache.CheckArgumentNull(nameof(memoryCache)); _memoryCache = memoryCache; _captchaProtectionProvider = captchaProtectionProvider; }