Se trata de un post rapidillo, en nombre de aquellos que han estado investigando como JIRA gestiona y almacena los usuarios.
De acuerdo con la documentación, JIRA utiliza un framework open source llamado OSUser para la gestión de usuarios. Los registros de usuarios se almacenan en la tabla userbase del esquema de base de datos de JIRA, esta tabla solo almacena: ID, nombre de usuario y la calve encriptado con la función de hash. Como complemento se almacenan algunas otras propiedades para los usuarios, como por ejemplo e-mail y full name. Estas se almacenan en dos tablas, propertyentry y propertystring. Para identificar los registros correspondientes a usuarios en estas tablas, primero debemos saber que para propertyentry, se almacena ‘OSUser’ en el campo ENTITIE_NAME, el ID de la tabla userbase está en el campo ENTITIE_ID y la propiedad en el campo PROPERTY_KEY.
Cuando hemos identificado la key de la propiedad que buscamos del usuario hay que obtener su valor desde la tabla propertystring, donde el ID corresponde con el ID de la tabla propertyentry y el campo VALUE contiene el valor actual para dicha propiedad.
En cuanto a grupos y membrecías de los usuarios, estos son almacenados en las tablas groupbase y membershipbase respectivamente. La tabla de membrecías, contiene la vinculación entre usuarios y grupos a partir de los campos USER_NAME y GROUP_NAME para nombres de usuarios y nombres de grupos respectivamente.
Luego de haber analizado estas cuestiones, el esquema de gestión de usuarios adoptado por JIRA, entiendo que resulta sencillo de comprender.
No hay comentarios:
Publicar un comentario
Si quieres puedes aportar a este post con tus comentarios, así podemos enriquecer juntos la temática. Gracias!