El complemento de gestión del usuario de mysqlnd (mysqlnd_uh
)
permite a los usuarios establecer ganchos para la mayoría de las llamadas internas del
controlador nativo de MySQL para PHP
(mysqlnd
).
Mysqlnd y sus complementos, incluido PECL/mysqlnd_uh, operan en una capa
por debajo de las extensiones de MySQL para PHP. Un complemento de mysqlnd puede considerarse
como un delegado (proxy) entre las extensiones de MySQL para PHP y el servidor MySQL
como parte del ejecutable de PHP en el lado del cliente. Ya que los complementos
operan en sus propias capas bajo las extensiones de MySQL para PHP,
pueden monitorizar y cambiar las acciones de una aplicación sin la necesidad de
efectuar cambios en la misma. Si las
extensiones de MySQL para PHP (mysqli,
mysql,
PDO_MYSQL) están compiladas para
usar mysqlnd
, este comlemento puede utilizarse para:
Monitorizar
consultas ejecutas por cualquier extensión de MySQL para PHP
sentencias preparadas que son ejecutadas por cualquier extensión de MySQL para PHP
Auditar
la detección del uso de una base de datos
la protección contra inyecciones SQL usando listas negras y blancas
Varios
Conexiones con equilibrado de carga
El controlador nativo de MySQL para PHP (mysqlnd) introduce una API en C de complementos internos. Estos complementos, como el complemento de gestión del usuario, pueden ampliar la funcionalidad de mysqlnd. PECL/mysqlnd_uh es parte de la API en C de complementos internos disponibles para el usuario desarrollador con PHP.
Nota: Estado
El complemento de gestión del usuario de mysqlnd está en un estado alfa. Se han de tomar las precauciones pertinentes para usarlo en entornos de producción.
PECL/mysqlnd_uh proporciona a los usuarios el acceso a los nombres de usuario y contraseñas
de MySQL usados por cualquier extensión de MySQL para PHP que se conecte a MySQL.
Permite la monitorización de todas las consultas y sentencias preparadas exponiéndolas
al usuario. Por lo tanto, la extensión debería ser
instalada con precaución. El ajuste de configuración de PHP_INI_SYSTEM
mysqlnd_uh.enable
se puede usar para evitar que los usuarios capturen las llamadas a mysqlnd.
Los ofuscadores de código y tecnologías similares no son adecuados para evitar la monitorización de las actividades de la biblioteca mysqlnd si PECL/mysqlnd_uh está disponible y el usuario puede instalar un proxy, por ejemplo, usando auto_prepend_file.
Muchas de las funciones de mysqlnd_uh están descritas brevemente debido
a que la extensión mysqli es una
fina capa de abstracción en lo alto de la API en C de MySQL que
proporciona la biblioteca mysqlnd
. Por lo tanto,
se puede consultar la documentación correspondiente a
mysqli (junto con el manual de referencia de MySQL manual)
para recibir más información sobre una función en particular.
La abreviatura mysqlnd_uh
significa en español
gestión del usuario de mysqlnd
, y ha sido el nombre
desde el desarrollo inicial del complemento.