Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ao desabilitar módulo ainda é possível acessar suas funcionalidades #112

Open
vitoravelino opened this issue May 2, 2012 · 5 comments

Comments

@vitoravelino
Copy link

Descrição

Quando desabilito o módulo Serviços e tento acessar /services na mão, tudo funciona normalmente.

Como reproduzir

  • Ir em Preferências
  • Desabilitar o módulo Serviços
  • Acessar /services

O que deve ser esperado

Página de forbidden ou not found?

@daniloqueiroz
Copy link
Contributor

Talvez a melhor solução pra isso seja criar um interceptor que checa se o módulo está habilitado.

Agora minha dúvida, deveria retornar 403 ou 404? :p

@vitoravelino
Copy link
Author

@daniloqueiroz
Acredito que seja forbidden. Mas alguma luz aí após a ida pra gringa? Vide http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4

@daniloqueiroz
Copy link
Contributor

Hum... olhando sua referência, parece que 403 é exatamente o que queremos. Mas acho que em outros casos estamos usando o 403 de forma errada, quando deveria ser 401. E acho que é preciso checar no ctpx.

@vitoravelino
Copy link
Author

Verdade. Se puder comentar onde podemos estar usando o 403 ao invés do 401 seria bom. Isso seria no ctpx ou no figgo mesmo?

@daniloqueiroz
Copy link
Contributor

No ctpx... O controllers tem um método "forbidden(template)" e os AbstractAuthInterceptor chama ele. Deveria adicionar um "unauthorized" e alterar o interceptor pra chamar ele ao invés de unauthorized quando o usuário não tiver autenticado. Se o usuário tiver autenticado mas não tiver permissão, deve ser 403 mesmo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants