@Service public class SAML2SPServiceImpl extends Object implements SAML2SPService
Modifier and Type | Field and Description |
---|---|
protected static org.slf4j.Logger |
LOG |
protected org.apache.cxf.jaxrs.ext.MessageContext |
messageContext |
protected static String |
OPTIONS_ALLOW |
protected SearchCondVisitor |
searchCondVisitor |
protected org.apache.cxf.jaxrs.ext.search.SearchContext |
searchContext |
protected javax.ws.rs.core.UriInfo |
uriInfo |
CRLF, DOUBLE_DASH, PARAM_ANYTYPE_KIND, PARAM_ANYTYPEKEY, PARAM_CONNID_PAGED_RESULTS_COOKIE, PARAM_DETAILS, PARAM_ENTITY_KEY, PARAM_FIQL, PARAM_MAX, PARAM_NOTIFICATION, PARAM_ORDERBY, PARAM_PAGE, PARAM_REALM, PARAM_RESOURCE, PARAM_SIZE, PARAM_USER
Constructor and Description |
---|
SAML2SPServiceImpl() |
Modifier and Type | Method and Description |
---|---|
protected javax.ws.rs.core.Response.ResponseBuilder |
applyPreference(ProvisioningResult<?> provisioningResult,
javax.ws.rs.core.Response.ResponseBuilder builder) |
protected <T extends BaseBean> |
buildPagedResult(List<T> list,
int page,
int size,
int totalCount)
Builds a paged result out of a list of items and additional information.
|
protected void |
checkETag(String etag) |
SAML2RequestTO |
createLoginRequest(String spEntityID,
String idpEntityID)
Generates SAML 2.0 authentication request for the IdP matching the provided entity ID.
|
SAML2RequestTO |
createLogoutRequest(String spEntityID)
Generates SAML 2.0 logout request for the IdP matching the requesting access token.
|
protected javax.ws.rs.core.Response |
createResponse(ProvisioningResult<?> provisioningResult)
Builds response to successful
create request, taking into account any Prefer header. |
protected String |
getActualKey(AnyDAO<?> dao,
String pretendingKey) |
javax.ws.rs.core.Response |
getMetadata(String spEntityID,
String urlContext)
Returns the XML metadata for the provided SAML 2.0 Service Provider.
|
protected List<OrderByClause> |
getOrderByClauses(String orderBy) |
protected Preference |
getPreference()
Reads
Prefer header from request and parses into a Preference instance. |
protected SearchCond |
getSearchCond(String fiql,
String realm) |
protected boolean |
isNullPriorityAsync() |
protected javax.ws.rs.core.Response |
modificationResponse(Object entity)
Builds response to successful modification request, taking into account any
Prefer header. |
SAML2LoginResponseTO |
validateLoginResponse(SAML2ReceivedResponseTO reponse)
Validates the received SAML 2.0 authentication response and creates JWT for the matching user, if found.
|
void |
validateLogoutResponse(SAML2ReceivedResponseTO response)
Validates the received SAML 2.0 logout response.
|
protected static final org.slf4j.Logger LOG
protected static final String OPTIONS_ALLOW
@Context protected javax.ws.rs.core.UriInfo uriInfo
@Context protected org.apache.cxf.jaxrs.ext.MessageContext messageContext
@Context protected org.apache.cxf.jaxrs.ext.search.SearchContext searchContext
@Autowired protected SearchCondVisitor searchCondVisitor
public javax.ws.rs.core.Response getMetadata(String spEntityID, String urlContext)
SAML2SPService
getMetadata
in interface SAML2SPService
spEntityID
- SAML 2.0 SP entity ID.urlContext
- SAML 2.0 SP agent URL contextpublic SAML2RequestTO createLoginRequest(String spEntityID, String idpEntityID)
SAML2SPService
createLoginRequest
in interface SAML2SPService
spEntityID
- SAML 2.0 SP entity ID.idpEntityID
- SAML 2.0 IdP entity ID.public SAML2LoginResponseTO validateLoginResponse(SAML2ReceivedResponseTO reponse)
SAML2SPService
validateLoginResponse
in interface SAML2SPService
reponse
- SAML response and relay statepublic SAML2RequestTO createLogoutRequest(String spEntityID)
SAML2SPService
createLogoutRequest
in interface SAML2SPService
spEntityID
- SAML 2.0 SP entity ID.public void validateLogoutResponse(SAML2ReceivedResponseTO response)
SAML2SPService
validateLogoutResponse
in interface SAML2SPService
response
- SAML response and relay stateprotected boolean isNullPriorityAsync()
protected Preference getPreference()
Prefer
header from request and parses into a Preference
instance.Preference
instance matching the passed Prefer
header,
or Preference.NONE
if missing.protected javax.ws.rs.core.Response.ResponseBuilder applyPreference(ProvisioningResult<?> provisioningResult, javax.ws.rs.core.Response.ResponseBuilder builder)
protected javax.ws.rs.core.Response createResponse(ProvisioningResult<?> provisioningResult)
create
request, taking into account any Prefer
header.provisioningResult
- the entity just createdcreate
requestprotected javax.ws.rs.core.Response modificationResponse(Object entity)
Prefer
header.entity
- the entity just modifiedprotected void checkETag(String etag)
protected SearchCond getSearchCond(String fiql, String realm)
protected List<OrderByClause> getOrderByClauses(String orderBy)
protected <T extends BaseBean> PagedResult<T> buildPagedResult(List<T> list, int page, int size, int totalCount)
T
- result typelist
- bare list of items to be returnedpage
- current pagesize
- requested sizetotalCount
- total result size (not considering pagination)Copyright © 2010–2023 The Apache Software Foundation. All rights reserved.