0% found this document useful (0 votes)
73 views3 pages

Spring Security Authentication&Authorization

Uploaded by

nameedyusuf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
73 views3 pages

Spring Security Authentication&Authorization

Uploaded by

nameedyusuf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Authentication & Authorization

Steps:

1. Spring Initializr:

2. File Structure:

3. AutheAuthoApplication(Default):

package [Link];

import [Link];

import [Link];

@SpringBootApplication
public class AutheAuthoApplication {

public static void main(String[] args) {

[Link]([Link], args);

4. UserController:

package [Link];

import [Link];

import [Link].*;

@RestController

public class UserController {

@GetMapping("/welcome")

public String welcome() {

return "Welcome this endpoint is not secure";

@GetMapping("/user/userProfile")

@PreAuthorize("hasAuthority('ROLE_USER')")

public String userProfile() {

return "Welcome to User Profile";

@GetMapping("/admin/adminProfile")

@PreAuthorize("hasAuthority('ROLE_ADMIN')")

public String adminProfile() {

return "Welcome to Admin Profile";

5. SecurityConfig:

package [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link].*;

import [Link];
import [Link];

import [Link];

import [Link];

@Configuration

@EnableWebSecurity

@EnableMethodSecurity

public class SecurityConfig {

// User Creation

@Bean

public UserDetailsService userDetailsService(PasswordEncoder encoder) {

// InMemoryUserDetailsManager

UserDetails admin = [Link]("Amiya")

.password([Link]("123"))

.roles("ADMIN", "USER")

.build();

UserDetails user = [Link]("Ejaz")

.password([Link]("123"))

.roles("USER")

.build();

return new InMemoryUserDetailsManager(admin, user);

// Password Encoding

@Bean

public PasswordEncoder passwordEncoder() {

return new BCryptPasswordEncoder();

You might also like