Skip to content

Commit e46a462

Browse files
committed
Secure endpoints and services that require authentication
WE2-860 Signed-off-by: Mart Somermaa <[email protected]>
1 parent bfe9739 commit e46a462

File tree

4 files changed

+18
-6
lines changed

4 files changed

+18
-6
lines changed

example/src/main/java/eu/webeid/example/config/ApplicationConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242

4343
@Configuration
4444
@EnableWebSecurity
45-
@EnableMethodSecurity(securedEnabled = true, jsr250Enabled = true)
45+
@EnableMethodSecurity(securedEnabled = true)
4646
public class ApplicationConfiguration implements WebMvcConfigurer {
4747
final AuthTokenDTOAuthenticationProvider authTokenDTOAuthenticationProvider;
4848
final SecurityContextRepository securityContextRepository;

example/src/main/java/eu/webeid/example/service/SigningService.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
import eu.webeid.example.service.dto.FileDTO;
3030
import eu.webeid.example.service.dto.SignatureDTO;
3131
import eu.webeid.security.certificate.CertificateData;
32+
import jakarta.servlet.http.HttpSession;
33+
import jakarta.xml.bind.DatatypeConverter;
3234
import org.apache.commons.io.FilenameUtils;
3335
import org.digidoc4j.Configuration;
3436
import org.digidoc4j.Container;
@@ -44,18 +46,20 @@
4446
import org.slf4j.LoggerFactory;
4547
import org.springframework.beans.factory.ObjectFactory;
4648
import org.springframework.core.io.ByteArrayResource;
49+
import org.springframework.security.access.annotation.Secured;
4750
import org.springframework.stereotype.Service;
4851

49-
import jakarta.servlet.http.HttpSession;
50-
import jakarta.xml.bind.DatatypeConverter;
5152
import java.io.IOException;
5253
import java.io.InputStream;
5354
import java.security.NoSuchAlgorithmException;
5455
import java.security.cert.CertificateException;
5556
import java.security.cert.X509Certificate;
5657
import java.util.Objects;
5758

59+
import static eu.webeid.example.security.AuthTokenDTOAuthenticationProvider.ROLE_USER;
60+
5861
@Service
62+
@Secured(ROLE_USER)
5963
public class SigningService {
6064

6165
private static final String SESSION_ATTR_FILE = "file-to-sign";

example/src/main/java/eu/webeid/example/web/WelcomeController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
import org.slf4j.Logger;
2626
import org.slf4j.LoggerFactory;
27-
import org.springframework.security.access.prepost.PreAuthorize;
27+
import org.springframework.security.access.annotation.Secured;
2828
import org.springframework.stereotype.Controller;
2929
import org.springframework.ui.Model;
3030
import org.springframework.web.bind.annotation.GetMapping;
@@ -35,10 +35,10 @@
3535
import static eu.webeid.example.security.AuthTokenDTOAuthenticationProvider.ROLE_USER;
3636

3737
@Controller
38+
@Secured(ROLE_USER)
3839
public class WelcomeController {
3940
private static final Logger LOG = LoggerFactory.getLogger(WelcomeController.class);
4041

41-
@PreAuthorize("hasAuthority('" + ROLE_USER + "')")
4242
@GetMapping("welcome")
4343
public String welcome(Model model, Principal principal) {
4444
Objects.requireNonNull(principal);

example/src/main/java/eu/webeid/example/web/rest/SigningController.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,22 @@
3232
import org.springframework.core.io.Resource;
3333
import org.springframework.http.HttpHeaders;
3434
import org.springframework.http.ResponseEntity;
35-
import org.springframework.web.bind.annotation.*;
35+
import org.springframework.security.access.annotation.Secured;
36+
import org.springframework.web.bind.annotation.GetMapping;
37+
import org.springframework.web.bind.annotation.PostMapping;
38+
import org.springframework.web.bind.annotation.RequestBody;
39+
import org.springframework.web.bind.annotation.RequestMapping;
40+
import org.springframework.web.bind.annotation.RestController;
3641

3742
import java.io.IOException;
3843
import java.security.NoSuchAlgorithmException;
3944
import java.security.cert.CertificateException;
4045

46+
import static eu.webeid.example.security.AuthTokenDTOAuthenticationProvider.ROLE_USER;
47+
4148
@RestController
4249
@RequestMapping("sign")
50+
@Secured(ROLE_USER)
4351
public class SigningController {
4452

4553
private final SigningService signingService;

0 commit comments

Comments
 (0)