트랜잭션을 검사하기 위해 스캐 폴러 뷰로 이동하면 은 각 사용자가 자신의 트랜잭션 만보고 있음을 어떻게 알 수 있습니까?
당신은 제대로 작동하려면에 대한 스캐 폴딩 뷰를 수정해야 할거야 :
@Secured(['ROLE_USER'])
def list() {
def authenticatedUser = User.findByUsername(springSecurityService.principal.username)
def transactions = Transaction.findAllByUser(authenticatedUser)
[transactions: transactions]
}
위에만 허용됩니다 인증 된 사용자를 목록() 메소드를 액세스하고 모든 거래를 얻을 것이다 로그인 한 사용자.
반대로 모든 사용자가 명의 모든 사용자를 볼 수있는 사용자를 만들려면 어떻게해야합니까?
당신은 그들 모두를 볼 수있는 사용자를 생성하지 않습니다, 당신은 예를 들어, 그들 모두를 확인하기 위해 특정 사용자를하실 수 있습니다 컨트롤러의 방법을 만들 : 그런
@Secured(['ROLE_USER', 'ROLE_ADMIN'])
def list() {
def authenticatedUser = User.findByUsername(springSecurityService.principal.username)
def transactions = []
if (SpringSecurityUtils.ifAnyGranted('ROLE_ADMIN')) {
transactions = Transaction.list()
}else{
transactions = Transaction.findAllByUser(authenticatedUser)
}
[transactions: transactions]
}
뭔가를, 어쨌든. 필요에 따라 조정하십시오.
아니요, 스프링 시큐리티는 데이터를 자동으로 제한하지 않습니다. 적절한 쿼리를 만들어야합니다. – madth3