문제

작업을 호출하기 위해 현재 GSP 페이지에 의존하는 제어 로직을 구축하려고합니다. 현재 GSP 페이지를 식별하는 데 사용할 수있는 태그 또는 세션 메소드가 있습니까?

싱업 및 로그인을 제외한 모든 GSP에 대한 액세스를 제한하려고하므로 사용자가 다른 GSP를 열면 가입 페이지로 리디렉션되며 로그인 페이지로 이동할 수도 있습니다.

내가 구현하려는 논리는 current_page가 login.gsp 또는 singup.gsp 인 경우 와와 같습니다. 그런 다음 사용자도 문제없이 로그인 페이지로 이동할 수있는 곳으로 가입하기 위해 recrect // 다른 것을 수행하지 않습니다.

그리고 메인 레이아웃 에이 논리를 추가하여 모든 응용 프로그램 도메인에서 구현되도록합니다.

requestMapController 또는 URLMAppings를 사용 하여이 작업을 수행하는 대체 방법이 있는지 궁금합니다.

SpringMVC에 대한 경험이있는 사람은 누구나 Grails가 SpringMVC를 기반으로 구축되므로 표준 서블릿 프레임 워크 위에 구축됩니다!

참고 : ACEGI 플러그인을 사용하고 있습니다

비고 : 이러한 유형의 보안 메커니즘을 구현하여 어떻게 응용 프로그램이 SEO 친화적 (예 : Google 색인화)이 될 수 있습니까?

도움이 되었습니까?

해결책

편집하다: 죄송합니다. 질문을 오해했습니다. 나는 당신이 requestMaps의 대안을 찾고 있다고 생각했습니다. 그것이 내가 원래 제안한 이유입니다 주석으로 컨트롤러를 보호합니다.

RequestMaps를 사용하려면 다음을 수행 할 수 있습니다.

  1. 다음과 같이 보이는 새 요청 맵을 만듭니다.
    URL 패턴 = /login/**
    역할 = IS_AUTHENTICATED_ANONYMOUSLY

  2. 사이트의 나머지 부분에 대한 액세스를 제한하려면 모든 URL과 일치하는 다른 요청 맵 항목을 만듭니다.
    URL 패턴 = /*/**
    역할 = ROLE_USER (당신은 당신이 좋아하는 다른 역할을 사용할 수 있습니다)

IS_AUTHENTICATED_ANONYMOUSLY 누구나 일치하는 URL에 액세스 할 수 있음을 의미합니다. 첫 번째 규칙은 더 구체적이므로 두 번째 및보다 일반적인 규칙을 덮어 써야합니다.

당신은 볼 수 있습니다 acegisecurity 플러그인 - 보안 URL 자세한 내용은.

사이트의 SEO와 관련하여. AFAIK 검색 엔진은 인증이 필요한 사이트에 액세스 할 수 없습니다. 그렇기 때문에 전문가와 같은 사이트가 사용되는 이유입니다 교활한 속임수 Google에서 인덱스를 얻습니다.

익명의 사용자에게 액세스를 읽을 수 있도록 선택할 수 있습니다. 이를 통해 귀하의 사이트는 검색 엔진 봇으로 인덱싱 될 수 있습니다.

이게 도움이 되길 바란다!

다른 팁

당신은 이것을 읽어야합니다 : 링크 텍스트

ACEGI 플러그인을 사용한 자습서 : 링크 텍스트

후자는 내가 갈 길입니다. 역할을 설정하고 "페이지"및 URL을 역할별로 확보 할 수 있습니다. 또한 사용자를 만들고 역할에 할당하는 방법도 포함되어 있습니다.

Acegi Grails 플러그인을 설치하려면 다음을 수행하십시오. grails install-plugin acegi

스프링 보안 플러그인이 필요합니다. 이를 수행하는 가장 좋은 방법은 GSP 내에있는 것이 아니라 모든 웹 요청에 필터를 사용하는 것입니다. 그것은 당신에게 requestMaps와 urlmappings grailsnewbie를 제공합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top