Package org.springframework.security.cas.web.authentication

# Class ServiceAuthenticationDetailsSource

java.lang.Object
org.springframework.security.cas.web.authentication.ServiceAuthenticationDetailsSource

All Implemented Interfaces:
  `org.springframework.security.authentication.AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest,ServiceAuthenticationDetails>`

public class ServiceAuthenticationDetailsSource extends Object implements org.springframework.security.authentication.AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest,ServiceAuthenticationDetails>
The `AuthenticationDetailsSource` that is set on the `CasAuthenticationFilter` should return a value that implements `ServiceAuthenticationDetails` if the application needs to authenticate dynamic service urls. The `ServiceAuthenticationDetailsSource#buildDetails(HttpServletRequest)` creates a default `ServiceAuthenticationDetails`.

## Constructor Summary

Constructors
Constructor
Description
`ServiceAuthenticationDetailsSource(ServiceProperties serviceProperties)`
Creates an implementation that uses the specified ServiceProperties and the default CAS artifactParameterName.
`ServiceAuthenticationDetailsSource(ServiceProperties serviceProperties, String artifactParameterName)`
Creates an implementation that uses the specified artifactParameterName

## Method Summary

Modifier and Type
Method
Description
`ServiceAuthenticationDetails`
`buildDetails(jakarta.servlet.http.HttpServletRequest context)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ServiceAuthenticationDetailsSource

public ServiceAuthenticationDetailsSource(ServiceProperties serviceProperties)
Creates an implementation that uses the specified ServiceProperties and the default CAS artifactParameterName.

Parameters:
  `serviceProperties` - The ServiceProperties to use to construct the serviceUrl.

### ServiceAuthenticationDetailsSource

public ServiceAuthenticationDetailsSource(ServiceProperties serviceProperties, String artifactParameterName)
Creates an implementation that uses the specified artifactParameterName

Parameters:
  `serviceProperties` - The ServiceProperties to use to construct the serviceUrl.
  `artifactParameterName` - the artifactParameterName that is removed from the current URL. The result becomes the service url. Cannot be null and cannot be an empty String.

## Method Details

### buildDetails

public ServiceAuthenticationDetails buildDetails(jakarta.servlet.http.HttpServletRequest context)

Specified by:
  `buildDetails` in interface `org.springframework.security.authentication.AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest,ServiceAuthenticationDetails>`
Parameters:
  `context` - the `HttpServletRequest` object.
Returns:
  the `ServiceAuthenticationDetails` containing information about the current request