La auditoría de seguridad proporciona el seguimiento y archivado de sucesos
que se pueden auditar para las operaciones de tiempo de ejecución de los
servicios web. Cuando se habilita la auditoría de seguridad para los servicios
web, el programa de utilidad generador de sucesos recopila y registra
cronológicamente sucesos de firma, cifrado, seguridad, autenticación y delegación
en los registros de sucesos de auditoría. Los registros de sucesos de auditoría
se pueden analizar para identificar posibles infracciones de seguridad o
puntos débiles potenciales en la configuración de seguridad del entorno.
Se debe habilitar el subsistema de seguridad de auditoría para WebSphere Application Server para que el
generador de sucesos pueda recopilar registros de auditoría para el tiempo
de ejecución de seguridad de los servicios Web.
El registro de sucesos de seguridad auditables se
consigue mediante la habilitación del subsistema de auditoría
de seguridad. Para obtener más información sobre cómo habilitar la auditoría
de seguridad, lea el tema "Habilitación del subsistema de auditoría de
seguridad".
La auditoría de seguridad de servicios Web sólo está habilitada para el
tiempo de ejecución JAX-WS.
Se pueden producir varios sucesos de auditoría cuando se recibe un mensaje
SOAP.
Los datos de auditoría se recopilan durante varias operaciones de tiempo de ejecución
de seguridad de servicios Web, por ejemplo al validar la firma
digital de un mensaje SOAP, al descifrar el mensaje o al comprobar la
cabecera de seguridad de mensaje. Los datos de auditoría los almacene y gestiona
el generador de sucesos y se almacenan en registros de auditoría para
analizarlos posteriormente.
Los sucesos auditables para los servicios web incluyen:
Firma
Mientras se valida la firma digital de cada
parte de mensaje SOAP, se envía un suceso SECURITY_SIGNING al generador de
sucesos, junto con un resultado, que puede ser SUCCESS o
ERROR. También se envían los códigos de razón, VALID_SIGNATURE o INVALID_SIGNATURE. Se audita la integridad del mensaje, también con un suceso
SECURITY_SIGNING, con el resultado de SUCCESS o DENIED. Los códigos de razón
son INTEGRITY o INTEGRITY_BAD. La tabla siguiente resume los sucesos de firma:
Tabla 1. Sucesos de auditoría de firma. Utilice los registros de sucesos de auditoría de firma para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultados posibles |
Códigos de razón |
SECURITY_SIGNING (firma digital) |
SUCCESS
ERROR
|
VALID_SIGNATURE
INVALID_SIGNATURE
|
SECURITY_SIGNING (integridad) |
SUCCESS
DENIED
|
INTEGRITY
INTEGRITY_BAD
|
Si el resultado del suceso SECURITY_SIGNING es DENIED y el código de razón
es INTEGRITY_BAD, significa que al menos en una parte de mensaje, que
debe estar firmada por la política de seguridad, ha fallado la validación de firma.
Si el resultado del suceso SECURITY_SIGNING es ERROR y el código de razón
es INVALID_SIGNATURE, significa que ha fallado la validación de firma digital. Esto puede producir un código de razón INTEGRITY_BAD en el registro de auditoría,
en función de que la política de seguridad necesite la firma digital o no.
Cifrado
La auditoría de cifrado se realiza en dos
partes: primera, se procesan las partes cifradas del mensaje SOAP y,
a continuación, se audita la confidencialidad del mensaje. Para auditar cada
parte cifrada del mensaje, se envía un suceso SECURITY_ENCRYPTION.
Se crea un registro de sucesos sólo si el resultado del suceso es ERROR,
lo que significa que se encuentra una excepción. El código de razón
es DECRYPTION_ERROR.
A continuación, se comprueba la confidencialidad del mensaje con otro suceso
SECURITY_ENCRYPTION, que tiene los posibles resultados de
SUCCESS o DENIED. Los códigos de razón de este suceso son
CONFIDENTIALITY o CONFIDENTIALITY_BAD. La tabla siguiente resume los sucesos
de cifrado:
Tabla 2. Sucesos de auditoría de cifrado. Utilice los registros de sucesos de auditoría de cifrado para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultados posibles |
Códigos de razón |
SECURITY_ENCRYPTION (partes de mensaje cifradas) |
ERROR |
DECRYPTION_ERROR |
SECURITY_ENCRYPTION (confidencialidad) |
SUCCESS
DENIED
|
CONFIDENTIALITY
CONFIDENTIALITY_BAD
|
Si el resultado del suceso SECURITY_ENCRYPTION es DENIED y el
código de razón es CONFIDENTIALITY_BAD, esto significa que al menos una parte de
mensaje, que es necesario que esté cifrada, no se ha cifrado correctamente.
Un DECRYPTION_ERROR en el registro de auditoría puede producir un
código de razón CONFIDENTIALITY_BAD, en función de si el cifrado de mensaje
es necesario o no.
Indicación de la hora
Para cada mensaje SOAP, se audita la
indicación de la hora cuando se envía un suceso SECURITY_RESOURCE_ACCESS
al generador de sucesos. Los resultados posibles de este suceso son SUCCESS
o DENIED. Los códigos de razón son TIMESTAMP o TIMESTAMP_BAD. La tabla siguiente
resume los sucesos de indicación de la hora:
Tabla 3. Suceso de auditoría de indicación de la hora. Utilice los registros de sucesos de auditoría de indicación de fecha y hora para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultado posible |
Código de razón |
SECURITY_RESOURCE_ACCESS |
SUCCESS
DENIED
|
TIMESTAMP
TIMESTAMP_BAD
|
Cabecera de seguridad
La cabecera de seguridad se audita
para asegurarse de que no falta en el mensaje SOAP. Se envía
un suceso SECURITY_RESOURCE_ACCESS y, si falta la cabecera, el resultado es
DENIED, con el código de razón SECURITY_HEADER_MISSING. La tabla siguiente
resume el suceso de cabecera de seguridad:
Tabla 4. Suceso de auditoría
de cabecera de seguridad. Utilice los registros de sucesos de auditoría de seguridad para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultado posible |
Código de razón |
SECURITY_RESOURCE_ACCESS |
DENIED |
SECURITY_HEADER_MISSING |
Autenticación
La señal de seguridad utilizada para
autenticar un mensaje se audita para determinar si la autenticación es
satisfactoria y la información sobre el tipo de autenticación, el nombre de
proveedor y el estado de proveedor se guarda en el registro de sucesos
de auditoría. El ID de señal también se registra, junto con información
que es específica del tipo de señal, por ejemplo nombre de usuario o almacén de claves. La información confidencial, por ejemplo la propia señal o la contraseña de señal,
no se registra en el registro de sucesos de auditoría. La información registrada para cada tipo de señal se describe en la tabla
siguiente:
Tabla 5. Información de señal registrada en el registro de sucesos
de auditoría. Utilice los registros de sucesos de auditoría de autenticación para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de señal |
Información registrada |
Señal de nombre de usuario |
- Nombre de usuario
- Contraseña (nula o no nula)
- ID de señal
|
LTPA |
- Principal
- Caducidad
- ID de señal
|
LTPAPropagate |
- Principal
- Caducidad
- ID de señal
|
SecureConversation |
- UUID
- UUID de instancia
- ID de señal
|
DerivedKey |
- ID de referencia
- ID de señal
|
Kerberos |
- Principal
- SPN
- pSHA1
- ID de señal
|
X509 |
- Certificado
- Sujeto
- Emisor
- Almacén de claves
- ID de señal
- TrustAny
|
Vía de acceso PKP (infraestructura de claves públicas) |
- Certificado
- Sujeto
- Emisor
- Almacén de claves
- ID de señal
- TrustAny
|
PKCS7 (Estándares de criptografía de claves públicas) |
- Certificado
- Sujeto
- Emisor
- Almacén de claves
- ID de señal
- TrustAny
|
Señal SAML |
- Principal
- Nombre de emisor de señales SAML
- Método de confirmación
|
La autenticación de mensajes se audita utilizando un suceso
SECURITY_AUTHN. Los resultados posibles del suceso son SUCCESS, DENIED o FAILURE.
Los códigos de razón son AUTHN_SUCCESS, AUTHN_LOGIN_EXCEPTION o
AUTHN_PRIVILEDGE_ACTION_EXCEPTION.
La tabla siguiente resume los sucesos de autenticación:
Tabla 6. Suceso de auditoría de autenticación. Utilice los registros de sucesos de auditoría de autenticación para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultados posibles |
Códigos de razón |
SECURITY_AUTHN |
SUCCESS
DENIED
FAILURE
|
AUTHN_SUCCESS
AUTHN_LOGIN_EXCEPTION
AUTHN_PRIVILEDGE_ACTION_EXCEPTION
|
Delegación
La autenticación de un mensaje SOAP
se puede delegar y la función de delegación se audita utilizando un suceso
SECURITY_AUTHN_DELEGATION. Este suceso se envía cuando la identidad de cliente se propaga o cuando la
delegación implica el uso de una identidad especial. En el tiempo de ejecución
de seguridad de servicios Web, los sucesos de auditoría sólo se registran cuando
el tipo de delegación se ha establecido en Aserción de identidad. Los resultados
posibles son SUCCESS o DENIED, con los códigos de razón AUTHN_SUCCESS o AUTHN_DENIED.
La información adicional, por ejemplo tipo de delegación, nombre de rol y
nombre de identidad, se recopila y almacena en el registro de sucesos
de auditoría. La tabla siguiente resume los sucesos
de delegación:
Tabla 7. Suceso de auditoría de delegación. Utilice los registros de sucesos de auditoría de delegación para identificar posibles brechas o
debilidades de seguridad de la configuración de seguridad.Tipo de suceso |
Resultados posibles |
Códigos de razón |
SECURITY_AUTHN_DELEGATION |
SUCCESS
DENIED
|
AUTHN_SUCCESS
AUTHN_DENIED
|
Validación
Como parte del soporte de módulo de inicio de sesión de señal de seguridad genérico, un servicio de señales de seguridad puede validar un símbolo mediante una solicitud
WS-Trust Validate .
Esta operación de validación puede devolver una señal como intercambio de un símbolo que se está validando. La información que se intercambia se encuentra en la documentación sobre la auditoría para una señal de seguridad genérica. En la tabla siguiente, se muestra la información de intercambio de señales que se registra.
Tabla 8. Intercambio de señales . Utilice la información de intercambio de señales para rastrear el proceso de intercambio de señales.Suceso |
Descripción |
TokenSentForExchangeId |
Esta información identifica el símbolo que se envía para la validación y se intercambia. |
TokenSentForExchangeType |
Esta información identifica el tipo de símbolo que se envía para la validación y se intercambia. |
ExchangedTokenId |
Esta información identifica el símbolo que se recibe en intercambio durante la solicitud de validación. |
ExchangedTokenType |
Esta información identifica el tipo de símbolo que se recibe en intercambio durante la solicitud de validación. |
Si el símbolo se valida sin un intercambio de símbolos, sólo se registrará el ID de símbolo.