You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/manuals/security/for-admins/enforce-sign-in/methods.md
+95-6Lines changed: 95 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ To enforce sign-in for Docker Desktop on Windows, you can configure a registry k
23
23
2. Create a multi-string value `allowedOrgs`.
24
24
> [!IMPORTANT]
25
25
>
26
-
> Only one entry for `allowedOrgs` is currently supported. If you add more than one value, sign-in enforcement silently fails.
26
+
> As of Docker Desktop version 4.36 and later, you can add more than one organization. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
27
27
3. Use your organization's name, all lowercase as string data.
28
28
4. Restart Docker Desktop.
29
29
5. When Docker Desktop restarts, verify that the **Sign in required!** prompt appears.
@@ -43,11 +43,84 @@ The following example outlines how to deploy a registry key to enforce sign-in o
43
43
3. Within the GPO, navigate to **Computer Configuration** and select **Preferences**.
44
44
4. Select **Windows Settings** then **Registry**.
45
45
5. To add the registry item, right-click on the **Registry** node, select **New**, and then **Registry Item**.
46
-
6. Configure the new registry item to match the registry script you created, specifying the action as **Update**. Make sure you input the correct path, value name (`allowedOrgs`), and value data (your organization’s name).
46
+
6. Configure the new registry item to match the registry script you created, specifying the action as **Update**. Make sure you input the correct path, value name (`allowedOrgs`), and value data (your organization names).
47
47
7. Link the GPO to an Organizational Unit (OU) that contains the machines you want to apply this setting to.
48
48
8. Test the GPO on a small set of machines first to ensure it behaves as expected. You can use the `gpupdate /force` command on a test machine to manually refresh its group policy settings and check the registry to confirm the changes.
49
49
9. Once verified, you can proceed with broader deployment. Monitor the deployment to ensure the settings are applied correctly across the organization's computers.
50
50
51
+
## Configuration profiles method (Mac only)
52
+
53
+
> [!NOTE]
54
+
>
55
+
> The configuration profiles method is in [Early Access](/manuals/release-lifecycle.md)
56
+
> and is available with Docker Desktop version 4.36 and later.
57
+
58
+
Configuration profiles are a feature of macOS that let you distribute
59
+
configuration information to the Macs you manage. It is the safest method to
60
+
enforce sign-in on macOS because the installed configuration profiles are
61
+
protected by Apples' System Integrity Protection (SIP) and therefore can't be
62
+
tampered with by the users.
63
+
64
+
1. Save the following XML code to a file with the suffix `.mobileconfig`, for example
65
+
`docker.mobileconfig`:
66
+
67
+
```xml
68
+
<?xml version="1.0" encoding="UTF-8"?>
69
+
<!DOCTYPEplist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<string>Config profile to enforce Docker Desktop settings for allowed organizations.</string>
105
+
<key>PayloadOrganization</key>
106
+
<string>Your Company Name</string>
107
+
</dict>
108
+
</plist>
109
+
```
110
+
111
+
2. Change the placeholders `Your Company Name` to the name of your company.
112
+
113
+
3. Add your organization name. The names of the allowed organizations are stored in the `allowedOrgs`
114
+
property. It can contain either the name of a single organization or a list of organization names,
115
+
separated by a semicolon:
116
+
117
+
```xml
118
+
<key>allowedOrgs</key>
119
+
<string>first_org;second_org</string>
120
+
```
121
+
122
+
4. Use a MDM solution to distribute your modified `.mobileconfig` file to your macOS clients.
123
+
51
124
## plist method (Mac only)
52
125
53
126
> [!NOTE]
@@ -66,14 +139,15 @@ To enforce sign-in for Docker Desktop on macOS, you can use a `plist` file that
66
139
<dict>
67
140
<key>allowedOrgs</key>
68
141
<array>
69
-
<string>myorg</string>
142
+
<string>myorg1</string>
143
+
<string>myorg2</string>
70
144
</array>
71
145
</dict>
72
146
</plist>
73
147
```
74
148
> [!IMPORTANT]
75
149
>
76
-
> Only one entry for `allowedOrgs` is currently supported. If you add more than one value, sign-in enforcement silently fails.
150
+
> As of Docker Desktop version 4.36 and later, you can add more than one organization. With Docker Desktop version 4.35 and earlier, sign-in enforcement silently fails if you add more than one organization.
77
151
78
152
3. Modify the file permissions to ensure the file cannot be edited by any non-administrator users.
79
153
4. Restart Docker Desktop.
@@ -140,12 +214,12 @@ details, see [Manage members](/admin/organization/members/).
140
214
141
215
```json
142
216
{
143
-
"allowedOrgs": ["myorg"]
217
+
"allowedOrgs": ["myorg1", "myorg2"]
144
218
}
145
219
```
146
220
> [!IMPORTANT]
147
221
>
148
-
> Only one entry for `allowedOrgs` is currently supported. If you add more than one value, sign-in enforcement silently fails.
222
+
> As of Docker Desktop version 4.36 and later, you can add more than one organization. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
149
223
150
224
4. Verify that sign-in is enforced.
151
225
@@ -182,6 +256,9 @@ If you're using the Windows Command Prompt:
> As of Docker Desktop version 4.36 and later, you can add more than one organization to a single `registry.json` file. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
185
262
186
263
{{< /tab >}}
187
264
{{< tab name="Mac" >}}
@@ -231,6 +308,10 @@ Path Owner Access
231
308
registry.json BUILTIN\Administrators NT AUTHORITY\SYSTEM Allow FullControl...
232
309
```
233
310
311
+
> [!IMPORTANT]
312
+
>
313
+
> As of Docker Desktop version 4.36 and later, you can add more than one organization to a single `registry.json` file. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
314
+
234
315
{{< /tab >}}
235
316
{{< tab name="Mac" >}}
236
317
@@ -264,6 +345,10 @@ $ sudo ls -l "/Library/Application Support/com.docker.docker/registry.json"
> As of Docker Desktop version 4.36 and later, you can add more than one organization to a single `registry.json` file. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
351
+
267
352
{{< /tab >}}
268
353
{{< tab name="Linux" >}}
269
354
@@ -297,6 +382,10 @@ $ sudo ls -l /usr/share/docker-desktop/registry/registry.json
> As of Docker Desktop version 4.36 and later, you can add more than one organization to a single `registry.json` file. With Docker Desktop version 4.35 and earlier, if you add more than one organization sign-in enforcement silently fails.
Copy file name to clipboardExpand all lines: layouts/shortcodes/admin-registry-access.html
+11-7Lines changed: 11 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -15,13 +15,17 @@
15
15
>
16
16
> When enabled, the Docker Hub registry is set by default, however you can also restrict this registry for your developers.
17
17
18
-
4. Select **Add registry** and enter your registry details in the applicable fields, and then select **Create** to add the registry to your list.
18
+
4. Select **Add registry** and enter your registry details in the applicable fields, and then select **Create** to add the registry to your list. There is no limit on the number of registries you can add.
19
19
5. Verify that the registry appears in your list and select **Save changes**.
20
20
21
-
> [!NOTE]
22
-
>
23
-
> Once you add a registry, it can take up to 24 hours for the changes to be enforced on your developers’ machines. If you want to apply the changes sooner, you must force a Docker logout on your developers’ machine and have the developers re-authenticate for Docker Desktop. Also, there is no limit on the number of registries you can add. See the Caveats section below to learn more about limitations when using this feature.
21
+
Once you add a registry, it can take up to 24 hours for the changes to be enforced on your developers’ machines.
24
22
25
-
> [!TIP]
26
-
>
27
-
> Since RAM sets policies about where content can be fetched from, the [ADD](/reference/dockerfile/#add) instruction of the Dockerfile, when the parameter of the ADD instruction is a URL, is also subject to registry restrictions. It's recommended that you add the domains of URL parameters to the list of allowed registry addresses under the Registry Access Management settings of your organization.
23
+
If you want to apply the changes sooner, you must force a Docker signout on your developers’ machine and have the developers re-authenticate for Docker Desktop. See the [Caveats](#caveats) section below to learn more about limitations when using this feature.
24
+
25
+
> [!IMPORTANT]
26
+
>
27
+
> Starting with Docker Desktop version 4.36, you can enforce sign-in for multiple organizations. If a developer belongs to multiple organizations with different RAM policies, only the RAM policy for the first organization listed in the `registry.json` file, `.plist` file, or registry key is enforced.
28
+
29
+
> [!TIP]
30
+
>
31
+
> Since RAM sets policies about where content can be fetched from, the [ADD](/reference/dockerfile/#add) instruction of the Dockerfile, when the parameter of the ADD instruction is a URL, is also subject to registry restrictions. It's recommended that you add the domains of URL parameters to the list of allowed registry addresses under the Registry Access Management settings of your organization.
0 commit comments