#Enable below property to check what all Spring security filters are configured and used by Spring security.This can also help
# to get better understanding as how security filters work internally.
#logging.level.org.springframework.security.web.FilterChainProxy=DEBUG

########## database configuration.Change these based on your setup  ##########
spring.jpa.generate-ddl=true
spring.datasource.url=jdbc:mysql://localhost:3306/spring-security-series?useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=12345678

#disabling cache for the development purpose
spring.template.cache=false
spring.thymeleaf.cache=false

#secure token configuration
#60 * 60 * 8 // setting as 8 hours,
jdj.secure.token.validity = 28800
site.base.url.http=http://localhost:8080
site.base.url.https=http://localhost:8080


########## SMTP configuration to send out emails ##########
####### Make sure to use the correct SMTP configurations #######
spring.mail.host=hash
spring.mail.port=587
spring.mail.username=dummy
spring.mail.password=123456
#spring.mail.properties.mail.smtp.auth=true
#spring.mail.properties.mail.smtp.starttls.enable=true


########### SSL Configuration ##########
# The format used for the keystore. for JKS, set it as JKS
server.ssl.key-store-type=PKCS12
# The path to the keystore containing the certificate
server.ssl.key-store=classpath:javadevjournal.p12
# The password used to generate the certificate
server.ssl.key-store-password=123456
# The alias mapped to the certificate
server.ssl.key-alias=javadevjournal

# Run Spring Boot on HTTPS only
server.port=8443

#HTTP port
http.port=8080

########## Manage Spring security session using the Spring Session and Redis #######
########## You can also use the JDBC backed session management for your application#####
spring.redis.host=localhost
#spring.redis.password=
spring.redis.port=6379
# Namespace for keys used to store sessions.
spring.session.redis.namespace=spring:session

#Session timeout setting for your application
#server.servlet.session.timeout=5s

management.endpoints.web.exposure.include=*

#### Brute force attack counter, you can also handle this through a generic database back configuration ###############
jdj.security.failedlogin.count =2
jdj.brute.force.cache.max=1000


###### Spring LDAP configuration. This is using Apache DS server but you can use it for any other LDAP server
#spring.ldap.embedded.ldif=classpath:users.ldif
#spring.ldap.embedded.base-dn=dc=springframework,dc=org
#spring.ldap.embedded.port=53389


