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
1. A script that validates the Pull Server is configured correctly. [PullServerSetupTests.ps1](https://github.com/PowerShell/xPSDesiredStateConfiguration/blob/dev/Examples/PullServerDeploymentVerificationTest/PullServerSetupTests.ps1).
186
+
1. A script that validates the Pull Server is configured correctly. [PullServerSetupTests.ps1](https://github.com/PowerShell/xPSDesiredStateConfiguration/blob/dev/DSCPullServerSetup/PullServerDeploymentVerificationTest/PullServerSetupTests.ps1).
Copy file name to clipboardExpand all lines: jea/overview.md
+8-5Lines changed: 8 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,11 @@
1
1
---
2
-
description:
3
-
manager: dongill
2
+
manager: carmonm
4
3
ms.topic: article
5
4
author: rpsqrd
6
5
ms.author: ryanpu
7
6
ms.prod: powershell
8
7
keywords: powershell,cmdlet,jea
9
-
ms.date: 2016-12-05
8
+
ms.date: 2017-03-07
10
9
title: Overview of Just Enough Administration
11
10
ms.technology: powershell
12
11
---
@@ -16,7 +15,7 @@ ms.technology: powershell
16
15
Just Enough Administration (JEA) is a security technology that enables delegated administration for anything that can be managed with PowerShell.
17
16
With JEA, you can:
18
17
19
-
-**Reduce the number of administrators on your machines** by leveraging virtual accounts that perform privileged actions on behalf of regular users.
18
+
-**Reduce the number of administrators on your machines** by leveraging virtual accounts or group managed service accounts that perform privileged actions on behalf of regular users.
20
19
-**Limit what users can do** by specifying which cmdlets, functions, and external commands they can run.
21
20
-**Better understand what your users are doing** with transcripts and logs that show you exactly which commands a user executed during their session.
22
21
@@ -49,4 +48,8 @@ To learn more about the requirements to use JEA and to learn how to create, use,
49
48
-[Registering JEA](register-jea.md) - create a JEA endpoint and make it available for users to connect to.
50
49
-[Using JEA](using-jea.md) - learn the various ways you can use JEA.
51
50
-[Security Considerations](security-considerations.md) - review security best practices and implications of JEA configuration options.
52
-
-[Audit and Report on JEA](audit-and-report.md) - learn how to audit and report on JEA endpoints.
51
+
-[Audit and Report on JEA](audit-and-report.md) - learn how to audit and report on JEA endpoints.
52
+
53
+
## Samples and DSC resource
54
+
55
+
Sample JEA configurations and the JEA DSC resource can be found in the [JEA GitHub repository](https://github.com/PowerShell/JEA).
Copy file name to clipboardExpand all lines: jea/prerequisites.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: rpsqrd
5
5
ms.author: ryanpu
6
6
ms.prod: powershell
7
7
keywords: powershell,cmdlet,jea
8
-
ms.date: 2016-12-05
8
+
ms.date: 2017-03-07
9
9
title: JEA Prerequisites
10
10
ms.technology: powershell
11
11
---
@@ -18,6 +18,7 @@ Just Enough Administration is a feature included with Windows PowerShell 5.0 and
18
18
This topic describes the prerequisites that must be satisfied in order to start using JEA.
19
19
20
20
## Install JEA
21
+
21
22
JEA is available with Windows PowerShell 5.0 and higher, but for full functionality it is recommended that you install the latest version of PowerShell available for your system.
22
23
The following table describes JEA's availability on Windows Server:
23
24
@@ -44,6 +45,7 @@ To get support for these features, update Windows to version 1607 (Anniversary U
44
45
<sup>2</sup> JEA cannot be configured to use virtual accounts on Windows 7.
45
46
46
47
### Check which version of PowerShell is installed
48
+
47
49
To check which version of PowerShell is installed on your system, check the `$PSVersionTable` variable in a Windows PowerShell prompt.
48
50
49
51
```powershell
@@ -58,6 +60,7 @@ You are ready to use JEA if the *Major* version is equal to or greater than **5*
58
60
For the best experience, and to have access to all the latest features, it is recommended that you upgrade to PowerShell version **5.1** when possible.
59
61
60
62
### Install Windows Management Framework
63
+
61
64
If you are running an older version of PowerShell, you will need to update your system with the latest Windows Management Framework (WMF) update.
62
65
Update packages and a link to the latest WMF release notes are available in the [Download Center](https://aka.ms/WMF5).
63
66
@@ -66,6 +69,7 @@ It is strongly recommended that you test your workload's compatibility with WMF
66
69
Windows 10 users should install the latest feature updates to obtain the current version of Windows PowerShell.
67
70
68
71
## Enable PowerShell Remoting
72
+
69
73
PowerShell Remoting provides the foundation on which JEA is built.
70
74
It is therefore necessary to ensure PowerShell Remoting is enabled and [properly secured](https://msdn.microsoft.com/en-us/powershell/scripting/setup/winrmsecurity) on your system before you can use JEA.
71
75
@@ -77,6 +81,7 @@ Enable-PSRemoting
77
81
```
78
82
79
83
## Enable PowerShell module and script block logging (optional)
84
+
80
85
The following steps enable logging for all PowerShell actions on your system.
81
86
PowerShell Module Logging is not required for JEA, however it is strongly recommended that you turn it on to ensure the commands users run are logged in a central location.
82
87
@@ -102,5 +107,6 @@ You can also enable system-wide PowerShell transcription through Group Policy.
102
107
-[Create a session configuration file](session-configurations.md)
103
108
104
109
## See also
110
+
105
111
-[Additional information about PowerShell Remoting and WinRM security](https://msdn.microsoft.com/en-us/powershell/scripting/setup/winrmsecurity)
106
112
-[*PowerShell ♥ the Blue Team* blog post on security](https://blogs.msdn.microsoft.com/powershell/2015/06/09/powershell-the-blue-team/)
Copy file name to clipboardExpand all lines: jea/role-capabilities.md
+24-15Lines changed: 24 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: rpsqrd
5
5
ms.author: ryanpu
6
6
ms.prod: powershell
7
7
keywords: powershell,cmdlet,jea
8
-
ms.date: 2016-12-05
8
+
ms.date: 2017-03-07
9
9
title: JEA Role Capabilities
10
10
ms.technology: powershell
11
11
---
@@ -234,7 +234,6 @@ The most complex merge logic affects cmdlets and functions, which can have their
234
234
235
235
The rules are as follows:
236
236
237
-
238
237
1. If a cmdlet is only made visible in one role, it will be visible to the user with any applicable parameter constraints.
239
238
2. If a cmdlet is made visible in more than one role, and each role has the same constraints on the cmdlet, the cmdlet will be visible to the user with those constraints.
240
239
3. If a cmdlet is made visible in more than one role, and each role allows a different set of parameters, the cmdlet and all of the parameters defined across every role will be visible to the user. If one role doesn't have constraints on the parameters, all parameters will be allowed.
@@ -243,19 +242,29 @@ The rules are as follows:
243
242
6. If a validate pattern is defined for the same cmdlet parameter in more than one role, any values that match any of the patterns will be allowed.
244
243
7. If a validate set is defined in one or more roles, and a validate pattern is defined in another role for the same cmdlet parameter, the validate set is ignored and rule (6) applies to the remaining validate patterns.
245
244
246
-
The table below shows some examples of this logic in practice using two roles, A and B, which are both assigned to a user in a JEA session.
247
-
248
-
Rule | Role A VisibleCmdlets | Role B VisibleCmdlets | Effective user permissions
Copy file name to clipboardExpand all lines: jea/security-considerations.md
+9-11Lines changed: 9 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: rpsqrd
5
5
ms.author: ryanpu
6
6
ms.prod: powershell
7
7
keywords: powershell,cmdlet,jea
8
-
ms.date: 2016-12-05
8
+
ms.date: 2017-03-07
9
9
title: JEA Security Considerations
10
10
ms.technology: powershell
11
11
---
@@ -33,12 +33,11 @@ The connecting user does not know the credentials for the virtual account and ca
33
33
34
34
By default, virtual accounts belong to the local administrators group on the machine.
35
35
This gives them full rights to manage anything on the system, but no rights to manage resources on the network.
36
-
When authenticating with other machines, the user context will be the local computer account, not the virtual account.
36
+
When authenticating with other machines, the user context will be that of the local computer account, not the virtual account.
37
37
38
-
On an Active Directory Domain Controller, virtual accounts get *domain admin* privileges by default.
39
-
This is due to the fact that there is no group for local administrators on a domain controller.
40
-
Accordingly, virtual accounts on domain controllers are domain accounts and can be used on other machines.
41
-
When configuring JEA sessions on a domain controller, you must be careful to avoid exposing commands which could be used to manage other computers on the network.
38
+
Domain controllers are a special case since there is no concept of a local administrators group.
39
+
Instead, virtual accounts belong to Domain Admins instead and can manage the directory services on the domain controller.
40
+
The domain identity is still restricted to use on the domain controller where the JEA session was instantiated, and any network access will appear to come from the domain controller computer object instead.
42
41
43
42
In both cases, you can also explicitly define which security groups the virtual account should belong to.
44
43
This is a good practice when the task you are performing can be done without local/domain admin privileges.
@@ -50,8 +49,8 @@ The table below summarizes the possible configuration options and resulting perm
50
49
51
50
Computer type | Virtual account group configuration | Local user context | Network user context
Domain controller | Default | Domain user, member of '*DOMAIN*\Domain Admins' | Domain user, member of '*DOMAIN*\Domain Admins'
54
-
Domain controller | Domain groups A and B | Domain user, member of '*DOMAIN*\A', '*DOMAIN*\B' | Domain user, member of '*DOMAIN*\A', '*DOMAIN*\B'
52
+
Domain controller | Default | Domain user, member of '*DOMAIN*\Domain Admins' | Computer account
53
+
Domain controller | Domain groups A and B | Domain user, member of '*DOMAIN*\A', '*DOMAIN*\B' | Computer account
55
54
Member server or workstation | Default | Local user, member of '*BUILTIN*\Administrators' | Computer account
56
55
Member server or workstation | Local groups C and D | Local user, member of '*COMPUTER*\C' and '*COMPUTER*\D' | Computer account
57
56
@@ -70,9 +69,8 @@ The effective permissions of the gMSA are defined by the security groups (local
70
69
When a JEA endpoint is configured to use a gMSA account, the actions of all JEA users will appear to come from the same group managed service account.
71
70
The only way you can trace actions back to a specific user is to identify the set of commands run in a PowerShell session transcript.
72
71
73
-
**Pass-thru credentials**
74
-
If you do not specify a run as account, PowerShell will use the connecting user's credential to run commands on the remote server.
75
-
This configuration is not recommended for JEA as it would require you to grant the connecting user direct access to privileged management groups.
72
+
**Pass-thru credentials** are used when you do not speicfy a run as account and want PowerShell to use the connecting user's credential to run commands on the remote server.
73
+
This configuration is *not* recommended for JEA as it would require you to grant the connecting user direct access to privileged management groups.
76
74
If the connecting user already has admin privileges, they can avoid JEA altogether and manage the system via other, unconstrained means.
77
75
See the section below on how [JEA does not protect against admins](#jea-does-not-protect-against-admins) for more information.
0 commit comments