Skip to content

Commit 88fa3ee

Browse files
Copilotkbukum1brettfomchammer01
authored
Document Cloudsmith and GCP OIDC support for org-level private registries (#61003)
Co-authored-by: kbukum1 <kbukum1@github.com> Co-authored-by: brettfo <926281+brettfo@users.noreply.github.com> Co-authored-by: mchammer01 <42146119+mchammer01@users.noreply.github.com>
1 parent 418a269 commit 88fa3ee

2 files changed

Lines changed: 36 additions & 1 deletion

File tree

content/code-security/how-tos/secure-at-scale/configure-organization-security/manage-usage-and-access/giving-org-access-private-registries.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,8 @@ When you select **OIDC** as the authentication method for a private registry, ch
9494

9595
* **Azure**: Enter the **Tenant ID** (Azure AD tenant ID) and **Client ID** (Azure AD application client ID). You must configure a federated credential in Azure AD that trusts {% data variables.product.github %}'s OIDC provider.
9696
* **AWS CodeArtifact**: Enter the **AWS Region**, **Account ID** (AWS account ID), **Role Name** (IAM role name), **Domain** (CodeArtifact domain), and **Domain Owner** (CodeArtifact domain owner / AWS account ID). You can optionally provide an **Audience**. You must configure an IAM OIDC identity provider in AWS that trusts {% data variables.product.github %}'s OIDC provider.
97+
* **Cloudsmith**: Enter the **Namespace** (Cloudsmith Organization namespace), **Service Account Slug** (Cloudsmith service account slug), and **Audience** (required). You can optionally provide an **API Host** (defaults to `api.cloudsmith.io`). You must configure an OpenID Connect provider in Cloudsmith that trusts {% data variables.product.github %}'s OIDC provider.
98+
* **Google Cloud Artifact Registry**: Enter the **Workload Identity Provider** (the full resource name of the Workload Identity Provider, for example `projects/PROJECT-NUMBER/locations/global/workloadIdentityPools/POOL/providers/PROVIDER`) and **Service Account** (the email of the GCP service account to impersonate). You can optionally provide an **Audience**. You must configure a Workload Identity Pool and Provider in GCP that trusts {% data variables.product.github %}'s OIDC provider.
9799
* **JFrog Artifactory**: Enter the **OIDC Provider Name**. You can optionally provide an **Audience** and **Identity Mapping Name**.
98100

99101
The authentication type of a private registry cannot be changed after creation. To switch from OIDC to another authentication method, or vice versa, delete the existing registry and create a new one.

content/code-security/how-tos/secure-your-supply-chain/manage-your-dependency-security/configuring-access-to-private-registries-for-dependabot.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,12 @@ With OIDC-based authentication, {% data variables.product.prodname_dependabot %}
139139

140140
{% endif %}
141141

142-
{% data variables.product.prodname_dependabot %} supports OIDC authentication for any registry type that uses `username` and `password` authentication, when the registry is hosted on one of the following cloud providers:
142+
{% data variables.product.prodname_dependabot %} supports OIDC authentication for any registry type that uses `username` and `password` authentication, when the registry is hosted on one of the following providers:
143143

144144
* AWS CodeArtifact
145145
* Azure DevOps Artifacts
146+
* Cloudsmith
147+
* Google Cloud Artifact Registry
146148
* JFrog Artifactory
147149

148150
To configure OIDC authentication, you need to specify different values instead of `username` and `password` in your registry configuration.
@@ -177,6 +179,37 @@ registries:
177179
client-id: {% raw %}${{ secrets.AZURE_CLIENT_ID }}{% endraw %}
178180
```
179181

182+
### Cloudsmith
183+
184+
Cloudsmith requires the values `namespace`, `service-slug`, and `audience`. The `api-host` field is optional and defaults to `api.cloudsmith.io`:
185+
186+
```yaml
187+
registries:
188+
my-cloudsmith-feed:
189+
type: npm-registry
190+
url: https://dl.cloudsmith.io/MY-NAMESPACE/MY-REPOSITORY/npm/
191+
namespace: MY-NAMESPACE
192+
service-slug: MY-SERVICE-SLUG
193+
audience: https://github.com/GITHUB-ORG
194+
api-host: api.cloudsmith.io # if required by your feed
195+
```
196+
197+
### Google Cloud Artifact Registry
198+
199+
Google Cloud Artifact Registry requires the values `url` and
200+
`workload-identity-provider`. The values `service-account` and `audience` are
201+
optional:
202+
203+
```yaml
204+
registries:
205+
my-gcp-artifact-registry:
206+
type: docker-registry
207+
url: https://REGION-docker.pkg.dev
208+
workload-identity-provider: projects/PROJECT-NUMBER/locations/global/workloadIdentityPools/POOL/providers/PROVIDER
209+
service-account: SA-NAME@PROJECT-ID.iam.gserviceaccount.com # if required by your provider
210+
audience: MY-AUDIENCE # if required by your provider
211+
```
212+
180213
### JFrog Artifactory
181214

182215
JFrog Artifactory requires the values `url` and `jfrog-oidc-provider-name`. The values `audience` and `identity-mapping-name` are optional:

0 commit comments

Comments
 (0)