Pregúntele al cantinero: ¿Está bien proporcionar credenciales de administrador de WordPress al personal de soporte de complementos?

Publicado: 2021-06-16

No. Nada. No. No. Eso es negativo. De ninguna manera. Mi mamá no crió a ningún tonto. Diablos, no. No en tu vida. Y, las otras miles de formas de decirle a cualquiera que solicite las credenciales del sitio que se vaya a la mierda, incluso al personal de soporte de complementos de una empresa de desarrollo de WordPress "confiable".

Esa es mi manera de decir que no confío en nadie. Tú tampoco deberías. Sin embargo, hay casos en los que es necesario otorgar permisos de administrador al personal de soporte de un complemento.

La entrega de hoy de la serie Ask the Bartender es cortesía de un lector llamado Niko. Debido a que el texto completo tiene más de 1,000 palabras, simplemente vincularé la transcripción a través de un archivo .txt para aquellos que quieran leerlo completo. Aquí en la publicación, me limitaré a las partes vitales. O al menos las partes que quiero abordar.

Uno de los miembros del grupo de Facebook de Niko inició la discusión.

'¿Está bien enviar detalles de FTP para que un desarrollador de complementos resuelva el problema que tenemos con WooCommerce? Ya hemos proporcionado las credenciales de administrador de WordPress.'

Esta es una práctica bastante normal en el mundo de WordPress, ¿verdad? Los desarrolladores de complementos ayudan en los problemas, y si no pueden replicar un problema, ¿necesitan acceso para poder verificar si se trata de un problema de complemento o un problema del servidor y solucionarlo?

Con los años, he visto que esto se ha convertido en una práctica más común. Sin embargo, no es una práctica que recomiendo ni para el usuario ni para el desarrollador. Cualquier propietario de un sitio debe preguntarse si confía en la persona a la que le está otorgando las credenciales. Si la respuesta a esa pregunta es no, tienes la respuesta a la primera pregunta.

En más de una década de administrar una tienda de temas y complementos, nunca necesité acceso de administrador o FTP para tratar una pregunta de soporte. No importaba si era un complemento grande y complejo o uno pequeño. Debido a que yo era la única persona en la empresa, también respondí personalmente cientos de miles de preguntas de soporte a lo largo de los años. Aún así, ni una sola vez inicié sesión en el sitio de un usuario para ayudarlo. Eso siempre me pareció un problema de responsabilidad, pero también usé escenarios como momentos de enseñanza sobre la confianza y la seguridad.

Los usuarios a veces me proporcionaron credenciales sin que yo se lo pidiera. A menudo, los publican en texto sin formato en foros, correos electrónicos o Slack (además, nunca debes hacer eso). Si era necesario cambiar el código en el sitio, mis usuarios realizaban la tarea ellos mismos o instalaban una versión libre de errores del tema/complemento que les entregué.

Si no sabían cómo realizar una tarea a través del administrador, FTP o de otra manera, me tomaba el tiempo para enseñarles. Sí, eso requirió más energía en ambos extremos, pero creo que fuimos mejores por eso. Más de una vez, esos momentos llevaron a algunos usuarios por el camino de convertirse ellos mismos en desarrolladores, o al menos fue un pequeño trampolín para ellos. Sigo siendo amigo de muchos de ellos hoy y estoy orgulloso de que hayan comenzado con mi pequeña tienda de WordPress en solitario.

Algunos casos fueron más duros que otros. Muchas veces, replicaba su configuración (complementos, tema, etc.) en mi máquina. La mayoría de las veces, esto me llevó a la solución: estaba usando __doing_it_wrong() mucho antes de que WordPress introdujera la idea. A la larga, pude pasar innumerables correcciones de errores a otros desarrolladores. También hice muchos amigos desarrolladores de esta manera.

No tengo dudas de que el camino que recorrí fue el más largo de los dos. Hubo momentos en los que pasé una hora, dos o incluso más atendiendo las necesidades de un usuario. Entrar en algunos de sus administradores de WordPress habría sido un curso más rápido.

Sin embargo, mis usuarios de temas y complementos nunca tuvieron que preocuparse de si confiaban en mí lo suficiente como para proporcionar ese nivel de acceso. Además, no tenía posibilidad de romper accidentalmente su sitio al hacer cambios personalizados.

¿Hay momentos en que el personal de soporte de un complemento realmente necesita acceso? Probablemente.

La pregunta original era sobre WooCommerce. Es uno de los complementos técnicamente más avanzados que existen para WordPress. Replicar la configuración de un usuario fuera del sitio es más complicado que la mayoría de los demás. Puede haber ocasiones excepcionales en las que necesite proporcionar algún acceso, pero nunca debe confiar en nadie.

La segunda parte de la pregunta de Niko gira en torno al Reglamento General de Protección de Datos (RGPD) de la Unión Europea y los datos de los usuarios. Es una parte vital para lidiar con esos momentos en los que decides entregar las llaves de tu sitio web.

Muy bien, aquí viene el problema después de pensar en GDPR. Si este desarrollador se encuentra fuera de la UE, entonces deberá anonimizar los datos del cliente y hacer un acuerdo NDA con ese desarrollador o compañía exactos que están detrás del complemento para que puedan venir y arreglar las cosas.

Prefacio esto con el habitual No soy abogado . Sin embargo, proteger los datos de los usuarios siempre es una prioridad legal y ética en cualquier sitio que administre, independientemente de la jurisdicción en la que se encuentre.

En esos casos, nuevamente, raros, en los que necesita proporcionar acceso a su administrador de WordPress, hay pasos que puede seguir para proteger mejor su sitio y sus datos. Independientemente de la confiabilidad de un desarrollador o un miembro del personal de soporte, siempre hay una regla general cuando se trata de la seguridad del sitio web: no confíes en nadie y no confíes en nada.

El primer paso siempre debe ser tener un sistema de respaldo en su lugar. En caso de que el personal de soporte rompa algo, querrá revertir el sitio a su estado anterior.

Nunca proporcione acceso completo a nivel de administrador. Recomiendo instalar y activar un complemento de gestión de roles y capacidades. Esto le permitirá crear un rol personalizado para la ayuda de soporte y limitar las áreas del sitio a las que tienen acceso. A continuación, crearía una cuenta de usuario para ellos con este rol. Una vez que hayan completado su trabajo, elimine su cuenta.

Si no desea que vean a los usuarios registrados ni que hagan nada con los datos de los usuarios, asegúrese de que su rol de usuario no tenga las siguientes capacidades:

  • create_users
  • delete_users
  • edit_users
  • list_users
  • promote_users
  • remove_users

Hay muchas otras capacidades de nivel de administrador como edit_files , edit_plugins y edit_themes que también debe evitar. Esencialmente, anule la mayoría de las mayúsculas de la lista de administradores en la documentación de WordPress.

Lo más probable es que los equipos de complementos necesiten acceso a la capacidad de manage_options y cualquiera que sea personalizada para su complemento. Incluso esos pueden ser peligrosos, pero la copia de seguridad que implemente debería mitigar cualquier problema potencial.

¿En cuanto a una contraseña de FTP? Confío en muy pocas personas con ese nivel de acceso.

Esta respuesta probablemente parezca que no creo que ninguna tienda de complementos o desarrolladores sean confiables. Honestamente, no conozco ninguno que haya violado la confianza del usuario al usar las credenciales de inicio de sesión o FTP de esta manera. Por otro lado, no tengo forma de saber si el miembro del personal con el que estoy hablando planea dejar su trabajo por la tarde y está dispuesto a quemarlo todo por la mañana.

También he visto un puñado de casos en los que un desarrollador se presentó para arreglar algo, pero terminó rompiendo el sitio en el camino. Las copias de seguridad fueron cruciales para abordar esos problemas.

Esta publicación no pretende hacer que los desarrolladores de complementos o las empresas parezcan poco confiables. La mayoría son buenas personas que intentan ganarse la vida honestamente. Sin embargo, no confiar en nada es la seguridad del sitio web 101. Es simplemente la línea de base en la que los usuarios deben operar. Si interactúa con esta mentalidad, debería ayudarlo a tomar decisiones más inteligentes caso por caso.