Pregunta

Estoy creando una aplicación web que tendrá acceso a la base de datos de PeopleSoft a través de jdbc. ¿Es posible que pueda usar la ID / contraseña de PeopleSoft para mi aplicación personalizada, para que los usuarios que accedan a mi sitio web no tengan que tener otro nombre de usuario / contraseña?

¿Fue útil?

Solución

Peoplesoft almacena los detalles del usuario en la tabla PSOPRDEFN.

Podrás verificar el nombre de usuario en contra: PSOPRDEFN.OPRID.

El campo de contraseña es: OPERPSWD.

Lamentablemente, la función de cifrado utilizada para este campo: hash () solo está disponible dentro de peoplecode.

Si desea utilizar un inicio de sesión único, debe poder hacerlo personalizando el componente USERMAINT.gbl, tal vez en el código de usuario saveprechange, para guardar la contraseña en un segundo campo de su elección con un algoritmo de cifrado que pueda implementar desde JDBC también.

Otros consejos

Si desea reutilizar la seguridad de PeopleSoft, deberá conectarse a un nivel más alto que JDBC directamente en la base de datos. Puede ver una interfaz de componente (codificable en Java) o enviar un mensaje SOAP a PeopleSofts Integration Gateway; ambos métodos lo autentificarían contra peopleSoft utilizando sus propios mecanismos de seguridad.

La forma anterior era personalizar psuser.c según sus necesidades y volver a compilarlo como una nueva dll, lo usó en su programa, asumiendo que está en una plataforma de Microsoft. Como se mencionó anteriormente, puede hacer que un desarrollador de PeopleSoft cree una interfaz de componente (o use la que se entrega). Puede exportar el código de contenedor de Java o C / C ++ desde un CI, una plantilla. Este código se puede usar en un programa externo para llamar al CI. de una forma u otra, tienes que interactuar con peopletools para llamar a su descifrado para las contraseñas.

Dependiendo de cuán dinámica sea su empresa, si agrega muchos empleados cada día, podría exportar psoprdefn usando la mensajería de la aplicación a otra base de datos. En el envío, puedes cifrar las contraseñas como quieras. Pero como puede suponer, esto no sería en tiempo real.

Una cosa que recuerdo haber hecho hace mucho tiempo fue que un técnico de Peopleoft desarrollara una página cuya única funcionalidad era llamar a mi clase Java y obtener usuarios / pswds según fuera necesario. Una vez que los tuve, estaba listo para ir.

Puede usar psjoa.jar, de esa manera puede iniciar sesión a través de app.server utilizando los mismos usuarios y contraseñas en la tabla psoprdefn.

PeopleSoft tiene una capacidad de integración LDAP pero debe configurarse. Si está accediendo a través de una envoltura de Java alrededor de una interfaz de componente, se puede configurar una cuenta especial en PeopleSoft con acceso solo al componente subyacente, pero el nombre de usuario / la contraseña deberán pasar a la interfaz del componente. Esto se puede cifrar o enviar a través de https.

PeopleSoft también tiene lo que llama " nivel de fila " seguridad: la capacidad de particionar conjuntos de datos para que, por ejemplo, su código solo pueda acceder a los datos de los empleados dentro de una unidad de negocios específica o información de contabilidad para una línea de negocios en particular. Todo esto está controlado dentro de la aplicación de seguridad en línea de PeopleSoft.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top