Para la revisión de seguridad

Dossier de seguridad y cumplimiento

https://sharelio.com/es/seguridad/

Esta página existe para que aprobar Sharelio no requiera una llamada con nosotros. Está todo: el manifiesto del paquete campo por campo, el único permiso que pide, los permisos que deliberadamente no pide, qué sale de tu tenant, quién lo trata y cómo verificar tú mismo cada afirmación de esta página.

Si eres el administrador que tiene que desplegarlo, la guía paso a paso está en Instalar Sharelio. Esta es la página que se adjunta al ticket.

La versión corta

Todo lo que suele preguntar una revisión de seguridad, en una tabla.
PreguntaRespuesta
¿Qué estoy instalando?Un paquete SPFx estándar. Es un motor de render, no un generador de código: pinta componentes a partir de configuraciones JSON declarativas.
¿Cuántos permisos pide?Uno. Sharelio / Components.Read, delegado y de solo lectura, sobre la configuración de tus propios componentes.
¿Pide permisos de Microsoft Graph?No. Ninguno. Ni sobre tus listas, ni tus archivos, ni tu correo, ni tu directorio.
¿Hace falta ser administrador global?No. Basta con el rol de administrador de SharePoint.
¿Dónde están los datos de mis listas?En tu tenant, en tus listas de SharePoint. Se leen en el navegador de tu empleado y no pasan por Sharelio.
¿Qué guarda Sharelio?La configuración de los componentes —qué lista leer y cómo pintarla—, nunca su contenido.
¿Sharelio custodia credenciales de mi tenant?No. No almacena ningún token, secreto ni refresh token tuyo. Solo verifica las firmas que emite Microsoft.
¿Puede ejecutar código arbitrario en mis páginas?No. El esquema JSON es cerrado: no puede expresar código, ni expresiones evaluables, ni HTML, ni URLs arbitrarias. requiresCustomScript es false.
¿Cómo lo quito?Quitar el permiso de API y eliminar el paquete del App Catalog. Tus listas y sus datos quedan intactos.

El paquete, campo por campo

Estos valores salen del paquete que puedes descargar. Puedes casarlos uno a uno con lo que te enseñe tu App Catalog.

CampoValor
Nombre del paquetesharelio-host.sppkg
FabricanteSharelio
Id de solucióndc282acf-d064-49b2-aca4-b8c5d6eb66a5
Id de característicadb7ddf40-719b-4fe8-a15e-9ae540a58aab
Id del web part5681b319-fd19-4756-8b30-66ec5d49e00b
SharePoint Framework1.23.2 (React 17, Fluent UI v8)
skipFeatureDeploymenttrue: se despliega una vez para todo el tenant. No hay que añadir la app sitio por sitio.
isDomainIsolatedfalse. No es una preferencia: Microsoft retiró los web parts domain-isolated el 2 de abril de 2026, así que es la única opción disponible.
requiresCustomScriptfalse: el componente nunca incrusta script escrito por el autor de la página.
includeClientSideAssetstrue: el JavaScript se sirve desde tu propio tenant, no desde un CDN nuestro.
Hosts soportadosSharePointWebPart, SharePointFullPage, TeamsTab, TeamsPersonalApp
Permiso de API solicitado{ resource: "Sharelio", scope: "Components.Read" }, y nada más.
Aplicación de Entra ID9694b001-0249-43cb-b571-1ba792505fbd (App ID URI api://9694b001-0249-43cb-b571-1ba792505fbd). Multi-tenant, propiedad de Sharelio.

La versión que apruebas es la que seguirá corriendo. Como el paquete es un motor y no un generador, tu equipo puede publicar cincuenta componentes sin un solo despliegue nuevo, sin un solo permiso nuevo y sin un solo ticket para ti. Lo que cambia es la configuración, nunca el código.

El único permiso — y todo lo que no es

La dirección de este permiso es la parte que casi todo el mundo lee al revés, así que conviene ser preciso: el token se emite hacia la API de Sharelio, no hacia tus datos.

El web part, corriendo dentro de tu tenant, pide a Entra ID un token dirigido a Sharelio y nos lo presenta para que sepamos qué organización pregunta. Nosotros verificamos la firma, la audiencia, el emisor y el id de tenant contra las claves públicas de Microsoft, y devolvemos la configuración de los componentes que ese mismo tenant publicó. No nos compra acceso a nada tuyo.

Permisos que Sharelio no pide

Permiso¿Se pide?
Microsoft Graph — <code>Sites.Read.All</code>No
Microsoft Graph — <code>Files.Read.All</code>No
Microsoft Graph — <code>User.Read.All</code> / directorioNo
Microsoft Graph — <code>Mail.*</code>No
SharePoint REST como aplicación (app-only)No
Consentimiento de administrador global sobre el tenantNo

Esto no es una promesa sobre nuestro roadmap que haya que creerse: es comprobable hoy. El paquete declara sus solicitudes de permiso en el manifiesto, tu App Catalog te enseña la lista completa antes de que apruebes, y cualquier permiso que añadiéramos después aparecería ahí como una nueva aprobación pendiente que solo puedes conceder tú.

Sharelio no tiene identidad propia dentro de tu SharePoint

Sharelio sí escribe en tu tenant: puede crear la lista que una herramienta necesita, y sus componentes pueden abrir el formulario de alta de SharePoint. Así que la garantía que damos no es la débil («no escribimos») sino esta otra, más fuerte:

Todo lo que Sharelio hace dentro de tu SharePoint, lo hace como la persona que está delante de la pantalla, con sus permisos. No hay cuenta de servicio, ni identidad de aplicación, ni privilegio nuestro que escalar.

  • Lecturas. Las filas las lee el navegador con la sesión de SharePoint del propio empleado. Quien no puede abrir una lista tampoco la verá a través de Sharelio, y las filas no viajan hasta nosotros.
  • Escrituras. La provisión de listas corre con esa misma sesión, acotada al sitio actual. Si esa persona no puede crear listas ahí, Sharelio tampoco: SharePoint le dice que no exactamente igual que si lo hubiera intentado a mano.
  • Nunca por sorpresa. Se enseña la lista completa de columnas y hay que pulsar un botón. Solo ocurre en modo edición de página: quien solo está viendo una página nunca provoca una escritura.
  • Nunca destructivo. Si la lista existe se reutiliza, si faltan columnas se añaden, y una columna con el mismo nombre y otro tipo detiene la operación con un aviso: no se convierte ni se sobrescribe nada.

Si quieres descartar las escrituras del todo, no hace falta desinstalar nada: basta con no dar permisos de edición sobre el sitio. Sin ellos nadie puede colocar un web part, y sin colocarlo no hay nada que crear.

Qué sale de tu tenant y qué no sale nunca

Dato¿Sale del tenant?Detalle
Contenido de tus listas de SharePointNuncaSe lee en el navegador y se pinta en el navegador. No pasa por nuestro backend en ningún momento.
Tus documentos, correo, calendario, directorioNuncaNo tenemos ningún permiso que pudiera alcanzarlos.
Configuración de los componentesQué lista leer, qué columnas, cómo formatearlas y filtrarlas. La crea tu equipo en el studio de Sharelio y se guarda en nuestro backend.
La descripción que escribe tu equipoLa frase en lenguaje natural con la que se genera un componente, y los nombres de las listas y columnas a las que se refiere.
Id de tenant y usuario autenticadoPara resolver qué organización pregunta y para registrar quién creó cada componente.
Credenciales o tokens tuyosNo se almacenanEl token se verifica al llegar y se descarta. No hay ningún secreto tuyo que podamos perder.

Qué ve la IA

Los componentes los genera un modelo de lenguaje, así que es legítimo preguntar qué le llega exactamente. La descripción que escribe tu compañero y los nombres de listas y columnas. Nunca las filas.

El modelo no tiene —ni podría tener— acceso a tus datos: la generación ocurre en nuestro backend, que de entrada nunca tiene el contenido de tus listas. Y la salida tampoco es código: es una configuración JSON que se valida contra un esquema cerrado antes de guardarse, y que se rechaza de plano si no encaja.

  • Proveedor: Anthropic (claude-sonnet-5), a través de su API comercial.
  • Entrenamiento: según los términos comerciales de la API de Anthropic, los datos enviados a través de la API no se usan para entrenar modelos.
  • Determinismo: devuelva lo que devuelva el modelo, solo puede guardarse y renderizarse lo que el esquema permite. El límite es el esquema, no el prompt.

Subencargados

Todos los proveedores que tratan datos por nuestra cuenta, con contrato de encargado de tratamiento. No vendemos ni cedemos datos a nadie más.

ProveedorPara quéDóndeQué puede ver
SupabaseBase de datos, autenticación y funciones de backend[REGION_SUPABASE]Configuraciones de componentes, cuentas, id de tenant
AnthropicGeneración de componentesEstados UnidosLa descripción que escribe tu equipo; ningún dato de las listas
VercelAlojamiento de la web y del studioCDN globalMetadatos de las peticiones
StripeCobro de las suscripcionesUE / Estados UnidosDatos de facturación; ningún contenido del producto
ResendEmail de aviso de las consultas de la webUE (eu-west-1)Los datos de contacto que envías en un formulario
Plausible AnalyticsEstadísticas anónimas de la webUE (Alemania)Sin cookies, sin guardar la IP y sin perfiles

Cuando un proveedor trata datos fuera del Espacio Económico Europeo, la transferencia se ampara en las Cláusulas Contractuales Tipo de la Comisión Europea.

Qué guardamos y cuánto tiempo

RegistroConservación
Configuraciones de componentes y su historial de versionesMientras tu cuenta esté activa. Se borran a petición o al cerrar la cuenta.
Quién creó cada componente y cuándoLo mismo que el componente. Es lo que hace útil tu panel de gobierno.
Registro de generación (coste, éxito, modelo)Se conserva para monitorización operativa. No contiene datos de listas.
Consultas de la web (leads)Hasta 24 meses desde el último contacto, o hasta que pidas que los borremos.
Registros antiabuso (hashes de IP de un solo sentido)90 días.

Para solicitar acceso, exportación o borrado, escribe a hola@sharelio.com. Respondemos en un plazo de 30 días.

Cómo verificar todo esto tú mismo

Nada de esta página te pide que te fíes. Todo es comprobable antes de aprobar nada, y sin cuenta de Sharelio.

  1. Descarga el paquete. sharelio-host.sppkg, sin registro y sin login.
  2. Comprueba su integridad. El SHA-256 que publicamos está en sharelio-host.sppkg.sha256. En Windows: Get-FileHash sharelio-host.sppkg -Algorithm SHA256. En macOS o Linux: shasum -a 256 sharelio-host.sppkg.
  3. Ábrelo. Un .sppkg es un zip. Renómbralo y descomprímelo: los manifiestos llevan los ids de la tabla de arriba y la solicitud de permiso, y los assets de cliente llevan el JavaScript que se va a ejecutar.
  4. Lee la solicitud de permiso en tu propio catálogo. Sube el paquete a tu App Catalog y mira «Acceso a API» antes de aprobar. La lista que ves ahí es la completa: no se puede pedir nada después sin que aparezca como una nueva aprobación pendiente.
  5. Pídenos el esquema. El esquema JSON que acota lo que un componente puede describir está disponible a petición en hola@sharelio.com. Es cerrado: ni código, ni expresiones evaluables, ni HTML, ni URLs arbitrarias.

Lo que todavía no tenemos

Un dossier que solo enumera fortalezas no es un dossier. Sharelio es una empresa joven, y estos son los huecos que ibas a encontrar de todas formas:

  • No tenemos certificación ISO 27001 ni SOC 2 propia. Nuestros proveedores de infraestructura tienen las suyas; nosotros todavía no tenemos la nuestra, y no vamos a insinuar lo contrario.
  • No hay test de intrusión independiente publicado. Si vuestro proceso lo exige, decídnoslo y hablamos del alcance.
  • No hay compromiso de soporte 24/7 fuera de un acuerdo Enterprise.

Lo que ofrecemos a cambio es aquello de lo que las certificaciones son un sustituto: una superficie lo bastante pequeña como para auditarla en una tarde. Un paquete, un permiso delegado de solo lectura, sin acceso a Graph, sin custodia de tus datos, y una desinstalación que deja tus listas exactamente como estaban.

Cómo quitarlo

  • Quitar el permiso: Centro de administración de SharePoint → Avanzado → Acceso a API → seleccionar Sharelio → Quitar.
  • Retirar el paquete: eliminarlo del App Catalog.

Los componentes dejan de renderizarse inmediatamente. Tus listas y sus datos quedan intactos, porque nunca salieron de tu tenant. Si lo que quieres es apagar un solo componente, TI no tiene que intervenir: se desactiva de forma centralizada desde el panel de gobierno de Sharelio.

Lo que una revisión de seguridad suele preguntar después

¿Puede Sharelio leer los datos de nuestras listas de SharePoint?

No, y no por política sino por construcción. Las filas las lee el navegador del empleado con su propia sesión de SharePoint y se pintan ahí. No llegan a nuestro backend, y no tenemos ningún permiso de Microsoft Graph ni de la API de SharePoint que pudiera alcanzarlas desde nuestro lado.

¿Qué pasa si Sharelio deja de estar disponible o cierra?

Los componentes dejan de renderizarse, porque la configuración la servimos nosotros. Tus datos no se ven afectados: viven en tus listas de SharePoint y siguen ahí, legibles y utilizables igual que antes, porque nunca los tuvimos. Desinstalar el paquete deja las listas intactas.

¿El paquete llama a dominios de terceros desde nuestras páginas?

Llama a la API de Sharelio para pedir la configuración del componente que está renderizando, y a nada más. El JavaScript se sirve desde tu propio tenant (includeClientSideAssets es true), no desde un CDN externo, y el esquema JSON no puede expresar URLs arbitrarias, así que no se puede hacer que un componente llame a otro sitio.

¿Puede un empleado usar Sharelio para ver datos que no le corresponden?

No. Cada lectura ocurre con la sesión de SharePoint de ese empleado, así que los permisos de SharePoint se aplican sin cambios. Un componente colocado en una página que lee una lista a la que quien mira no tiene acceso le mostrará un error de acceso, no los datos.

¿Firmáis un DPA?

Sí. Escribe a hola@sharelio.com y te lo mandamos. Esta página lista nuestros subencargados para que puedas revisarlos antes de pedirlo.

¿Cómo sabemos que una versión futura no pedirá más permisos?

No hace falta que os fiéis de nuestra palabra: SharePoint no deja que ocurra en silencio. Un paquete que solicita un permiso de API nuevo genera una nueva aprobación pendiente en vuestro centro de administración, que solo puede conceder vuestro administrador. Hasta entonces, la solicitud nueva simplemente no tiene efecto.