# Uses of Class
net.shibboleth.idp.profile.AbstractProfileAction

Packages that use AbstractProfileAction
Package
Description
net.shibboleth.idp.admin.impl
Implementation classes for administrative profiles.
net.shibboleth.idp.authn
APIs related to the authentication of a subject.
net.shibboleth.idp.authn.impl
Implementation of various authentication actions.
net.shibboleth.idp.authn.proxy.impl
Classes implementing proxied authentication flows.
net.shibboleth.idp.authn.revocation.impl
Predicates related to authentication.
net.shibboleth.idp.cas.flow.impl
CAS protocol flow implementations.
net.shibboleth.idp.consent.flow.ar.impl
Actions and flow descriptors related to attribute release consent.
net.shibboleth.idp.consent.flow.impl
Actions and flow descriptors related to consent.
net.shibboleth.idp.consent.flow.storage.impl
Actions related to consent storage.
net.shibboleth.idp.profile
Common APIs for handling profile requests.
net.shibboleth.idp.profile.audit.impl
Audit implementation classes.
net.shibboleth.idp.profile.impl
Implementations of various profile actions.
net.shibboleth.idp.profile.interceptor
Classes supporting profile interceptor machinery.
net.shibboleth.idp.profile.interceptor.impl
Implementation of a profile interceptor flow which executes other flows.
net.shibboleth.idp.saml.audit.impl
Classes implementing SAML-specific audit log behavior.
net.shibboleth.idp.saml.profile.impl
Actions common to SAML 1 and SAML 2 processing.
net.shibboleth.idp.saml.profile.testing
Testing utility classes for SAML profile code.
net.shibboleth.idp.saml.saml1.profile.impl
Profile processing actions related to SAML 1 messages.
net.shibboleth.idp.saml.saml2.profile.impl
Profile processing actions related to SAML 2 messages.
net.shibboleth.idp.saml.session.impl
Implementation classes for SAML-specific session functionality.
net.shibboleth.idp.session.impl
Implementations of session-related classes and interfaces.
net.shibboleth.idp.ui.impl
Implementation classes for information needed by the UI.

## Uses of AbstractProfileAction in net.shibboleth.idp.admin.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.admin.impl
Modifier and Type
Class
Description
`class`
`DoStorageOperation`
Action that implements a JSON REST API for accessing `StorageService` records.
`class`
`InitializeAdministrativeProfileContextTree`
An action that processes settings from a supplied `AdministrativeFlowDescriptor` to prepare the profile context tree for subsequent use by an administrative profile flow.
`class`
`OutputConfig`
Action that outputs the settings from the effective `ProfileConfiguration` and so on.
`class`
`OutputMetrics`
Action that outputs one or more `Metric` objects.
`class`
`UnlockDataSealers`
Action that sets keystore and key passwords for one or more DataSealer KeyStrategy objects based on query parameters.
`class`
`UnlockPrivateKeys`
Action that creates private key objects and injects them into existing `MutableCredential` objects.

## Uses of AbstractProfileAction in net.shibboleth.idp.authn

Subclasses of AbstractProfileAction in net.shibboleth.idp.authn
Modifier and Type
Class
Description
`class`
`AbstractAuthenticationAction`
A base class for authentication related actions.
`class`
`AbstractExtractionAction`
A base class for authentication actions that extract usernames for subsequent use.
`class`
`AbstractSubjectCanonicalizationAction`
A base class for subject canonicalization actions.
`class`
`AbstractValidationAction`
A base class for authentication related actions that validate credentials and produce an `AuthenticationResult`.

## Uses of AbstractProfileAction in net.shibboleth.idp.authn.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.authn.impl
Modifier and Type
Class
Description
`class`
`AbstractAuditingValidationAction`
Base class for validation actions that includes new audit logging support.
`class`
`AttributeSourcedSubjectCanonicalizationAction`
Deprecated, for removal: This API element is subject to removal in a future version.
`class`
`DoLockoutManagerOperation`
Action that implements a JSON REST API for the `AccountLockoutManager` interface.
`class`
`ExtractRemoteUser`
An action that extracts an asserted user identity from the incoming request, creates a `UsernameContext`, and attaches it to the `AuthenticationContext`.
`class`
`ExtractUserAgentAddress`
An action that extracts the user-agent's IP address from the incoming request, creates a `UserAgentContext`, and attaches it to the `AuthenticationContext`.
`class`
`ExtractUserAgentIdentifier`
An action that extracts the user-agent's identifier from the incoming request, creates a `UserAgentContext`, and attaches it to the `AuthenticationContext`.
`class`
`ExtractUsernamePasswordFromBasicAuth`
/** An action that extracts a username and password from the HTTP `HttpHeaders.AUTHORIZATION` header, creates a `UsernamePasswordContext`, and attaches it to the `AuthenticationContext`.
`class`
`ExtractUsernamePasswordFromFormRequest`
An action that extracts a username and password from an HTTP form body or query string, creates a `UsernamePasswordContext`, and attaches it to the `AuthenticationContext`.
`class`
`ExtractUsernamePasswordFromWSSToken`
An authentication stage that extracts a username/password from the WSS Username/Password attached to a SOAP message.
`class`
`ExtractX509CertificateFromRequest`
An action that extracts an X.509 certificate from the standard servlet request attribute, creates a `CertificateContext`, and attaches it to the `AuthenticationContext`.
`class`
`FilterFlowsByForcedAuthn`
An authentication action that filters out potential authentication flows if the request requires forced authentication or max age behavior and the flows don't support forced authentication.
`class`
`FilterFlowsByNonBrowserSupport`
An authentication action that filters out potential authentication flows if the request requires non-browser support and the flows require a browser.
`class`
`FinalizeAuthentication`
An authentication action that runs after a completed authentication flow (or the reuse of an active result) and transfers information from other contexts into a `SubjectContext` child of the `ProfileRequestContext`.
`class`
`FinalizeMultiFactorAuthentication`
An authentication action that completes MFA by producing a final `AuthenticationResult` out of whatever constituent parts and pieces exist, by means of an overridable function, storing it in the `AuthenticationContext` and preparing a fresh `SubjectCanonicalizationContext` to operate on.
`class`
`InitializeRequestedPrincipalContext`
An action that creates an `RequestedPrincipalContext` and attaches it to the current `AuthenticationContext`, if the profile request context contains a `RelyingPartyContext` with an `AuthenticationProfileConfiguration` containing one or more default authentication methods.
`class`
`PopulateAuthenticationContext`
An action that populates an `AuthenticationContext` with the `AuthenticationFlowDescriptor` objects configured into the IdP, potential flows filtered by flow IDs from a lookup function.
`class`
`PopulateMultiFactorAuthenticationContext`
An action that creates and populates a `MultiFactorAuthenticationContext` with the set of transition rules to use for coordinating activity, the executing `AuthenticationFlowDescriptor` and with any active "factors" found, if an active result from the MFA flow is present in the `AuthenticationContext`.
`class`
`PopulateSubjectCanonicalizationContext`
An action that populates a `SubjectCanonicalizationContext` with the `SubjectCanonicalizationFlowDescriptor` objects configured into the IdP, optionally along with the actual descriptor IDs to try in a particular order.
`class`
`PrePopulateUsername`
An action to populate a username into a cleared `UsernamePasswordContext`, either from a form submission, a cookie, or an existing session to "prime" the login view.
`class`
`PreserveAuthenticationFlowState`
An action that extracts configured parameters from a servlet request and populates `AuthenticationContext.getAuthenticationStateMap()` with the data.
`class`
`SelectAuthenticationFlow`
An authentication action that selects an authentication flow to invoke, or re-uses an existing result for SSO.
`class`
`SelectSubjectCanonicalizationFlow`
A canonicalization action that selects a canonicalization flow to invoke.
`class`
`TransitionMultiFactorAuthentication`
An authentication action that acts as the driver regulating execution of transitions between MFA stages.
`class`
`ValidateCredentials`
An action that processes a list of `CredentialValidator` objects to produce an `AuthenticationResult`.
`class`
`ValidateExternalAuthentication`
An action that checks for an `ExternalAuthenticationContext` and directly produces an `AuthenticationResult` or records error state based on the contents.
`class`
`ValidateFunctionResult`
An action that executes a deployer-supplied function and produces an `AuthenticationResult` based on the function result.
`class`
`ValidateRemoteUser`
An action that checks for a `UsernameContext` and directly produces an `AuthenticationResult` based on that identity.
`class`
`ValidateUserAgentAddress`
An action that ensures that a user-agent address found within a `UserAgentContext` is within a given range and generates an `AuthenticationResult`.

## Uses of AbstractProfileAction in net.shibboleth.idp.authn.proxy.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.authn.proxy.impl
Modifier and Type
Class
Description
`class`
`ExtractDiscoveryResponse`
An action that extracts a discovery service result and copies it to the `AuthenticationContext`.
`final class`
`InitializeProxyProfileRequestContext`
Action that creates a new `ProfileRequestContext` via a creation strategy, and sets the profile and logging IDs, if provided.

## Uses of AbstractProfileAction in net.shibboleth.idp.authn.revocation.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.authn.revocation.impl
Modifier and Type
Class
Description
`class`
`DoRevocationCacheOperation`
Action that implements a JSON REST API for the `RevocationCache` interface.

## Uses of AbstractProfileAction in net.shibboleth.idp.cas.flow.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.cas.flow.impl
Modifier and Type
Class
Description
`class`
`AbstractCASProtocolAction<RequestType,ResponseType>`
Base class for CAS protocol actions.
`class`
`AbstractOutgoingSamlMessageAction`
Base class for all actions that build SAML `Response` messages for output.
`class`
`BuildAuthenticationContextAction`
Builds an authentication context from an incoming `ServiceTicketRequest` message.
`class`
`BuildProxyChainAction`
Action that builds the chain of visited proxies for a successful proxy ticket validation event.
`class`
`BuildRelyingPartyContextAction<RequestType,ResponseType>`
Creates the `RelyingPartyContext` as a child of the `ProfileRequestContext`.
`class`
`BuildSAMLMetadataContextAction<RequestType,ResponseType>`
Builds a `SAMLMetadataContext` child of `RelyingPartyContext` to facilitate relying party selection by group name.
`class`
`BuildSamlValidationFailureMessageAction`
Creates the SAML response message for failed ticket validation at the `/samlValidate` URI.
`class`
`BuildSamlValidationSuccessMessageAction`
Creates the SAML response message for successful ticket validation at the `/samlValidate` URI.
`class`
`CheckProxyAuthorizationAction<RequestType,ResponseType>`
Checks the current `ServiceContext` to determine whether the service/relying party is authorized to proxy.
`class`
`GrantProxyTicketAction`
Generates and stores a CAS protocol proxy ticket.
`class`
`GrantServiceTicketAction`
Generates and stores a CAS protocol service ticket.
`class`
`InitializeLoginAction`
Initializes the CAS protocol interaction at the `/login` URI.
`class`
`InitializeProxyAction`
Initializes the CAS protocol interaction at the `/proxy` URI.
`class`
`InitializeValidateAction`
Initializes the CAS protocol interaction at the `/login` URI.
`class`
`PopulateProtocolErrorAction<RequestType>`
Populates error information needed for protocol error messages.
`class`
`PrepareTicketValidationResponseAction`
Prepares `TicketValidationResponse` for use in CAS protocol response views.
`class`
`ProcessSamlMessageAction`
Processes the ticket validation request message from decoded SAML 1.1 message and request parameters.
`class`
`PublishProtocolMessageAction<RequestType,ResponseType>`
Action to publish the CAS protocol request or response messages, i.e.
`class`
`UpdateIdPSessionWithSPSessionAction<RequestType,ResponseType>`
Conditionally updates the `IdPSession` with a `CASSPSession` to support SLO.
`class`
`ValidateProxyCallbackAction`
Validates the proxy callback URL provided in the service ticket validation request and creates a PGT when the proxy callback is successfully authenticated.
`class`
`ValidateRenewAction`
Ensures that a service ticket validation request that specifies renew=true matches the renew flag on the ticket that is presented for validation.
`class`
`ValidateTicketAction`
CAS protocol service ticket validation action.
`class`
`WriteValidateResponseAction`
CAS 1.0 protocol response handler.

## Uses of AbstractProfileAction in net.shibboleth.idp.consent.flow.ar.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.consent.flow.ar.impl
Modifier and Type
Class
Description
`class`
`AbstractAttributeReleaseAction`
Base class for attribute release consent actions.
`class`
`InitializeAttributeReleaseContext`
Action that creates an `AttributeReleaseContext` and attaches it to the current `ProfileRequestContext`.
`class`
`PopulateAttributeReleaseContext`
Attribute consent action to populate the attribute consent context with the attributes for which consent should be obtained.
`class`
`ReleaseAttributes`
Attribute consent action which constrains the attributes released to those consented to.
`class`
`ValidatedExtractedConsent`
Consent action which validates extracted user input when per-attribute consent is not enabled.

## Uses of AbstractProfileAction in net.shibboleth.idp.consent.flow.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.consent.flow.impl
Modifier and Type
Class
Description
`class`
`AbstractConsentAction`
Base class for consent actions.
`class`
`ExtractConsent`
Consent action which extracts user input and updates current consent objects in the consent context accordingly.
`class`
`InitializeConsentContext`
Action that creates a `ConsentContext` and attaches it to the current `ProfileRequestContext`.
`class`
`PopulateConsentContext`
Consent action which populates the current consents of a consent context with the output value of a function whose input value is a profile request context.

## Uses of AbstractProfileAction in net.shibboleth.idp.consent.flow.storage.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.consent.flow.storage.impl
Modifier and Type
Class
Description
`class`
`AbstractConsentIndexedStorageAction`
Base class for consent actions which write to a `StorageService`.
`class`
`AbstractConsentStorageAction`
Base class for consent actions which interact with a `StorageService`.
`class`
`CreateGlobalConsentResult`
Consent action to create a consent result representing global consent to be stored in a storage service.
`class`
`CreateResult`
Consent action to create a consent result representing the result of a consent flow.
`class`
`ReadConsentFromStorage`
Consent action which reads consent records from storage and adds the serialized consent records to the consent context as previous consents.
`class`
`RevokeConsent`
Consent action which deletes a consent record from storage.
`class`
`UpdateCounter`
Consent action which maintains a storage record whose value is the current time in milliseconds.

## Uses of AbstractProfileAction in net.shibboleth.idp.profile

Subclasses of AbstractProfileAction in net.shibboleth.idp.profile
Modifier and Type
Class
Description
`class`
`ScriptedAction`
An action which calls out to a supplied script.

## Uses of AbstractProfileAction in net.shibboleth.idp.profile.audit.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.profile.audit.impl
Modifier and Type
Class
Description
`class`
`PopulateAuditContext`
Action that populates fields in an `AuditContext` using injected functions.
`class`
`WriteAuditLog`
Action that produces audit log entries based on an `AuditContext` and one or more formatting strings.

## Uses of AbstractProfileAction in net.shibboleth.idp.profile.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.profile.impl
Modifier and Type
Class
Description
`class`
`FilterAttributes`
Action that invokes the `AttributeFilter` for the current request.
`final class`
`InitializeProfileRequestContext`
Action that creates a new `ProfileRequestContext` and binds it to the current conversation under the `ProfileRequestContext.BINDING_KEY` key, and sets the profile and logging IDs, if provided.
`class`
`LogContextTree`
Spring Web Flow utility action for logging on DEBUG a representation of the current `ProfileRequestContext`.
`class`
`LogSpringContextInfo`
Spring Web Flow utility action for logging on DEBUG details about the current hierarchy of Spring `ApplicationContext` and the beans contained within each.
`class`
`PopulateSubjectContext`
An action that populates a principal name obtained from a lookup function into a `SubjectContext` child of the `ProfileRequestContext`.
`class`
`PopulateUserAgentContext`
An action that conditionally populates a `UserAgentContext` as a child of the `ProfileRequestContext`.
`class`
`RecordResponseComplete`
Action that records the "Response Complete" status on the external context if not done so already.
`class`
`ReloadServiceConfiguration`
Action that refreshes a `ReloadableService` manually.
`final class`
`ResolveAttributes`
Action that invokes the `AttributeResolver` for the current request.
`class`
`SelectProfileConfiguration`
Action that selects the `ProfileConfiguration` for the given request and sets it in the looked-up `RelyingPartyContext`.
`final class`
`SelectRelyingPartyConfiguration`
This action attempts to resolve a `RelyingPartyConfiguration` and adds it to the `RelyingPartyContext` that was looked up.
`class`
`WebFlowMessageHandlerAdaptor`
An `AbstractProfileAction` subclass that adapts an OpenSAML `MessageHandler` for execution in a Spring WebFlow environment.
`class`
`WebFlowProfileActionAdaptor`
Adaptor that wraps a `ProfileAction` with a Spring Web Flow compatible action implementation so that it can be executed as part of a flow.

## Uses of AbstractProfileAction in net.shibboleth.idp.profile.interceptor

Subclasses of AbstractProfileAction in net.shibboleth.idp.profile.interceptor
Modifier and Type
Class
Description
`class`
`AbstractProfileInterceptorAction`
A base class for profile interceptor actions.

## Uses of AbstractProfileAction in net.shibboleth.idp.profile.interceptor.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.profile.interceptor.impl
Modifier and Type
Class
Description
`class`
`FilterFlowsByNonBrowserSupport`
A profile interceptor action that filters out available interceptor flows if the request requires non-browser support and the flows require a browser.
`class`
`PopulateProfileInterceptorContext`
An profile interceptor action that populates a `ProfileInterceptorContext` with `ProfileInterceptorFlowDescriptor` objects based on flow IDs from a lookup function.
`class`
`SelectProfileInterceptorFlow`
A profile interceptor action that selects flows to invoke.
`class`
`WriteProfileInterceptorResultToStorage`
A profile interceptor action that writes a `ProfileInterceptorResult` to a `StorageService`.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.audit.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.audit.impl
Modifier and Type
Class
Description
`class`
`WriteFTICKSLog`
Action that produces F-TICKS log entries for successful SAML SSO responses.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.profile.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.profile.impl
Modifier and Type
Class
Description
`class`
`BaseAddAttributeStatementToAssertion<T extends SAMLObject>`
Base class for actions that encode an `AttributeContext` into a SAML attribute statement.
`class`
`BaseAddAuthenticationStatementToAssertion`
Base class for actions that encode authentication information into a SAML 1 or SAML 2 statement.
`class`
`ExtractSubjectFromRequest`
Action that extracts a SAML Subject from an inbound message, and prepares a `SubjectCanonicalizationContext` to process it into a principal identity.
`class`
`FinalizeSAMLSubjectCanonicalization`
An action that runs after a completed canonicalization of a SAML Subject and transfers information into a `SubjectContext` child of the `ProfileRequestContext`.
`class`
`InitializeAuthenticationContext`
An action that creates an `AuthenticationContext` and attaches it to the current `ProfileRequestContext`.
`class`
`InitializeOutboundMessageContext`
Action that adds an outbound `MessageContext` and related SAML contexts to the `ProfileRequestContext` based on the identity of a relying party accessed via a lookup strategy, by default an immediate child of the profile request context.
`class`
`InitializeOutboundMessageContextForError`
Action that prepares an outbound `MessageContext` and related SAML contexts in the event that they are not already prepared, to allow error responses to be generated in the case of synchronous bindings (i.e., SOAP).
`class`
`InitializeRelyingPartyContextFromSAMLPeer`
Action that adds a `RelyingPartyContext` to the current `ProfileRequestContext` tree via a creation function.
`class`
`PopulateBindingAndEndpointContexts`
Action that populates the outbound `SAMLBindingContext` and when appropriate the `SAMLEndpointContext` based on the inbound request.
`class`
`PopulateInboundMessageContextWithSAMLSelf`
Action that adds a `SAMLSelfEntityContext` to the inbound `MessageContext`
`class`
`ReloadMetadata`
Action that refreshes or clears a `MetadataResolver` manually.
`class`
`UpdateSAMLSelfEntityContext`
Action that updates inbound and/or outbound instances of `SAMLSelfEntityContext` based on the identity of a relying party accessed via a lookup strategy, by default an immediate child of the profile request context.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.profile.testing

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.profile.testing
Modifier and Type
Class
Description
`class`
`ActionTestSupportAction`
A Test {"link `Action`.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.saml1.profile.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.saml1.profile.impl
Modifier and Type
Class
Description
`class`
`AddAttributeStatementToAssertion`
Action that builds an `AttributeStatement` and adds it to an `Assertion` returned by a lookup strategy, by default in the `InOutOperationContext.getOutboundMessageContext()`.
`class`
`AddAuthenticationStatementToAssertion`
Action that builds an `AuthenticationStatement` and adds it to an `Assertion` returned by a lookup strategy, by default in the `InOutOperationContext.getOutboundMessageContext()`.
`class`
`FilterByQueriedAttributeDesignators`
Action that filters a set of attributes against the `AttributeDesignator` objects in an `AttributeQuery`.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.saml2.profile.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.saml2.profile.impl
Modifier and Type
Class
Description
`class`
`AddAttributeStatementToAssertion`
Action that builds an `AttributeStatement` and adds it to an `Assertion` returned by a lookup strategy, by default in the `InOutOperationContext.getOutboundMessageContext()`.
`class`
`AddAuthnRequest`
Action that creates an `AuthnRequest` and sets it as the message returned by `InOutOperationContext.getOutboundMessageContext()`.
`class`
`AddAuthnStatementToAssertion`
Action that builds an `AuthnStatement` and adds it to an `Assertion` returned by a lookup strategy, by default in the `InOutOperationContext.getOutboundMessageContext()`.
`class`
`ContinueSAMLAuthentication`
An action that checks for an `ExternalAuthenticationContext` for a signaled event via the `ExternalAuthenticationContext.getAuthnError()` method, and otherwise enforces the presence of an inbound SAML Response to process.
`class`
`EnforceDisallowedSSOFeatures`
An action that processes a SAML 2 `AuthnRequest` and blocks the use of any "simple" disallowed features.
`class`
`FilterByQueriedAttributes`
Action that filters a set of attributes against the `Attribute` objects in an `AttributeQuery`.
`class`
`MapRequestedAttributesInAttributeConsumingService`
Action that ensures that the attributes in the ACS (if any) are mapped.
`class`
`PopulateEncryptionParameters`
Action that resolves and populates `EncryptionParameters` on an `EncryptionContext` created/accessed via a lookup function, by default on a `RelyingPartyContext` child of the profile request context.
`class`
`PreProcessLogoutMessage`
Profile action that performs initial analysis of a `LogoutRequest` or `LogoutResponse` to dispatch it for subsequent processing.
`class`
`ProcessAssertionsForAuthentication`
Perform processing of a SAML 2 Response's Assertions that have been validated by earlier actions for use in finalization of SAML-based authentication by later actions.
`class`
`ProcessLogoutRequest`
Profile action that processes a `LogoutRequest` by resolving matching sessions, and destroys them, populating the associated `SPSession` objects (excepting the one initiating the logout) into a `LogoutContext`.
`class`
`ProcessRequestedAuthnContext`
An authentication action that processes the `RequestedAuthnContext` in a SAML 2 `AuthnRequest`, and populates a `RequestedPrincipalContext` with the corresponding information.
`class`
`SOAPLogoutRequest`
Profile action that propagates a prepared `LogoutRequest` message to an SP via the SOAP binding, encapsulating SOAP pipeline construction and execution.
`class`
`ValidateSAMLAuthentication`
An action that produces an `AuthenticationResult` based on an inbound SAML 2.0 SSO response.

## Uses of AbstractProfileAction in net.shibboleth.idp.saml.session.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.saml.session.impl
Modifier and Type
Class
Description
`class`
`PrepareInboundMessageContext`
Action that adds an inbound `MessageContext` and a `SAMLPeerEntityContext` to the `ProfileRequestContext` based on the identity of a relying party, by default from a `SAML2SPSession` found in a `LogoutPropagationContext`.

## Uses of AbstractProfileAction in net.shibboleth.idp.session.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.session.impl
Modifier and Type
Class
Description
`class`
`DestroySessions`
Profile action that destroys any `IdPSession`s found in a `LogoutContext`.
`class`
`DetectIdentitySwitch`
An authentication action that checks for a mismatch between an existing session's identity and the result of a newly canonicalized subject (from a `SubjectCanonicalizationContext`).
`class`
`ExtractActiveAuthenticationResults`
An authentication action that populates a `AuthenticationContext` with the active `AuthenticationResult` objects found in a `SessionContext` that is a direct child of the `ProfileRequestContext`.
`class`
`PopulateLogoutPropagationContext`
Profile action that creates a `LogoutPropagationContext` containing `SPSession` to be destroyed.
`class`
`PopulateMultiRPContextFromLogoutContext`
Profile action that populates a `MultiRelyingPartyContext` with the relying party information from a `LogoutContext`, and extends each `RelyingPartyContext` created with a `SAMLMetadataContext` based on metadata lookup.
`class`
`PopulateSessionContext`
A profile action that populates a `SessionContext` with an active, valid `IdPSession`.
`class`
`ProcessLogout`
Profile action that resolves an active session from the profile request, and records it, populating the associated `SPSession` objects into a `LogoutContext`.
`class`
`RestoreProfileRequestContextTree`
Restores specific portions of the context tree used during logout processing to enable reuse of logout propagation subflows during back channel logout.
`class`
`SaveLogoutContext`
Stores the `LogoutContext` in the servlet session to facilitate lookup by logout propagation flows.
`class`
`SaveProfileRequestContextTree`
Saves off specific portions of the context tree in use during logout processing to enable reuse of logout propagation subflows during back channel logout.
`class`
`SelectLogoutPropagationFlow`
A profile action that selects a logout propagation flow to invoke.
`class`
`UpdateSessionWithAuthenticationResult`
An authentication action that establishes a record of the `AuthenticationResult` in an `IdPSession` for the client, either by updating an existing session or creating a new one.
`class`
`UpdateSessionWithSPSession`
An action that establishes a record of an `SPSession` in an existing `IdPSession` for the client.

## Uses of AbstractProfileAction in net.shibboleth.idp.ui.impl

Subclasses of AbstractProfileAction in net.shibboleth.idp.ui.impl
Modifier and Type
Class
Description
`class`
`SetRPUIInformation`
Action to populate the `ProfileRequestContext` with a `RelyingPartyUIContext`.