Un paquete puede heredar sus permisos de visibilidad y acceso de un repositorio, o bien, para los registros que admiten permisos granulares, puedes establecer la visibilidad y los permisos del paquete de manera independiente a los de un repositorio.
Para obtener la lista de registros que admiten permisos granulares y para obtener más información sobre los permisos de paquetes, ámbitos relacionados con paquetes para PAT o administrar permisos para los GitHub Actions flujos de trabajo, consulte Acerca de los permisos para los Paquetes de GitHub.
Acerca de la herencia de los permisos de acceso
En los registros que admiten permisos granulares, los paquetes tienen como ámbito una cuenta u organización personal. En estos registros, puedes publicar un paquete sin vincularlo a un repositorio y, a continuación, determinar quién puede acceder al paquete estableciendo los permisos de acceso y la visibilidad en la configuración del paquete.
De forma predeterminada, si publica un paquete vinculado a un repositorio, el paquete hereda automáticamente los permisos de acceso (pero no la visibilidad) del repositorio vinculado. Por ejemplo, un usuario que posee acceso de lectura al repositorio vinculado también tendrá acceso de lectura al paquete. Cuando un paquete hereda automáticamente los permisos de acceso, GitHub Actions los flujos de trabajo del repositorio vinculado también obtienen acceso automáticamente al paquete.
Un paquete solo hereda automáticamente los permisos de acceso de un repositorio vinculado si vinculas el repositorio al paquete antes de publicar el paquete, por ejemplo, agregando la etiqueta org.opencontainers.image.source de Docker a una imagen de contenedor. Si conectas un paquete publicado a un repositorio desde la página de configuración del paquete, el paquete conservará sus permisos de acceso existentes y no heredará los permisos de acceso del repositorio a menos que selecciones explícitamente esta opción. Además, las organizaciones pueden deshabilitar la herencia automática de los permisos de acceso para todos los paquetes nuevos que tengan como ámbito su organización. Para obtener más información, consulta Deshabilitar la herencia automática de los permisos de acceso de una organización a continuación.
Cuando un paquete hereda los permisos de un repositorio, para conceder o quitar el acceso al paquete, debes configurar las opciones de permisos del repositorio vinculado. Si desea establecer la configuración de acceso de un paquete por separado del repositorio vinculado al paquete, debe quitar los permisos heredados del paquete vinculado. Para obtener más información, consulta Seleccionar si un paquete hereda los permisos de un repositorio a continuación.
Si publicas un paquete en un registro que solo admite permisos de ámbito de repositorio, el paquete siempre está vinculado a un repositorio y siempre hereda los permisos del repositorio vinculado.
Acerca de cómo establecer la visibilidad y los permisos de acceso para paquetes
Si un paquete pertenece a un registro que admite permisos granulares, cualquiera que tenga permisos de administrador en el paquete puede establecer que sea privado o público, y puede conceder permisos de acceso al paquete que son independientes de los permisos establecidos en los niveles de organización y repositorio. Para obtener la lista de registros que admiten permisos granulares, consulta Acerca de los permisos para los Paquetes de GitHub.
En la mayoría de los registros, para extraer un paquete, debes autenticarte con un personal access token o GITHUB_TOKEN, independientemente de que el paquete sea público o privado. Sin embargo, en los datos Container registry, los paquetes públicos permiten el acceso anónimo y se pueden extraer sin autenticación ni inicio de sesión a través de la CLI.
Nota:
Si publicas un paquete vinculado a un repositorio, el paquete hereda, de manera predeterminada, sus permisos del repositorio vinculado. Para acceder a la configuración de permisos granulares del paquete, debes quitar los permisos heredados del paquete. Si eres el propietario de una organización, puedes deshabilitar la herencia automática de permisos para todos los paquetes nuevos cuyo ámbito sea la organización. Para más información, consulta Configurar la visibilidad y el control de accesos de un paquete y Configurar la visibilidad y el control de accesos de un paquete.
Al publicar un paquete, obtendrás automáticamente permisos de administrador para el paquete. Si publicas un paquete en una organización, cualquier persona con el rol owner en la organización también obtiene permisos de administrador para el paquete.
Para paquetes con ámbito en una cuenta personal, puedes otorgar un rol de acceso a cualquier persona. Para paquetes con ámbito en una organización, puedes otorgar un rol de acceso a cualquier persona o equipo en la organización.
Si usa un flujo de trabajo de GitHub Actions para administrar los paquetes, puede conceder un rol de acceso al repositorio en el que se almacena el flujo de trabajo en mediante el botón Agregar repositorio en "Administrar el acceso a acciones" en la configuración del paquete. Para más información, consulta Configurar la visibilidad y el control de accesos de un paquete.
| Permiso | Descripción del acceso |
|---|---|
| Lectura | Puede descargar el paquete. Puede leer los metadatos del paquete. |
| Escritura | Puede cargar y descargar este paquete. Puede leer y escribir metadatos del paquete. |
| Administración | Puede cargar, descargar, borrar y administrar este paquete. Puede leer y escribir metadatos del paquete. Puede conceder permisos de paquete. |
Nota:
La capacidad de que los flujos de trabajo de GitHub Actions eliminen y restauren paquetes mediante la API de REST se encuentra actualmente en versión preliminar pública y está sujeta a cambios.
Configurar el acceso a los paquetes para tu cuenta personal
Si tienes permisos de administrador en un paquete cuyo ámbito es una cuenta personal, puedes asignar roles de lectura, escritura o administrador a otros usuarios. Para obtener más información sobre estos roles de permiso, consulta Acerca de la herencia de permisos de acceso.
Si tu paquete es privado o interno y tiene como ámbito una organización, entonces solo puedes darles acceso a otros miembros o equipos de la misma.
-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En "Administrar acceso" o "Acceso heredado", haz clic en Invitar equipos o personas y escribe el nombre real, el nombre de usuario o la dirección de correo electrónico de la persona a la que quieras conceder acceso. No se puede conceder acceso a Teams a un paquete cuyo ámbito es una cuenta personal.
-
Junto al nombre del equipo o el usuario, utiliza el menú desplegable Rol para seleccionar un nivel de permisos que desees.
Se otorgará acceso automáticamente a los usuarios seleccionados y no necesitarán aceptar una invitación previamente.
Configurar el acceso a los paquetes para una organización
Si tienes permisos de administrador en un paquete cuyo ámbito es una organización, puedes asignar roles de lectura, escritura o administración a otros usuarios y equipos. Para obtener más información sobre estos roles de permiso, consulta Acerca de la herencia de permisos de acceso.
Si tu paquete es privado o interno y tiene como ámbito una organización, entonces solo puedes darles acceso a otros miembros o equipos de la misma.
-
En GitHub, navega a la página principal de tu organización.
-
En el nombre de la organización, haz clic en la pestaña Packages.

-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En "Administrar acceso" o "Acceso heredado", haz clic en Invitar equipos o personas y escribe el nombre real, el nombre de usuario o la dirección de correo electrónico de la persona a la que quieras conceder acceso. También puede escribir un nombre de equipo de la organización para conceder acceso a todos los miembros del equipo.
-
Junto al nombre del equipo o el usuario, utiliza el menú desplegable Rol para seleccionar un nivel de permisos que desees.
Se otorgará acceso automáticamente a los usuarios o equipos seleccionados y no necesitarán aceptar una invitación previamente.
Seleccionar si un paquete hereda los permisos de un repositorio
De forma predeterminada, si publica un paquete vinculado a un repositorio, el paquete hereda o no los permisos de acceso del repositorio vinculado. Se recomienda permitir que los paquetes hereden sus permisos de un repositorio, ya que esto simplifica el proceso de administración del acceso a un paquete.
Cuando un paquete hereda los permisos de un repositorio, para conceder o quitar el acceso al paquete, debes configurar los permisos del repositorio vinculado.
Si desea configurar la configuración de acceso de un paquete en un nivel granular, independientemente del repositorio vinculado, debe quitar los permisos heredados del paquete.
Nota:
Si cambias la forma en que un paquete obtiene sus permisos de acceso, se sobrescribirán los permisos existentes para el paquete.
Seleccionar la configuración de herencia para los paquetes que tienen como ámbito una cuenta personal
-
En GitHub, navega hasta la página principal de tu cuenta personal.
-
En la esquina superior derecha de GitHub, haz clic en tu foto de perfil y después en Your profile.

-
En la página del perfil, en el encabezado, haz clic en la pestaña Packages.
-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
Para elegir si un paquete hereda los permisos de acceso del repositorio vinculado, en "Administrar acceso" o "Acceso heredado", selecciona o anula la selección de Heredar acceso del repositorio (recomendado) .
Nota:
El nombre de esta sección cambia en función de si el paquete ya hereda sus permisos de un repositorio.
Seleccionar la configuración de herencia para los paquetes que tienen como ámbito una organización
Sugerencia
Si eres el propietario de una organización, puedes impedir que todos los paquetes nuevos cuyo ámbito sea la organización hereden automáticamente los permisos de un repositorio vinculado. Para obtener más información, consulta Deshabilitar la herencia automática de los permisos de acceso de una organización a continuación.
-
En GitHub, navega a la página principal de tu organización.
-
En el nombre de la organización, haz clic en la pestaña Packages.

-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
Para elegir si un paquete hereda los permisos de acceso del repositorio vinculado, en "Administrar acceso" o "Acceso heredado", selecciona o anula la selección de Heredar acceso del repositorio (recomendado) .
Nota:
El nombre de esta sección cambia en función de si el paquete ya hereda sus permisos de un repositorio.
Deshabilitar la herencia automática de los permisos de acceso de una organización
De manera predeterminada, si publicas un paquete vinculado a un repositorio, el paquete hereda automáticamente los permisos de acceso del repositorio vinculado. Como propietario de la organización, puedes deshabilitar la herencia automática para todos los paquetes vinculados a tu organización.
Si deshabilitas la herencia automática de los permisos de acceso, los nuevos paquetes cuyo ámbito sea la organización no heredarán automáticamente los permisos de un repositorio vinculado. Sin embargo, cualquier persona con permisos de administrador en un paquete de la organización podrá habilitar o deshabilitar la herencia de permisos de ese paquete.
-
En la esquina superior derecha de GitHub, haz clic en la foto del perfil y luego en Your organizations.
-
Seleccione una organización haciendo clic en ella.
-
Debajo del nombre de la organización, haz clic en Settings. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

-
En la barra lateral, en la sección "Código, planeación y automatización", haga clic en Paquetes.
-
En "Configuración predeterminada del paquete", desactiva la selección de Heredar acceso del repositorio de origen.
-
Haga clic en Save(Guardar).
Garantizar el acceso al flujo de trabajo para tu paquete
Para los paquetes de una cuenta personal o de una organización, para garantizar que un flujo de trabajo GitHub Actions tenga acceso a su paquete, debe conceder acceso explícito al repositorio donde está almacenado el flujo de trabajo.
El repositorio especificado no necesita ser aquél en donde se mantiene el código fuente del paquete. Puedes otorgar acceso de flujo de trabajo para un paquete a varios repositorios.
Si publica un paquete vinculado a un repositorio, GitHub Actions los flujos de trabajo del repositorio vinculado obtienen acceso automáticamente al paquete, a menos que la organización haya deshabilitado la herencia automática de permisos de acceso. Para obtener más información, consulta Acerca de la herencia de los permisos de acceso más arriba.
Conceder acceso a un repositorio aquí también permite a Dependabot obtener este paquete automáticamente, sin necesidad de configuración del registro personal access tokens o dependabot.yml. Consulte Acceso automático de Dependabot a registros alojados en GitHub.
Nota:
- La sincronización del paquete con un repositorio mediante el botón Agregar repositorio en "Administrar el acceso a acciones" en la configuración del paquete es diferente de conectar el paquete a un repositorio. Para obtener más información sobre cómo vincular un repositorio al paquete, consulta Conectar un repositorio a un paquete.
- Puede optar por limitar los permisos a los trabajos de flujo de trabajo mediante la clave
permissionsy el ámbitopackages. Para más información, consulta Uso de GITHUB_TOKEN para la autenticación en flujos de trabajo. - Si concedes a un repositorio público acceso a paquetes privados, es posible que las bifurcaciones del repositorio puedan acceder a los paquetes privados.
GitHub Actions acceso para paquetes asociados a cuentas personales
-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
Para garantizar que tu flujo de trabajo tiene acceso a tu paquete, debes agregar el repositorio donde se almacena el flujo de trabajo. En "Administrar el acceso a Acciones", az clic en Agregar repositorio y busca el repositorio que quieras agregar.

-
Usa el menú desplegable Rol para seleccionar el nivel de acceso predeterminado que te gustaría que tuviera el repositorio en tu paquete.
Para personalizar aún más el acceso al paquete, consulta Configurar el acceso a los paquetes para tu cuenta personal.
GitHub Actions acceso a paquetes pertenecientes a organizaciones
-
En GitHub, navega a la página principal de tu organización.
-
En el nombre de la organización, haz clic en la pestaña Packages.

-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En "Administrar el acceso a Acciones", az clic en Agregar repositorio y busca el repositorio que quieras agregar.

-
Usa el menú desplegable Rol para seleccionar el nivel de acceso predeterminado que te gustaría que tuviera el repositorio en tu paquete.
Para personalizar aún más el acceso al paquete, consulta Configurar el acceso a los paquetes para una organización.
Garantizar el GitHub Codespaces acceso a tu paquete
De manera predeterminada, un codespace puede acceder sin problemas a determinados paquetes que admiten permisos detallados, tales como los paquetes que se publican en el mismo repositorio con la opción de Heredar acceso seleccionada. Para obtener la lista de GitHub Packages registros que admiten permisos granulares y acceso sin problemas GitHub Codespaces , consulte Acerca de los permisos para los Paquetes de GitHub.
De otra manera, para asegurarte de que un codespace tiene acceso a tu paquete, debes otorgar acceso al repositorio en donde se esté lanzando dicho codespace.
El repositorio especificado no necesita ser aquél en donde se mantiene el código fuente del paquete. Puedes otorgar acceso a un paquete a codespaces en múltiples repositorios.
Una vez que hayas seleccionado el paquete que deseas compartir con Codespaces en un repositorio, puedes otorgar acceso a ese repositorio.
-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En "Manage Codespaces access", haga clic en Add repository.

-
Busca el repositorio que quieras agregar.
-
Repite los pasos para cualquier repositorio adicional al que quieras otorgarle acceso.
-
Si el codespace de un repositorio ya no necesita acceso a un paquete, puedes eliminar el acceso. Haga clic en .

Configurar la visibilidad de los paquetes para tu cuenta personal
Cuando publicas un paquete por primera vez que tiene como ámbito tu cuenta personal, la visibilidad predeterminada es privada y solo tú puedes verlo. Puedes modificar el acceso a los paquetes públicos o privados si cambias la configuración de acceso.
-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En la parte inferior de la página, en "Zona de peligro", haz clic en Cambiar visibilidad.
-
Selecciona una configuración de visibilidad:
-
Para que cualquier usuario pueda ver el paquete, selecciona Público.
Advertencia
Una vez que hagas público un paquete, no podrás volver a hacerlo privado.
-
Para que una selección personalizada de usuarios pueda ver el paquete, selecciona Privado.
-
-
Para confirmar, escribe el nombre del paquete y, a continuación, haz clic en Entiendo las consecuencias, cambiar la visibilidad del paquete.
Visibilidad de creación de un paquete para los miembros de una organización
En el caso de los registros que admiten permisos granulares, puedes elegir la visibilidad de los paquetes que los miembros de la organización pueden publicar de forma predeterminada. Para obtener la lista de estos registros, consulta Acerca de los permisos para los Paquetes de GitHub.
-
En la esquina superior derecha de GitHub, haz clic en la foto del perfil y luego en Your organizations.
-
Seleccione una organización haciendo clic en ella.
-
Debajo del nombre de la organización, haz clic en Settings. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

-
En la izquierda, haga clic en Packages.
-
En "Creación de paquetes", elige si quieres habilitar la creación de paquetes públicos, privados o internos.
-
Para permitir que los miembros de la organización creen paquetes públicos, haz clic en Público.
-
Para permitir que los miembros de la organización creen paquetes privados que solo puedan ver otros miembros de la organización, haz clic en Privado. Puedes personalizar aún más la visibilidad de los paquetes privados.
-
Para permitir que los miembros de la organización creen paquetes internos que puedan ver todos los miembros de la organización, haz clic en Interno. Si la organización pertenece a una empresa, todos los miembros de la empresa podrán ver los paquetes.
-
Configurar la visibilidad de los paquetes para una organización
Cuando publicas un paquete por primera vez, la visibilidad predeterminada es privada y solo tú puedes verlo. Puedes otorgar roles de acceso diferentes a los usuarios o equipos para tu paquete a través de la configuración de acceso. Una vez que hagas tu paquete público, no puedes hacerlo privado nuevamente.
-
En GitHub, navega a la página principal de tu organización.
-
En el nombre de la organización, haz clic en la pestaña Packages.

-
Busca y haz clic en el nombre del paquete que quieres administrar.
-
En la página de aterrizaje del paquete, en el lado derecho, haz clic en Package settings.

-
En la parte inferior de la página, en "Zona de peligro", haz clic en Cambiar visibilidad y elige una configuración de visibilidad:
-
Para que cualquier usuario pueda ver el paquete, haz clic en Público.
Advertencia
Una vez que hagas público un paquete, no podrás volver a hacerlo privado.
-
Para que el paquete sea visible para una selección personalizada de personas de su organización, haga clic en Privado.
-