Table of Contents |
---|
Key Points
...
...
JHipster Lite - Java, NPM solution for SCRUD services - apps
The original JHipster and JHLite are not the same thing, they are not generating the same code and not serving the same purpose!
Here are some choice elements you can take into account:
JHipster Lite ***
JHipster is a development platform to quickly generate, develop & deploy modern web applications & microservice architectures.
https://www.jhipster.tech/jhipster-lite/
https://github.com/jhipster/jhipster-lite
...
https://www.jhipster.tech/microservices-architecture/
Can deploy to containers, clouds, kubernetes
https://www.jhipster.tech/kubernetes/
Consul open-source service registry platform from hashicorp - eos
...
Consul can enforce zero-trust connections on service mesh
Consul is a core component of the HashiCorp Zero Trust Security solution. Consul enforces Zero Trust by using identity-based access to ensure all communication within the service mesh is authenticated with TLS certificates and encrypted in transit.
Consul lookups can be done with HTTPS or DNS queries
https://linuxhint.com/consul_dns_interface/
Consul on Kubernetes
A robust service mesh for discovering and securely connecting applications on Kubernetes
...
Configuration using lambdas
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests(authorizeRequests ->
authorizeRequests
.antMatchers("/blog/**").permitAll()
.anyRequest().authenticated()
)
.formLogin(formLogin ->
formLogin
.loginPage("/login")
.permitAll()
)
.rememberMe(withDefaults());
}
}
Equivalent configuration without using lambdas
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/blog/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.rememberMe();
}
}
Lambda DSL configuration tips
...
You may also configure WebFlux security using lambdas in a similar manner.
Below is an example configuration using lambdas.
@EnableWebFluxSecurity
public class SecurityConfig {
@Bean
SecurityWebFilterChain springSecurityFilterChain(ServerHttpSecurity http) {
http
.authorizeExchange(exchanges ->
exchanges
.pathMatchers("/blog/**").permitAll()
.anyExchange().authenticated()
)
.httpBasic(withDefaults())
.formLogin(formLogin ->
formLogin
.loginPage("/login")
);
return http.build();
}
}
Goals of the Lambda DSL
The Lambda DSL was created to accomplish to following goals:
...