Skip to content

Commit fd2f88e

Browse files
Update access.md (#22505)
Added Gated Distribution information to docs page. <!--Delete sections as needed --> ## Description <!-- Tell us what you did and why --> ## Related issues or tickets <!-- Related issues, pull requests, or Jira tickets --> ## Reviews <!-- Notes for reviewers here --> <!-- List applicable reviews (optionally @tag reviewers) --> - [ ] Technical review - [ ] Editorial review - [ ] Product review --------- Signed-off-by: Craig <[email protected]> Co-authored-by: Craig Osterhout <[email protected]> Co-authored-by: Craig <[email protected]>
1 parent 2b68133 commit fd2f88e

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

content/manuals/docker-hub/repos/manage/access.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,3 +132,42 @@ To configure team repository permissions:
132132
Organizations can use OATs. OATs let you assign fine-grained repository access
133133
permissions to tokens. For more details, see [Organization access
134134
tokens](/manuals/security/for-admins/access-tokens.md).
135+
136+
## Gated distribution
137+
138+
{{< summary-bar feature_name="Gated distribution" >}}
139+
140+
Gated distribution allows publishers to securely share private container images with external customers or partners, without giving them full organization access or visibility into your teams, collaborators, or other repositories.
141+
142+
This feature is ideal for commercial software publishers who want to control who can pull specific images while preserving a clean separation between internal users and external consumers.
143+
144+
### Key features
145+
146+
- **Private repository distribution**: Content is stored in private repositories and only accessible to explicitly invited users.
147+
148+
- **External access without organization membership**: External users don't need to be added to your internal organization to pull images.
149+
150+
- **Pull-only permissions**: External users receive pull-only access and cannot push or modify repository content.
151+
152+
- **Invite-only access**: Access is granted through authenticated email invites, managed via API.
153+
154+
### Invite distributor members via API
155+
156+
> [!NOTE]
157+
> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for details about the access permissions for each role.
158+
159+
Distributor members (used for gated distribution) can only be invited using the Docker Hub API. UI-based invitations are not currently supported for this role. To invite distributor members, use the Bulk create invites API endpoint.
160+
161+
To invite distributor members:
162+
163+
1. Use the [Authentication API](https://docs.docker.com/reference/api/hub/latest/#tag/authentication-api/operation/AuthCreateAccessToken) to generate a bearer token for your Docker Hub account.
164+
165+
2. Create a team in the Hub UI or use the [Teams API](https://docs.docker.com/reference/api/hub/latest/#tag/groups/paths/~1v2~1orgs~1%7Borg_name%7D~1groups/post).
166+
167+
3. Grant repository access to the team:
168+
- In the Hub UI: Navigate to your repository settings and add the team with "Read-only" permissions
169+
- Using the [Repository Teams API](https://docs.docker.com/reference/api/hub/latest/#tag/repositories/paths/~1v2~1repositories~1%7Bnamespace%7D~1%7Brepository%7D~1groups/post): Assign the team to your repositories with "read-only" access level
170+
171+
4. Use the [Bulk create invites endpoint](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) to send email invites with the distributor member role. In the request body, set the "role" field to "distributor_member".
172+
173+
5. The invited user will receive an email with a link to accept the invite. After signing in with their Docker ID, they'll be granted pull-only access to the specified private repository as a distributor member.

data/summary.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,8 @@ Domain management:
173173
Enforce sign-in:
174174
subscription: [Business]
175175
for: Administrators
176+
Gated distribution:
177+
availability: Early Access
176178
General admin:
177179
for: Administrators
178180
GitHub Actions cache:

0 commit comments

Comments
 (0)