Skip to content

Commit

Permalink
ENGDOCS-2072b
Browse files Browse the repository at this point in the history
  • Loading branch information
aevesdocker committed May 23, 2024
1 parent 054f727 commit 92c001b
Show file tree
Hide file tree
Showing 19 changed files with 369 additions and 19 deletions.
2 changes: 1 addition & 1 deletion content/admin/faqs/organization-faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ No. Organization owners can invite users through email and also choose a team fo

### Can I force my organization's members to authenticate before using Docker Desktop and are there any benefits?

Yes. You can [enforce sign-in](../../security/for-admins/configure-sign-in.md) and some benefits are:
Yes. You can [enforce sign-in](../../security/for-admins/enforce-sign-in/_index.md) and some benefits are:

- Administrators can enforce features like [Image Access Management](../../security/for-admins/image-access-management.md) and [Registry Access Management](../../security/for-admins/registry-access-management.md).
- Administrators can ensure compliance by blocking Docker Desktop usage for users who don't sign in as members of the organization.
Expand Down
2 changes: 1 addition & 1 deletion content/desktop/extensions/private-marketplace.md
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ When you select the **Extensions** tab, you should see the private marketplace l

Once you’ve confirmed that the private marketplace configuration works, the final step is to distribute the files to the developers’ machines with the MDM software your organization uses. For example, [Jamf](https://www.jamf.com/).

Make sure your developers are signed in to Docker Desktop in order for the private marketplace configuration to take effect. As an administrator, you should [configure a registry.json to enforce Docker Desktop sign-in](../../security/for-admins/configure-sign-in.md).
Make sure your developers are signed in to Docker Desktop in order for the private marketplace configuration to take effect. As an administrator, you can [enforce sign-in](../../security/for-admins/enforce-sign-in/_index.md).

## Feedback

Expand Down
2 changes: 1 addition & 1 deletion content/desktop/get-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ aliases:

Docker recommends that you authenticate using the **Sign in** option in the top-right corner of the Docker Dashboard.

In large enterprises where admin access is restricted, administrators can [Configure registry.json to enforce sign-in](../security/for-admins/configure-sign-in.md).
In large enterprises where admin access is restricted, administrators can [enforce sign-in](../security/for-admins/enforce-sign-in/_index.md).

Check warning on line 34 in content/desktop/get-started.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'administrator' instead of 'admin' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'administrator' instead of 'admin'", "location": {"path": "content/desktop/get-started.md", "range": {"start": {"line": 34, "column": 28}}}, "severity": "INFO"}

> **Tip**
>
Expand Down
2 changes: 1 addition & 1 deletion content/desktop/hardened-desktop/air-gapped-containers.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ You can choose:

## Configuration

Assuming [enforced sign-in](../../security/for-admins/configure-sign-in.md) and [Settings Management](settings-management/_index.md) are enabled, add the new proxy configuration to the `admin-settings.json` file. For example:
Assuming [enforced sign-in](../../../security/for-admins/enforce-sign-in/_index.md) and [Settings Management](settings-management/_index.md) are enabled, add the new proxy configuration to the `admin-settings.json` file. For example:

```json
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ To enable Enhanced Container Isolation as a developer:

#### As an admin

To enable Enhanced Container Isolation as an admin, you first need to [configure a `registry.json` file to enforce sign-in](../../../security/for-admins/configure-sign-in.md).
To enable Enhanced Container Isolation as an admin, you first need to [enforce sign-in](../../../security/for-admins/enforce-sign-in/_index.md).

Check warning on line 95 in content/desktop/hardened-desktop/enhanced-container-isolation/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'administrator' instead of 'admin' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'administrator' instead of 'admin'", "location": {"path": "content/desktop/hardened-desktop/enhanced-container-isolation/_index.md", "range": {"start": {"line": 95, "column": 46}}}, "severity": "INFO"}
This is because the Enhanced Container Isolation feature requires a Docker
Business subscription and therefore your Docker Desktop users must authenticate
to your organization for this configuration to take effect.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ For more details on the syntax and options admins can set, see [Configure Settin

### How do I set up and enforce Settings Management?

As an administrator, you first need to [configure a registry.json to enforce sign-in](../../../security/for-admins/configure-sign-in.md). This is because the Settings Management feature requires a Docker Business subscription and therefore your Docker Desktop developers must authenticate to your organization for this configuration to take effect.
As an administrator, you first need to [configure a registry.json to enforce sign-in](../../../security/for-admins/enforce-sign-in/_index.md). This is because the Settings Management feature requires a Docker Business subscription and therefore your Docker Desktop developers must authenticate to your organization for this configuration to take effect.

Next, you must either manually [create and configure the admin-settings.json file](configure.md), or use the `--admin-settings` installer flag on [macOS](../../install/mac-install.md#install-from-the-command-line) or [Windows](../../install/windows-install.md#install-from-the-command-line) to automatically create the `admin-settings.json` and save it in the correct location.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Settings Management is designed specifically for organizations who don’t give
### Prerequisites

- [Download and install Docker Desktop 4.13.0 or later](../../release-notes.md).
- As an admin, you need to [configure a registry.json to enforce sign-in](../../../security/for-admins/configure-sign-in.md). This is because this feature requires a Docker Business subscription and therefore your Docker Desktop users must authenticate to your organization for this configuration to take effect.
- As an admin, you need to [configure a registry.json to enforce sign-in](../../../security/for-admins/enforce-sign-in/_index.md). This is because this feature requires a Docker Business subscription and therefore your Docker Desktop users must authenticate to your organization for this configuration to take effect.

Check warning on line 18 in content/desktop/hardened-desktop/settings-management/configure.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'administrator' instead of 'admin' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'administrator' instead of 'admin'", "location": {"path": "content/desktop/hardened-desktop/settings-management/configure.md", "range": {"start": {"line": 18, "column": 9}}}, "severity": "INFO"}

### Step one: Create the `admin-settings.json` file and save it in the correct location

Expand Down
2 changes: 1 addition & 1 deletion content/docker-hub/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ GitHub and Bitbucket and push them to Docker Hub.
{{< tab name="What administrative tasks can I perform in Docker Hub?" >}}
* [Create and manage teams and organizations](orgs.md)
* [Create a company](../admin/company/new-company.md)
* [Enforce sign in](configure-sign-in.md)
* [Enforce sign in](../security/for-admins/enforce-sign-in/_index.md)
* Set up [SSO](../security/for-admins/single-sign-on/index.md) and [SCIM](../security/for-admins/provisioning/scim.md)
* Use [Group mapping](group-mapping.md)
* [Carry out domain audits](domain-audit.md)
Expand Down
2 changes: 1 addition & 1 deletion content/docker-hub/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ Take a look at the [Docker Public Roadmap](https://github.com/docker/roadmap/pro

### Bug fixes and enhancements

- In Docker Hub, you can now download a [registry.json](../security/for-admins/configure-sign-in.md) file or copy the commands to create a registry.json file to enforce sign-in for your organization.
- In Docker Hub, you can now download a [registry.json](../security/for-admins/enforce-sign-in/_index.md) file or copy the commands to create a registry.json file to enforce sign-in for your organization.

## 2022-09-19

Expand Down
2 changes: 1 addition & 1 deletion content/security/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ grid_admins:
link: /desktop/hardened-desktop/air-gapped-containers/
- title: Enforce sign-in
description: Configure sign-in for members of your teams and organizations.
link: /security/for-admins/configure-sign-in/
link: /security/for-admins/enforce-sign-in/
icon: passkey
- title: Domain audit
description: Identify uncaptured users in your organization.
Expand Down
2 changes: 1 addition & 1 deletion content/security/faqs/single-sign-on/enforcement-faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,5 @@ No. They are different features that you can use separately or together.
Enforcing SSO ensures that users sign in using their SSO credentials instead of their Docker ID. One of the benefits is that SSO enables you to better manage user credentials.

Enforcing sign-in to Docker Desktop ensures that users always sign in to an
account that's a member of your organization. The benefits are that your organization's security settings are always applied to the user's session and your users always receive the benefits of your subscription. For more details, see [Enforce sign-in for Desktop](../../../security/for-admins/configure-sign-in.md).
account that's a member of your organization. The benefits are that your organization's security settings are always applied to the user's session and your users always receive the benefits of your subscription. For more details, see [Enforce sign-in for Desktop](../../../security/for-admins/enforce-sign-in/_index.md).

4 changes: 2 additions & 2 deletions content/security/faqs/single-sign-on/users-faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ If users attempt to sign in through the CLI, they must authenticate using a pers

### Is it possible to force users of Docker Desktop to authenticate, and/or authenticate using their company’s domain?

Yes. Admins can force users to authenticate with Docker Desktop by provisioning a [`registry.json`](../../../security/for-admins/configure-sign-in.md) configuration file. The `registry.json` file will force users to authenticate as a user that's configured in the `allowedOrgs` list in the `registry.json` file.
Yes. Admins can [force users to authenticate with Docker Desktop](../../for-admins/enforce-sign-in/_index.md) using a registry key, `.plist` file, or `registry.json` file.

Once SSO enforcement is set up on their Docker Business organization or company on Hub, when the user is forced to authenticate with Docker Desktop, the SSO enforcement will also force users to authenticate through SSO with their IdP (instead of authenticating using their username and password).

Expand All @@ -51,7 +51,7 @@ Yes, you can convert existing users to an SSO account. To convert users from a n
- Each user has created a PAT to replace their passwords to allow them to sign in through Docker CLI.
- Confirm that all CI/CD pipelines automation systems have replaced their passwords with PATs.

For detailed prerequisites and instructions on how to enable SSO, see [Configure Single Sign-on](../../../security/for-admins/configure-sign-in.md).
For detailed prerequisites and instructions on how to enable SSO, see [Configure Single Sign-on](../../../security/for-admins/single-sign-on/configure/_index.md).

### What impact can users expect once we start onboarding them to SSO accounts?

Expand Down
2 changes: 1 addition & 1 deletion content/security/for-admins/domain-audit.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Domain audit can't identify the following Docker users in your environment:
- Users who access Docker Desktop without authenticating
- Users who authenticate using an account that doesn't have an email address associated with one of your verified domains

Although domain audit can't identify all Docker users in your environment, you can enforce sign-in to prevent unidentifiable users from accessing Docker Desktop in your environment. For more details about enforcing sign-in, see [Configure registry.json to enforce sign-in](configure-sign-in.md).
Although domain audit can't identify all Docker users in your environment, you can enforce sign-in to prevent unidentifiable users from accessing Docker Desktop in your environment. For more details about enforcing sign-in, see [Configure registry.json to enforce sign-in](../for-admins/enforce-sign-in/_index.md).

## Prerequisites

Expand Down
45 changes: 45 additions & 0 deletions content/security/for-admins/enforce-sign-in/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
description: Understand what happens when you force users to sign into Docker Desktop
toc_max: 2
keywords: authentication, registry.json, configure, enforce sign-in, docker desktop, security,
title: Enforce sign-in for Docker Desktop
aliases:
- /docker-hub/configure-sign-in/
- /security/for-admins/configure-sign-in/
---

By default, members of your organization can use Docker Desktop without signing
in. When users don’t sign in as a member of your organization, they don’t
receive the [benefits of your organization’s
subscription](../../../subscription/core-subscription/details.md) and they can circumvent [Docker’s
security features](../../../desktop/hardened-desktop/_index.md) for your organization.

There are multiple ways you can enforce sign-in, depending on your companies' set up and preferences:
- [Registry key method (Windows only)](methods.md#registry-key-method-windows-only)
- [`.plist` method (Mac only)](methods.md#plist-method-mac-only)
- [`registry.json` method (All)](methods.md#registryjson-method-all)

## How is sign-in enforced?

When Docker Desktop starts and it detects a registry key, a `.plist` file or `registry.json` file, the
following occurs:

- A **Sign in required!** prompt appears requiring the user to sign
in as a member of your organization to use Docker Desktop. ![Enforce Sign-in
Prompt](../../images/enforce-sign-in.png?w=400)
- When a user signs in to an account that isn’t a member of your organization,
they are automatically signed out and can’t use Docker Desktop. The user
can select **Sign in** and try again.
- When a user signs in to an account that is a member of your organization, they
can use Docker Desktop.
- When a user signs out, the **Sign in required!** prompt appears and they can
no longer use Docker Desktop.

> **Enforce sign-in vs enforce SSO**

Check warning on line 38 in content/security/for-admins/enforce-sign-in/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'versus' instead of 'vs' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'versus' instead of 'vs'", "location": {"path": "content/security/for-admins/enforce-sign-in/_index.md", "range": {"start": {"line": 38, "column": 21}}}, "severity": "INFO"}
>
> Enforcing sign-in ensures that users are required to sign in to use Docker Desktop.
> If your organization is also using single sign-on (SSO), you can optionally enforce SSO.
> This means that your users must use SSO to sign in, instead of a username and password.
> When you enforce sign-in and enforce SSO, your users must sign in and must use SSO to do so.
> See [Enforce SSO](/security/for-admins/single-sign-on/connect#optional-enforce-sso) for details on how to enable this for your SSO connection.
{ .tip }
Loading

0 comments on commit 92c001b

Please sign in to comment.