@Override public Integer apply(FirewallRateLimit firewallRateLimit) { return firewallRateLimit.getPeriod(); } });
private void addIpFilterRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getIpFilters() != null) { for (FirewallIpFilter ipFilter : firewallSettings.getIpFilters()) { if (ipFilter.isWhiteList()) { firewallConfig.addIpAddressesWhiteList(ipFilter.getIps()); } else { firewallConfig.addIpAddressesBlackList(ipFilter.getIps()); } } } }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
/** * Create a new Authentication module with the specified settings. * * @param restletCloudConfig * The agent configuration. * @param modulesSettings * The modules settings. * @param context * The context */ public AuthenticationModule(RestletCloudConfig restletCloudConfig, ModulesSettings modulesSettings, Context context) { super(context, ChallengeScheme.HTTP_BASIC, "realm"); authenticationSettings = new AuthenticationSettings(); authenticationSettings.setOptional(modulesSettings.isAuthorizationModuleEnabled()); authenticateClientResource = AgentUtils.getClientResource( restletCloudConfig, modulesSettings, AuthenticationAuthenticateResource.class, AUTHENTICATE_PATH); // config ChallengeAuthenticator setOptional(authenticationSettings.isOptional()); setVerifier(new AgentVerifier()); // Initialize the cache initializeCache(); }
/** * Creates a new Thread that asynchronously posts call logs to Restlet Cloud */ public void flushLogs() { if (callLogs.isEmpty()) { return; } CallLogs logsToPost; synchronized (callLogs) { if (callLogs.isEmpty()) { return; } logsToPost = new CallLogs(callLogs.size()); logsToPost.addAll(callLogs); callLogs.clear(); } postLogs(logsToPost); }
.maximumSize(authenticationSettings.getCacheSize()) .expireAfterWrite( authenticationSettings.getCacheTimeToLiveSeconds(), TimeUnit.SECONDS).build(userLoader);
/** * Create a new Authentication module with the specified settings. * * @param restletCloudConfig * The agent configuration. * @param modulesSettings * The modules settings. * @param context * The context */ public AuthenticationModule(RestletCloudConfig restletCloudConfig, ModulesSettings modulesSettings, Context context) { super(context, ChallengeScheme.HTTP_BASIC, "realm"); authenticationSettings = new AuthenticationSettings(); authenticationSettings.setOptional(modulesSettings.isAuthorizationModuleEnabled()); authenticateClientResource = AgentUtils.getClientResource( restletCloudConfig, modulesSettings, AuthenticationAuthenticateResource.class, AUTHENTICATE_PATH); // config ChallengeAuthenticator setOptional(authenticationSettings.isOptional()); setVerifier(new AgentVerifier()); // Initialize the cache initializeCache(); }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
private void addIpFilterRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getIpFilters() != null) { for (FirewallIpFilter ipFilter : firewallSettings.getIpFilters()) { if (ipFilter.isWhiteList()) { firewallConfig.addIpAddressesWhiteList(ipFilter.getIps()); } else { firewallConfig.addIpAddressesBlackList(ipFilter.getIps()); } } } }
/** * Creates a new Thread that asynchronously posts call logs to Restlet Cloud */ public void flushLogs() { if (callLogs.isEmpty()) { return; } CallLogs logsToPost; synchronized (callLogs) { if (callLogs.isEmpty()) { return; } logsToPost = new CallLogs(callLogs.size()); logsToPost.addAll(callLogs); callLogs.clear(); } postLogs(logsToPost); }
@Override public Integer apply(FirewallRateLimit firewallRateLimit) { return firewallRateLimit.getPeriod(); } });
/** * Create a new Authentication module with the specified settings. * * @param restletCloudConfig * The agent configuration. * @param modulesSettings * The modules settings. * @param context * The context */ public AuthenticationModule(RestletCloudConfig restletCloudConfig, ModulesSettings modulesSettings, Context context) { super(context, ChallengeScheme.HTTP_BASIC, "realm"); authenticationSettings = new AuthenticationSettings(); authenticationSettings.setOptional(modulesSettings.isAuthorizationModuleEnabled()); authenticateClientResource = AgentUtils.getClientResource( restletCloudConfig, modulesSettings, AuthenticationAuthenticateResource.class, AUTHENTICATE_PATH); // config ChallengeAuthenticator setOptional(authenticationSettings.isOptional()); setVerifier(new AgentVerifier()); // Initialize the cache initializeCache(); }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
private void addIpFilterRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getIpFilters() != null) { for (FirewallIpFilter ipFilter : firewallSettings.getIpFilters()) { if (ipFilter.isWhiteList()) { firewallConfig.addIpAddressesWhiteList(ipFilter.getIps()); } else { firewallConfig.addIpAddressesBlackList(ipFilter.getIps()); } } } }
/** * Creates a new Thread that asynchronously posts call logs to Restlet Cloud */ public void flushLogs() { if (callLogs.isEmpty()) { return; } CallLogs logsToPost; synchronized (callLogs) { if (callLogs.isEmpty()) { return; } logsToPost = new CallLogs(callLogs.size()); logsToPost.addAll(callLogs); callLogs.clear(); } postLogs(logsToPost); }
@Override public Integer apply(FirewallRateLimit firewallRateLimit) { return firewallRateLimit.getPeriod(); } });
/** * Create a new Authentication module with the specified settings. * * @param restletCloudConfig * The agent configuration. * @param modulesSettings * The modules settings. * @param context * The context */ public AuthenticationModule(RestletCloudConfig restletCloudConfig, ModulesSettings modulesSettings, Context context) { super(context, ChallengeScheme.HTTP_BASIC, "realm"); authenticationSettings = new AuthenticationSettings(); authenticationSettings.setOptional(modulesSettings.isAuthorizationModuleEnabled()); authenticateClientResource = AgentUtils.getClientResource( restletCloudConfig, modulesSettings, AuthenticationAuthenticateResource.class, AUTHENTICATE_PATH); // config ChallengeAuthenticator setOptional(authenticationSettings.isOptional()); setVerifier(new AgentVerifier()); // Initialize the cache initializeCache(); }
private void addIpFilterRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getIpFilters() != null) { for (FirewallIpFilter ipFilter : firewallSettings.getIpFilters()) { if (ipFilter.isWhiteList()) { firewallConfig.addIpAddressesWhiteList(ipFilter.getIps()); } else { firewallConfig.addIpAddressesBlackList(ipFilter.getIps()); } } } }
/** * Creates a new Thread that asynchronously posts call logs to Restlet Cloud */ public void flushLogs() { if (callLogs.isEmpty()) { return; } CallLogs logsToPost; synchronized (callLogs) { if (callLogs.isEmpty()) { return; } logsToPost = new CallLogs(callLogs.size()); logsToPost.addAll(callLogs); callLogs.clear(); } postLogs(logsToPost); }
@Override public Integer apply(FirewallRateLimit firewallRateLimit) { return firewallRateLimit.getPeriod(); } });