Seguridad complementaria
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta página, se detallan los requisitos de seguridad que deben cumplir los complementos de terceros.
Restricciones de origen
Un origen es una URL con un esquema (protocolo), un host (dominio) y un puerto. Dos URLs tienen el mismo origen cuando comparten el mismo esquema, host y puerto.
Se permiten los suborígenes. Para obtener más información, consulta RFC 6454.
Estos recursos comparten el mismo origen, ya que tienen los mismos componentes de esquema, host y puerto:
https://www.example.com
https://www.example.com:443
https://www.example.com/sidePanel.html
Se aplican las siguientes restricciones cuando se trabaja con orígenes:
Todos los orígenes que se usen en el funcionamiento de tu complemento deben usar https
como protocolo.
El campo addOnOrigins
del manifiesto del complemento debe completarse con los orígenes que usa tu complemento.
Las entradas del campo addOnOrigins
deben ser una lista de valores compatibles con la fuente del host de CSP. Por ejemplo, https://*.addon.example.com
o https://main-stage-addon.example.com:443
. No se permiten rutas de acceso a recursos.
Esta lista se usa para lo siguiente:
Establece el valor frame-src
de los elementos iframe que contienen tu aplicación.
Valida las URLs que usa tu complemento.
El origen que se usa en los siguientes parámetros de configuración regional debe formar parte de los orígenes que se indican en el campo addOnOrigins
del manifiesto:
Valida el origen del sitio que llama al método exposeToMeetWhenScreensharing()
.
Si tu aplicación usa la navegación por URL dentro del iframe, todos los orígenes a los que se navega deben aparecer en el campo addOnOrigins
. Ten en cuenta que se permiten los subdominios con comodines. Por ejemplo, https://*.example.com
Sin embargo, te recomendamos que no uses subdominios comodín con un dominio que no te pertenezca, como web.app
, que es propiedad de Firebase.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-01 (UTC)
[null,null,["Última actualización: 2025-08-01 (UTC)"],[],[],null,["# Add-on security\n\nThis page details the security requirements third-party add-ons\nhave to fulfill.\n\nOrigin restrictions\n-------------------\n\nAn origin is a URL with a scheme (protocol), host (domain), and port. Two URLs\nhave the same origin when they share the same scheme, host, and port.\nSub-origins are permitted. For more information, see [RFC\n6454](https://www.ietf.org/rfc/rfc6454.txt).\n\nThese resources share the same origin as they have the same scheme, host, and\nport components:\n\n- `https://www.example.com`\n- `https://www.example.com:443`\n- `https://www.example.com/sidePanel.html`\n\nThe following constraints are enforced when working with origins:\n\n1. All [origins](/workspace/meet/add-ons/guides/overview#origin) used in the operation of\n your add-on must use `https` as the protocol.\n\n2. The `addOnOrigins` field in the [add-on\n manifest](/workspace/meet/add-ons/guides/deploy-add-on#create-deployment) must be\n populated with the origins that your add-on is\n using.\n\n The entries in the `addOnOrigins` field must be a list of [CSP host\n source](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#host-source)\n compatible values. For example `https://*.addon.example.com` or\n `https://main-stage-addon.example.com:443`. [Resource\n paths](https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/What_is_a_URL#path_to_resource)\n are not allowed.\n\n This list is used to:\n - Set the\n [`frame-src`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-src)\n value of the iframes containing your application.\n\n - Validate the URLs that your add-on is using.\n The origin used in the following locales must be part of the origins\n listed in the `addOnOrigins` field in the manifest:\n\n - The `sidePanelUri` field in the add-on\n manifest. For more information, see\n [Deploy a Meet add-on](/workspace/meet/add-ons/guides/deploy-add-on#create-deployment).\n\n - The `sidePanelUrl` and `mainStageUrl` properties in the\n [`AddonScreenshareInfo`](/workspace/meet/add-ons/reference/websdk/screenshare_api.addonscreenshareinfo)\n object. For more information, see\n [Promote an add-on to users through screen\n sharing](/workspace/meet/add-ons/guides/promote#screen_sharing).\n\n - The `sidePanelUrl` and `mainStageUrl` properties in the\n [`ActivityStartingState`](/workspace/meet/add-ons/reference/websdk/addon_sdk.activitystartingstate).\n For more information on activity starting state, see [Collaborate using a Meet add-on](/workspace/meet/add-ons/guides/collaborate-in-the-add-on).\n\n - Validate the origin of the site that's calling the\n [`exposeToMeetWhenScreensharing()`](/workspace/meet/add-ons/reference/websdk/screenshare_api.meetaddonscreenshare.exposetomeetwhenscreensharing)\n method.\n\n3. If your application uses URL navigation inside the iframe, all origins that\n are being navigated to must be listed in the `addOnOrigins` field. Note that\n wildcard subdomains are permitted. For example,\n `https://*.example.com`. However, we strongly advise against using wildcard\n subdomains with a domain you don't own, such as `web.app` which is owned by\n Firebase."]]