2011-10-06 9 views
5

Tengo un servicio web (del lado del servidor) implementado usando axis2 en mi proyecto. Queremos habilitar la seguridad de WS en los servicios web existentes. Estamos evaluando si apache ramapart module se ajusta a nuestras necesidades. Aquí está nuestro requisito: Básicamente tenemos un marco de seguridad interno que proporciona encriptación, firma y capacidad de generación de tokens. Nuestro marco de seguridad interno básicamente requiere un conjunto de configuraciones en forma de XML y expone varias API para realizar varias operaciones de seguridad.usando el módulo ramaprt axis2 con el propio marco de seguridad

Ahora con el entorno anterior, se puede pensar en tres soluciones possbile: -

  1. que puede desarrollar un módulo axis2 alrededor de marco de seguridad de la casa e instalarlo como .mar archivo en fase de seguridad. Entonces no usaré Apache Rampart. Pero el problema con este enfoque es que no puedo usar la política de seguridad de ws para especificar aserciones de seguridad y asegurar que los tokens de seguridad entrantes cumplan con una política efectiva. Es como reinventar la rueda que ya está haciendo la muralla.

  2. Creo que apache terraplén subraya la llamada al módulo apache wss4j para las operaciones de seguridad. Creo que el módulo apache wss4j proporciona una forma de registrar proveedores de seguridad de terceros (mediante la implementación de la interfaz CryptoProvider). No estoy seguro de si esta es una solución viable y viable. Por favor recomiende.

  3. La política de seguridad Ws permite utilizar un token personalizado. Este token personalizado se puede construir utilizando nuestro marco de seguridad interno. Básicamente, nos permite crear una política de seguridad ws utilizando el módulo apache rampart y desarrollar un token personalizado utilizando nuestro marco de seguridad. Pero no pude encontrar ayuda con respecto a esto en internet. ¿Alguien podría ayudar con el ejemplo?

cualquier otra sugerencia también son bienvenidas.

Respuesta

1

He publicado una respuesta aquí: How to encrypt SOAP messages manually?

No es un ejemplo muy detallada ahí que le puede resultar útil.

puede configurar el proveedor mediante el uso de:

cryptoConfig.setProvider(PROVIDER); 

En cuanto a las cabeceras de seguridad personalizados, lo siento, pero no lo probé, así que no puedo ayudarte.

Cuestiones relacionadas