[ 
https://issues.apache.org/jira/browse/SHIRO-360?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Benjamin Marwell updated SHIRO-360:
-----------------------------------
    Description: 
To customize how URL encoding in a web app occurs, we should have a 
{{UrlEncoder}} component. More specifically, this can be used to customize how 
{{JSESSIONID}} is appended to a URL (if at all, depending on security 
preferences).

The solution could be resolved as follows:

Create a new UrlEncoder interface:

 
{code:java}
public interface UrlEncoder {
  String encodeUrl(EncodeUrlRequest request);
 }
{code}
The EncodeUrlRequest:
{code:java}
public interface EncodeUrlRequest {
  String getUrl();
  HttpServletRequest getHttpServletRequest();
  HttpServletResponse getHttpServletResponse();
  ServletContext getServletContext();
 }{code}
Update WebEnvironment to have a new property:
{code:java}
UrlEncoder getUrlEncoder();{code}

  was:
To customize how URL encoding in a web app occurs, we should have a UrlEncoder 
component.  More specifically, this can be used to customize how JSESSIONID is 
appended to a URL (if at all, depending on security preferences).

The solution could be resolved as follows:

Create a new UrlEncoder interface:

public interface UrlEncoder {
    String encodeUrl(EncodeUrlRequest request);
}

The EncodeUrlRequest:

public interface EncodeUrlRequest {
    String getUrl();
    HttpServletRequest getHttpServletRequest();
    HttpServletResponse getHttpServletResponse();
    ServletContext getServletContext();
}

Update WebEnvironment to have a new property:

UrlEncoder getUrlEncoder();


> Create UrlEncoder
> -----------------
>
>                 Key: SHIRO-360
>                 URL: https://issues.apache.org/jira/browse/SHIRO-360
>             Project: Shiro
>          Issue Type: New Feature
>          Components: Web
>            Reporter: Les Hazlewood
>            Priority: Major
>             Fix For: 2.0.0
>
>
> To customize how URL encoding in a web app occurs, we should have a 
> {{UrlEncoder}} component. More specifically, this can be used to customize 
> how {{JSESSIONID}} is appended to a URL (if at all, depending on security 
> preferences).
> The solution could be resolved as follows:
> Create a new UrlEncoder interface:
>  
> {code:java}
> public interface UrlEncoder {
>   String encodeUrl(EncodeUrlRequest request);
>  }
> {code}
> The EncodeUrlRequest:
> {code:java}
> public interface EncodeUrlRequest {
>   String getUrl();
>   HttpServletRequest getHttpServletRequest();
>   HttpServletResponse getHttpServletResponse();
>   ServletContext getServletContext();
>  }{code}
> Update WebEnvironment to have a new property:
> {code:java}
> UrlEncoder getUrlEncoder();{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to