All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.picketlink.common.PicketLinkLogger Maven / Gradle / Ivy

There is a newer version: 3.0.0.Beta2
Show newest version
/*
 *JBoss, Home of Professional Open Source
 *
 *Copyright 2013 Red Hat, Inc. and/or its affiliates.
 *
 *Licensed under the Apache License, Version 2.0 (the "License");
 *you may not use this file except in compliance with the License.
 *You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 *Unless required by applicable law or agreed to in writing, software
 *distributed under the License is distributed on an "AS IS" BASIS,
 *WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *See the License for the specific language governing permissions and
 *limitations under the License.
 */

package org.picketlink.common;


import org.picketlink.common.exceptions.ConfigurationException;
import org.picketlink.common.exceptions.ParsingException;
import org.picketlink.common.exceptions.ProcessingException;
import org.picketlink.common.exceptions.TrustKeyConfigurationException;
import org.picketlink.common.exceptions.TrustKeyProcessingException;
import org.picketlink.common.exceptions.fed.AssertionExpiredException;
import org.picketlink.common.exceptions.fed.IssueInstantMissingException;
import org.picketlink.common.exceptions.fed.IssuerNotTrustedException;
import org.picketlink.common.exceptions.fed.SignatureValidationException;
import org.picketlink.common.exceptions.fed.WSTrustException;
import org.w3c.dom.Element;

import javax.security.auth.login.LoginException;
import javax.xml.crypto.dsig.XMLSignatureException;
import javax.xml.stream.Location;
import javax.xml.ws.WebServiceException;
import java.io.IOException;
import java.security.GeneralSecurityException;

/**
 * 

This interface acts as a Log Facade for PicketLink, from which exceptions and messages should be created or * logged.

As PicketLink supports multiple containers and its versions, the main objective of this interface is * to abstract the logging aspects from the code and provide different logging implementations for each supported * binding/container.

* * @author Pedro Silva * @see {@link PicketLinkLoggerFactory} */ public interface PicketLinkLogger { /** *

Creates an {@link IllegalArgumentException} for null arguments.

* * @param argument * * @return */ IllegalArgumentException nullArgumentError(String argument); /** *

Creates an {@link IllegalArgumentException} for arguments that should not be the same.

* * @param string * * @return */ IllegalArgumentException shouldNotBeTheSameError(String string); /** *

Creates an {@link ProcessingException} for resources that are not found.

* * @param resource * * @return */ ProcessingException resourceNotFound(String resource); /** *

Creates an {@link ProcessingException} for generics processing errors.

* * @param message * @param t * * @return */ ProcessingException processingError(Throwable t); /** *

Creates an {@link RuntimeException} for not supported types.

* * @param name * * @return */ RuntimeException unsupportedType(String name); /** *

Creates a {@link ProcessingException} for exceptions raised during signature processing.

* * @param e * * @return */ XMLSignatureException signatureError(Throwable e); /** *

Creates a {@link RuntimeException} for null values.

* * @param nullValue * * @return */ RuntimeException nullValueError(String nullValue); /** *

Creates a {@link RuntimeException} for not implemented methods or features.

* * @param string * * @return */ RuntimeException notImplementedYet(String string); /** *

Creates a {@link IllegalStateException} for the case the Audit Manager is null.

* * @return */ IllegalStateException auditNullAuditManager(); /** *

Indicates if the logging level is set to INFO.

* * @return */ boolean isInfoEnabled(); /** *

Logs a PicketLink Audit Event.

* * @param auditEvent */ void auditEvent(String auditEvent); /** *

Creates a {@link RuntimeException} for missing values.

* * @param string * * @return */ RuntimeException injectedValueMissing(String value); /**

Logs a message during the KeyStore setup.

*/ void keyStoreSetup(); /** *

Creates a {@link IllegalStateException} for the case where the KeyStore is null.

* * @return */ IllegalStateException keyStoreNullStore(); /** *

Logs a message for the cases where no public key was found for a given alias.

* * @param alias */ void keyStoreNullPublicKeyForAlias(String alias); /** *

Creates a {@link TrustKeyConfigurationException} for exceptions raised during the KeyStore configuration.

* * @param t * * @return */ TrustKeyConfigurationException keyStoreConfigurationError(Throwable t); /** *

Creates a {@link TrustKeyConfigurationException} for exceptions raised during the KeyStore processing.

* * @param t * * @return */ TrustKeyProcessingException keyStoreProcessingError(Throwable t); /** * @param domain * * @return */ IllegalStateException keyStoreMissingDomainAlias(String domain); /** *

Creates a {@link RuntimeException} for the case where the signing key password is null.

* * @return */ RuntimeException keyStoreNullSigningKeyPass(); RuntimeException keyStoreNullEncryptionKeyPass(); /** *

Creates a {@link RuntimeException} for the case where key store are not located.

* * @param keyStore * * @return */ RuntimeException keyStoreNotLocated(String keyStore); /** *

Creates a {@link IllegalStateException} for the case where the alias is null.

* * @return */ IllegalStateException keyStoreNullAlias(); /** *

Creates a {@link RuntimeException} for the case where parser founds a unknown end element.

* * @param endElementName * * @return */ RuntimeException parserUnknownEndElement(String endElementName); /** * @param tag * @param location * * @return */ RuntimeException parserUnknownTag(String tag, Location location); /** * @param string * * @return */ ParsingException parserRequiredAttribute(String string); /** * @param elementName * @param location * * @return */ RuntimeException parserUnknownStartElement(String elementName, Location location); /** @return */ IllegalStateException parserNullStartElement(); /** * @param xsiTypeValue * * @return */ ParsingException parserUnknownXSI(String xsiTypeValue); /** * @param string * * @return */ ParsingException parserExpectedEndTag(String tagName); /** * @param e * * @return */ ParsingException parserException(Throwable t); /** * @param string * * @return */ ParsingException parserExpectedTextValue(String string); /** * @param expectedXsi * * @return */ RuntimeException parserExpectedXSI(String expectedXsi); /** * @param tag * @param foundElementTag * * @return */ RuntimeException parserExpectedTag(String tag, String foundElementTag); /** * @param elementName * * @return */ RuntimeException parserFailed(String elementName); /** @return */ ParsingException parserUnableParsingNullToken(); /** * @param t * * @return */ ParsingException parserError(Throwable t); /** * @param e * * @return */ RuntimeException xacmlPDPMessageProcessingError(Throwable t); /** * @param policyConfigFileName * * @return */ IllegalStateException fileNotLocated(String policyConfigFileName); /** * @param string * * @return */ IllegalStateException optionNotSet(String option); /** * */ void stsTokenRegistryNotSpecified(); /** @param tokenRegistryOption */ void stsTokenRegistryInvalidType(String tokenRegistryOption); /** * */ void stsTokenRegistryInstantiationError(); /** * */ void stsRevocationRegistryNotSpecified(); /** @param registryOption */ void stsRevocationRegistryInvalidType(String registryOption); /** * */ void stsRevocationRegistryInstantiationError(); /** @return */ ProcessingException samlAssertionExpiredError(); /** @return */ ProcessingException assertionInvalidError(); /** * @param name * * @return */ RuntimeException writerUnknownTypeError(String name); /** * @param string * * @return */ ProcessingException writerNullValueError(String value); /** * @param value * * @return */ RuntimeException writerUnsupportedAttributeValueError(String value); /** @return */ IllegalArgumentException issuerInfoMissingStatusCodeError(); /** * @param fqn * * @return */ ProcessingException classNotLoadedError(String fqn); /** * @param fqn * @param e * * @return */ ProcessingException couldNotCreateInstance(String fqn, Throwable t); /** * @param property * * @return */ RuntimeException systemPropertyMissingError(String property); /** @param t */ void samlMetaDataIdentityProviderLoadingError(Throwable t); /** @param t */ void samlMetaDataServiceProviderLoadingError(Throwable t); /** @param t */ void signatureAssertionValidationError(Throwable t); /** @param id */ void samlAssertionExpired(String id); /** * @param attrValue * * @return */ RuntimeException unknownObjectType(Object attrValue); /** * @param e * * @return */ ConfigurationException configurationError(Throwable t); /** @param message */ void trace(String message); /** * @param string * @param t */ void trace(String message, Throwable t); /** * @param algo * * @return */ RuntimeException signatureUnknownAlgo(String algo); /** * @param message * * @return */ IllegalArgumentException invalidArgumentError(String message); /** * @param configuration * @param protocolContext * * @return */ ProcessingException stsNoTokenProviderError(String configuration, String protocolContext); /** @param message */ void debug(String message); /** @param fileName */ void stsConfigurationFileNotFoundTCL(String fileName); /** @param fileName */ void stsConfigurationFileNotFoundClassLoader(String fileName); /** @param fileName */ void stsUsingDefaultConfiguration(String fileName); /** @param fileName */ void stsConfigurationFileLoaded(String fileName); /** * @param t * * @return */ ConfigurationException stsConfigurationFileParsingError(Throwable t); /** * @param message * * @return */ IOException notSerializableError(String message); /** * */ void trustKeyManagerCreationError(Throwable t); /** @param message */ void info(String message); /** @param string */ void warn(String message); /** @param message */ void error(String message); /** @param t */ void xmlCouldNotGetSchema(Throwable t); /** @return */ boolean isTraceEnabled(); /** @return */ boolean isDebugEnabled(); /** * @param name * @param t */ void jceProviderCouldNotBeLoaded(String name, Throwable t); /** @return */ ProcessingException writerInvalidKeyInfoNullContentError(); /** * @param first * @param second * * @return */ RuntimeException notEqualError(String first, String second); /** * @param message * * @return */ IllegalArgumentException wrongTypeError(String message); /** * @param certAlgo * * @return */ RuntimeException encryptUnknownAlgoError(String certAlgo); /** * @param element * * @return */ IllegalStateException domMissingDocElementError(String element); /** * @param element * * @return */ IllegalStateException domMissingElementError(String element); /** @return */ WebServiceException stsWSInvalidTokenRequestError(); /** * @param t * * @return */ WebServiceException stsWSError(Throwable t); /** * @param t * * @return */ WebServiceException stsWSConfigurationError(Throwable t); /** * @param requestType * * @return */ WSTrustException stsWSInvalidRequestTypeError(String requestType); /** * @param t * * @return */ WebServiceException stsWSHandlingTokenRequestError(Throwable t); /** * @param t * * @return */ WebServiceException stsWSResponseWritingError(Throwable t); /** * @param t * * @return */ RuntimeException stsUnableToConstructKeyManagerError(Throwable t); /** * @param serviceName * @param t * * @return */ RuntimeException stsPublicKeyError(String serviceName, Throwable t); /** * @param t * * @return */ RuntimeException stsSigningKeyPairError(Throwable t); /** * @param t * * @return */ RuntimeException stsPublicKeyCertError(Throwable t); /** * */ void stsTokenTimeoutNotSpecified(); /** * @param t * * @return */ WSTrustException wsTrustCombinedSecretKeyError(Throwable t); /** @return */ WSTrustException wsTrustClientPublicKeyError(); /** * @param t * * @return */ WSTrustException stsError(Throwable t); /** * @param message * @param t * * @return */ XMLSignatureException signatureInvalidError(String message, Throwable t); /** * */ void stsSecurityTokenSignatureNotVerified(); /** * @param e * * @return */ RuntimeException encryptProcessError(Throwable t); /** * */ void stsSecurityTokenShouldBeEncrypted(); /** * @param password * * @return */ RuntimeException unableToDecodePasswordError(String password); /** * @param configFile * * @return */ IllegalStateException couldNotLoadProperties(String configFile); /** * @param t * * @return */ WSTrustException stsKeyInfoTypeCreationError(Throwable t); /** * */ void stsSecretKeyNotEncrypted(); /** @return */ LoginException authCouldNotIssueSAMLToken(); /** * @param t * * @return */ LoginException authLoginError(Throwable t); /** * @param e * * @return */ IllegalStateException authCouldNotCreateWSTrustClient(Throwable t); /** @param id */ void samlAssertionWithoutExpiration(String id); /** * @param token * * @return */ LoginException authCouldNotValidateSAMLToken(Element token); /** @return */ LoginException authCouldNotLocateSecurityToken(); /** @return */ ProcessingException wsTrustNullCancelTargetError(); /** * @param t * * @return */ ProcessingException samlAssertionMarshallError(Throwable t); /** @return */ ProcessingException wsTrustNullRenewTargetError(); /** * @param t * * @return */ ProcessingException samlAssertionUnmarshallError(Throwable t); /** @return */ ProcessingException samlAssertionRevokedCouldNotRenew(String id); /** @return */ ProcessingException wsTrustNullValidationTargetError(); /** @param attributeProviderClassName */ void stsWrongAttributeProviderTypeNotInstalled(String attributeProviderClassName); /** @param t */ void attributeProviderInstationError(Throwable t); /** @param nodeAsString */ void samlAssertion(String nodeAsString); /** * @param dce * * @return */ RuntimeException wsTrustUnableToGetDataTypeFactory(Throwable t); /** @return */ ProcessingException wsTrustValidationStatusCodeMissing(); /** @param activeSessionCount */ void samlIdentityServerActiveSessionCount(int activeSessionCount); /** * @param id * @param activeSessionCount */ void samlIdentityServerSessionCreated(String id, int activeSessionCount); /** * @param id * @param activeSessionCount */ void samlIdentityServerSessionDestroyed(String id, int activeSessionCount); /** * @param name * * @return */ RuntimeException unknowCredentialType(String name); /** @param t */ void samlHandlerRoleGeneratorSetupError(Throwable t); /** @return */ RuntimeException samlHandlerAssertionNotFound(); /** @return */ ProcessingException samlHandlerAuthnRequestIsNull(); /** @param t */ void samlHandlerAuthenticationError(Throwable t); /** @return */ IllegalArgumentException samlHandlerNoAssertionFromIDP(); /** @return */ ProcessingException samlHandlerNullEncryptedAssertion(); /** @return */ SecurityException samlHandlerIDPAuthenticationFailedError(); /** * @param aee * * @return */ ProcessingException assertionExpiredError(AssertionExpiredException aee); /** * @param attrValue * * @return */ RuntimeException unsupportedRoleType(Object attrValue); /** * @param inResponseTo * @param authnRequestId */ void samlHandlerFailedInResponseToVerification(String inResponseTo, String authnRequestId); /** @return */ ProcessingException samlHandlerFailedInResponseToVerificarionError(); /** * @param issuer * * @return */ IssuerNotTrustedException samlIssuerNotTrustedError(String issuer); /** * @param e * * @return */ IssuerNotTrustedException samlIssuerNotTrustedException(Throwable t); /** @return */ ConfigurationException samlHandlerTrustElementMissingError(); /** @return */ ProcessingException samlHandlerIdentityServerNotFoundError(); /** @return */ ProcessingException samlHandlerPrincipalNotFoundError(); /** * */ void samlHandlerKeyPairNotFound(); /** @return */ ProcessingException samlHandlerKeyPairNotFoundError(); /** @param t */ void samlHandlerErrorSigningRedirectBindingMessage(Throwable t); /** * @param t * * @return */ RuntimeException samlHandlerSigningRedirectBindingMessageError(Throwable t); /** @return */ SignatureValidationException samlHandlerSignatureValidationFailed(); /** @param t */ void samlHandlerErrorValidatingSignature(Throwable t); /** @return */ ProcessingException samlHandlerInvalidSignatureError(); /** @return */ ProcessingException samlHandlerSignatureNotPresentError(); /** * @param t * * @return */ ProcessingException samlHandlerSignatureValidationError(Throwable t); /** @param t */ void error(Throwable t); /** * @param t * * @return */ RuntimeException samlHandlerChainProcessingError(Throwable t); /** @return */ TrustKeyConfigurationException trustKeyManagerMissing(); /** @param rte */ void samlBase64DecodingError(Throwable t); /** @param t */ void samlParsingError(Throwable t); /** @param t */ void trace(Throwable t); /** * */ void mappingContextNull(); /** @param t */ void attributeManagerError(Throwable t); /** * */ void couldNotObtainSecurityContext(); /** * @param t * * @return */ LoginException authFailedToCreatePrincipal(Throwable t); /** * @param class1 * * @return */ LoginException authSharedCredentialIsNotSAMLCredential(String className); /** @return */ LoginException authSTSConfigFileNotFound(); /** * @param t * * @return */ LoginException authErrorHandlingCallback(Throwable t); /** @return */ LoginException authInvalidSAMLAssertionBySTS(); /** * @param t * * @return */ LoginException authAssertionValidationError(Throwable t); /** * @param t * * @return */ LoginException authFailedToParseSAMLAssertion(Throwable t); /** @param t */ void samlAssertionPasingFailed(Throwable t); LoginException authNullKeyStoreFromSecurityDomainError(String name); LoginException authNullKeyStoreAliasFromSecurityDomainError(String name); LoginException authNoCertificateFoundForAliasError(String alias, String name); LoginException authSAMLInvalidSignatureError(); LoginException authSAMLAssertionExpiredError(); /** @param t */ void authSAMLAssertionIssuingFailed(Throwable t); /** @param t */ void jbossWSUnableToCreateBinaryToken(Throwable t); /** * */ void jbossWSUnableToCreateSecurityToken(); /** @param ignore */ void jbossWSUnableToWriteSOAPMessage(Throwable t); /** @return */ RuntimeException jbossWSUnableToLoadJBossWSSEConfigError(); /** @return */ RuntimeException jbossWSAuthorizationFailed(); /** @param t */ void jbossWSErrorGettingOperationName(Throwable t); /** @return */ LoginException authSAMLCredentialNotAvailable(); /** * @param token * @param t * * @return */ RuntimeException authUnableToInstantiateHandler(String token, Throwable t); /** * @param e1 * * @return */ RuntimeException jbossWSUnableToCreateSSLSocketFactory(Throwable t); /** @return */ RuntimeException jbossWSUnableToFindSSLSocketFactory(); /** @return */ RuntimeException authUnableToGetIdentityFromSubject(); /** @return */ RuntimeException authSAMLAssertionNullOrEmpty(); /** @return */ ProcessingException jbossWSUncheckedAndRolesCannotBeTogether(); /** @param t */ void samlIDPHandlingSAML11Error(Throwable t); /** @return */ GeneralSecurityException samlIDPValidationCheckFailed(); /** @param t */ void samlIDPRequestProcessingError(Throwable t); /** @param t */ void samlIDPUnableToSetParticipantStackUsingDefault(Throwable t); /** @param t */ void samlHandlerConfigurationError(Throwable t); /** @param canonicalizationMethod */ void samlIDPSettingCanonicalizationMethod(String canonicalizationMethod); /** * @param t * * @return */ RuntimeException samlIDPConfigurationError(Throwable t); /** * @param configFile * * @return */ RuntimeException configurationFileMissing(String configFile); /** * */ void samlIDPInstallingDefaultSTSConfig(); void samlSPFallingBackToLocalFormAuthentication(); /** * @param ex * * @return */ IOException unableLocalAuthentication(Throwable t); /** * */ void samlSPUnableToGetIDPDescriptorFromMetadata(); /** * @param t * * @return */ RuntimeException samlSPConfigurationError(Throwable t); /** @param canonicalizationMethod */ void samlSPSettingCanonicalizationMethod(String canonicalizationMethod); /** @param logOutPage */ void samlSPCouldNotDispatchToLogoutPage(String logOutPage); /** *

Logs the implementation being used to log messages and exceptions.

* * @param name */ void usingLoggerImplementation(String className); /** * */ void samlResponseFromIDPParsingFailed(); /** * @param t * * @return */ ConfigurationException auditSecurityDomainNotFound(Throwable t); /** * @param location * @param t * * @return */ ConfigurationException auditAuditManagerNotFound(String location, Throwable t); /** @return */ IssueInstantMissingException samlIssueInstantMissingError(); /** * @param response * * @return */ RuntimeException samlSPResponseNotCatalinaResponseError(Object response); /** @param t */ void samlLogoutError(Throwable t); /** @param t */ void samlErrorPageForwardError(String errorPage, Throwable t); /** @param t */ void samlSPHandleRequestError(Throwable t); /** * @param t * * @return */ IOException samlSPProcessingExceptionError(Throwable t); /** @return */ IllegalArgumentException samlInvalidProtocolBinding(); /** @return */ IllegalStateException samlHandlerServiceProviderConfigNotFound(); /** * */ void samlSecurityTokenAlreadyPersisted(String id); /** @param id */ void samlSecurityTokenNotFoundInRegistry(String id); IllegalArgumentException samlMetaDataFailedToCreateCacheDuration(String timeValue); ConfigurationException samlMetaDataNoIdentityProviderDefined(); ConfigurationException samlMetaDataNoServiceProviderDefined(); ConfigurationException securityDomainNotFound(); void authenticationManagerError(ConfigurationException e); void authorizationManagerError(ConfigurationException e); IllegalStateException jbdcInitializationError(Throwable throwable); RuntimeException errorUnmarshallingToken(Throwable e); RuntimeException runtimeException(String msg, Throwable e); IllegalStateException datasourceIsNull(); IllegalArgumentException cannotParseParameterValue(String parameter, Throwable e); RuntimeException cannotGetFreeClientPoolKey(String key); RuntimeException cannotGetSTSConfigByKey(String key); RuntimeException cannotGetUsedClientsByKey(String key); RuntimeException removingNonExistingClientFromUsedClientsByKey(String key); RuntimeException freePoolAlreadyContainsGivenKey(String key); RuntimeException maximumNumberOfClientsReachedforPool(String max); RuntimeException cannotSetMaxPoolSizeToNegative(String max); RuntimeException parserFeatureNotSupported(String feature); ProcessingException samlAssertionWrongAudience(String serviceURL); /** * Log exception raised when key closing store input stream * * @param t */ void exceptionWhenClosingKeyStoreInputStreamWarning(Throwable t); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy