Merge branch 'main' of github.com:MicrosoftDocs/windows-docs-pr into pm-win-2302-federated-signin
@ -20524,6 +20524,71 @@
|
||||
"source_path": "windows/security/identity-protection/credential-guard/dg-readiness-tool.md",
|
||||
"redirect_url": "/windows/security/identity-protection/credential-guard/credential-guard",
|
||||
"redirect_document_id": true
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/information-protection/tpm/change-the-tpm-owner-password.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/get-support-for-security-baselines.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/mbsa-removal-and-guidance.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/information-protection/bitlocker/bitlocker-recovery-loop-break.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/identity-protection/credential-guard/credential-guard-scripts.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/information-protection/tpm/manage-tpm-commands.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/information-protection/tpm/manage-tpm-lockout.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/device-guard/requirements-and-deployment-planning-guidelines-for-virtualization-based-protection-of-code-integrity.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/microsoft-defender-smartscreen/microsoft-defender-smartscreen-set-individual-device.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/windows-defender-security-center/wdsc-windows-10-in-s-mode.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/windows-defender-application-control/audit-and-enforce-windows-defender-application-control-policies.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/windows-firewall/procedures-used-in-this-guide.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
},
|
||||
{
|
||||
"source_path": "windows/security/threat-protection/windows-firewall/evaluating-windows-firewall-with-advanced-security-design-examples.md",
|
||||
"redirect_url": "/windows/security",
|
||||
"redirect_document_id": false
|
||||
}
|
||||
]
|
||||
}
|
||||
|
BIN
education/windows/images/suspcs/2023-02-16_13-02-37.png
Normal file
After Width: | Height: | Size: 221 KiB |
@ -94,6 +94,7 @@ The following applications can also run on Windows 11 SE, and can be deployed us
|
||||
| `Class Policy` | 114.0.0 | Win32 | `Class Policy` |
|
||||
| `Classroom.cloud` | 1.40.0004 | Win32 | `NetSupport` |
|
||||
| `CoGat Secure Browser` | 11.0.0.19 | Win32 | `Riverside Insights` |
|
||||
| `ColorVeil` | 4.0.0.175 | Win32 | `East-Tec` |
|
||||
| `ContentKeeper Cloud` | 9.01.45 | Win32 | `ContentKeeper Technologies` |
|
||||
| `Dragon Professional Individual` | 15.00.100 | Win32 | `Nuance Communications` |
|
||||
| `DRC INSIGHT Online Assessments` | 12.0.0.0 | `Store` | `Data recognition Corporation` |
|
||||
@ -107,6 +108,7 @@ The following applications can also run on Windows 11 SE, and can be deployed us
|
||||
| `Ghotit Real Writer & Reader` | 10.14.2.3 | Win32 | `Ghotit Ltd` |
|
||||
| `GoGuardian` | 1.4.4 | Win32 | `GoGuardian` |
|
||||
| `Google Chrome` | 109.0.5414.75 | Win32 | `Google` |
|
||||
| `GuideConnect` | 1.23 | Win32 | `Dolphin Computer Access` |
|
||||
| `Illuminate Lockdown Browser` | 2.0.5 | Win32 | `Illuminate Education` |
|
||||
| `Immunet` | 7.5.8.21178 | Win32 | `Immunet` |
|
||||
| `Impero Backdrop Client` | 4.4.86 | Win32 | `Impero Software` |
|
||||
|
@ -79,8 +79,12 @@ To be eligible for Windows Autopatch management, devices must meet a minimum set
|
||||
- Office Click-to-run
|
||||
- Last Intune device check in completed within the last 28 days.
|
||||
- Devices must have Serial Number, Model and Manufacturer.
|
||||
> [!NOTE]
|
||||
> Windows Autopatch doesn't support device emulators that don't generate Serial number, Model and Manufacturer. Devices that use a non-supported device emulator fail the **Intune or Cloud-Attached** pre-requisite check. Additionally, devices with duplicated serial numbers will fail to register with Windows Autopatch.
|
||||
|
||||
> [!NOTE]
|
||||
> Windows Autopatch doesn't support device emulators that don't generate the serial number, model and manufacturer information. Devices that use a non-supported device emulator fail the **Intune or Cloud-Attached** prerequisite check. Additionally, devices with duplicated serial numbers will fail to register with Windows Autopatch.
|
||||
|
||||
> [!NOTE]
|
||||
> Windows Autopatch supports registering [Windows 10 Long-Term Servicing Channel (LTSC)](/windows/whats-new/ltsc/) devices that are being currently serviced by the [Windows LTSC](/windows/release-health/release-information). The service only supports managing the [Windows quality updates](../operate/windows-autopatch-windows-quality-update-overview.md) workload for devices currently serviced by the LTSC. Additionally, Windows Autopatch can only manage Windows quality updates for devices that haven't reached the LTSC's [end of servicing date](/windows/release-health/release-information#enterprise-and-iot-enterprise-ltsbltsc-editions).
|
||||
|
||||
For more information, see [Windows Autopatch Prerequisites](../prepare/windows-autopatch-prerequisites.md).
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Windows feature updates
|
||||
description: This article explains how Windows feature updates are managed in Autopatch
|
||||
ms.date: 02/07/2023
|
||||
ms.date: 02/17/2023
|
||||
ms.prod: windows-client
|
||||
ms.technology: itpro-updates
|
||||
ms.topic: conceptual
|
||||
@ -37,6 +37,9 @@ If a device is registered with Windows Autopatch, and the device is:
|
||||
- Below the service's currently targeted Windows feature update, that device will update to the service's target version when it meets the Windows OS upgrade eligibility criteria.
|
||||
- On, or above the currently targeted Windows feature update version, there won't be any Windows OS upgrades to that device.
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Windows Autopatch supports registering [Windows 10 Long-Term Servicing Channel (LTSC)](/windows/whats-new/ltsc/) devices that are being currently serviced by the [Windows LTSC](/windows/release-health/release-information). The service only supports managing the [Windows quality updates](../operate/windows-autopatch-windows-quality-update-overview.md) workload for devices currently serviced by the LTSC. Windows Update for Business service and Windows Autopatch don't offer Windows feature updates for devices that are part of the LTSC. You must either use a [LTSC media](/evalcenter/evaluate-windows-10-enterprise) or the [Configuration Manager Operating System Deployment capabilities to perform an in-place upgrade](/windows/deployment/deploy-windows-cm/upgrade-to-windows-10-with-configuration-manager) for Windows devices that are part of the LTSC.
|
||||
|
||||
## Windows feature update policy configuration
|
||||
|
||||
If your tenant is enrolled with Windows Autopatch, you can see the following policies created by the service in the Microsoft Intune portal:
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Windows quality updates
|
||||
description: This article explains how Windows quality updates are managed in Autopatch
|
||||
ms.date: 02/07/2023
|
||||
ms.date: 02/17/2023
|
||||
ms.prod: windows-client
|
||||
ms.technology: itpro-updates
|
||||
ms.topic: conceptual
|
||||
@ -33,6 +33,9 @@ For a device to be eligible for Windows quality updates as a part of Windows Aut
|
||||
| Mobile device management (MDM) policy conflict | Devices must not have deployed any policies that would prevent device management. For more information, see [Conflicting and unsupported policies](../references/windows-autopatch-windows-update-unsupported-policies.md). |
|
||||
| Group policy conflict | Devices must not have group policies deployed which would prevent device management. For more information, see [Group policy](../references/windows-autopatch-windows-update-unsupported-policies.md#group-policy-and-other-policy-managers) |
|
||||
|
||||
> [!NOTE]
|
||||
> Windows Autopatch supports registering [Windows 10 Long-Term Servicing Channel (LTSC)](/windows/whats-new/ltsc/) devices that are being currently serviced by the [Windows LTSC](/windows/release-health/release-information). The service only supports managing the [Windows quality updates](../operate/windows-autopatch-windows-quality-update-overview.md) workload for devices currently serviced by the LTSC. Additionally, Windows Autopatch can only manage Windows quality updates for devices that haven't reached the LTSC's [end of servicing date](/windows/release-health/release-information#enterprise-and-iot-enterprise-ltsbltsc-editions).
|
||||
|
||||
## Windows quality update releases
|
||||
|
||||
Windows Autopatch deploys the [B release of Windows quality updates](https://techcommunity.microsoft.com/t5/windows-it-pro-blog/windows-quality-updates-primer/ba-p/2569385) that are released on the second Tuesday of each month.
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Prerequisites
|
||||
description: This article details the prerequisites needed for Windows Autopatch
|
||||
ms.date: 09/16/2022
|
||||
ms.date: 02/17/2023
|
||||
ms.prod: windows-client
|
||||
ms.technology: itpro-updates
|
||||
ms.topic: conceptual
|
||||
@ -44,12 +44,15 @@ Windows Autopatch is included with Windows 10/11 Enterprise E3 or higher (user-b
|
||||
| [Windows 10/11 Enterprise E5](/azure/active-directory/enterprise-users/licensing-service-plan-reference) | WIN10_VDA_E5 | 488ba24a-39a9-4473-8ee5-19291e71b002 |
|
||||
| [Windows 10/11 Enterprise VDA](/windows/deployment/deploy-enterprise-licenses#virtual-desktop-access-vda) | E3_VDA_only | d13ef257-988a-46f3-8fce-f47484dd4550 |
|
||||
|
||||
The following Windows OS 10 editions, 1809 builds and architecture are supported in Windows Autopatch:
|
||||
The following Windows OS 10 editions, 1809+ builds and architecture are supported in Windows Autopatch:
|
||||
|
||||
- Windows 10 (1809+)/11 Pro
|
||||
- Windows 10 (1809+)/11 Enterprise
|
||||
- Windows 10 (1809+)/11 Pro for Workstations
|
||||
|
||||
> [!NOTE]
|
||||
> Windows Autopatch supports registering [Windows 10 Long-Term Servicing Channel (LTSC)](/windows/whats-new/ltsc/) devices that are being currently serviced by the [Windows LTSC](/windows/release-health/release-information). The service only supports managing the [Windows quality updates](../operate/windows-autopatch-windows-quality-update-overview.md) workload for devices currently serviced by the LTSC. Additionally, Windows Autopatch can only manage Windows quality updates for devices that haven't reached the LTSC's [end of servicing date](/windows/release-health/release-information#enterprise-and-iot-enterprise-ltsbltsc-editions).
|
||||
|
||||
## Configuration Manager co-management requirements
|
||||
|
||||
Windows Autopatch fully supports co-management. The following co-management requirements apply:
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
title: What's new 2023
|
||||
description: This article lists the 2023 feature releases and any corresponding Message center post numbers.
|
||||
ms.date: 01/31/2023
|
||||
ms.date: 02/17/2023
|
||||
ms.prod: windows-client
|
||||
ms.technology: itpro-updates
|
||||
ms.topic: whats-new
|
||||
@ -24,9 +24,13 @@ Minor corrections such as typos, style, or formatting issues aren't listed.
|
||||
|
||||
| Article | Description |
|
||||
| ----- | ----- |
|
||||
| [Privacy](../references/windows-autopatch-privacy.md) | Added additional resources to the Microsoft Windows 10/11 diagnostic data section |
|
||||
| [Windows feature updates](../operate/windows-autopatch-windows-feature-update-overview.md#) | Added note about [Windows 10 Long-Term Servicing Channel (LTSC) support](../operate/windows-autopatch-windows-feature-update-overview.md#enforcing-a-minimum-windows-os-version) |
|
||||
| [Windows quality updates](../operate/windows-autopatch-windows-quality-update-overview.md) | Added note about [Windows 10 Long-Term Servicing Channel (LTSC) support](../operate/windows-autopatch-windows-quality-update-overview.md#device-eligibility) |
|
||||
| [Register your devices](../deploy/windows-autopatch-register-devices.md) | Added note about [Windows 10 Long-Term Servicing Channel (LTSC) support](../deploy/windows-autopatch-register-devices.md#prerequisites-for-device-registration) |
|
||||
| [Prerequisites](../prepare/windows-autopatch-prerequisites.md) | Added note about [Windows 10 Long-Term Servicing Channel (LTSC) support](../prepare/windows-autopatch-prerequisites.md#more-about-licenses) |
|
||||
| [Privacy](../references/windows-autopatch-privacy.md) | Added additional resources to the [Microsoft Windows 10/11 diagnostic data](../references/windows-autopatch-privacy.md#microsoft-windows-1011-diagnostic-data) section |
|
||||
| [Changes made at tenant enrollment](../references/windows-autopatch-changes-to-tenant.md) | Updated Feature update policies section with Windows Autopatch - DSS Policy [deployment ring] |
|
||||
| [Register your devices](../deploy/windows-autopatch-register-devices.md) |<ul><li>Updated the Built-in roles required for registration section</li><li>Added more information about assigning less-privileged user accounts</li></ul> |
|
||||
| [Register your devices](../deploy/windows-autopatch-register-devices.md) |<ul><li>Updated the [Built-in roles required for registration](../deploy/windows-autopatch-register-devices.md#built-in-roles-required-for-device-registration) section</li><li>Added more information about assigning less-privileged user accounts</li></ul> |
|
||||
|
||||
## January 2023
|
||||
|
||||
|
@ -23,7 +23,7 @@ Windows 11 includes the cloud services that are listed in the following table:<b
|
||||
| Service type | Description |
|
||||
|:---|:---|
|
||||
| Mobile device management (MDM) and Microsoft Intune | Windows 11 supports MDM, an enterprise management solution to help you manage your organization's security policies and business applications. MDM enables your security team to manage devices without compromising people's privacy on their personal devices.<br/><br/>Non-Microsoft servers can be used to manage Windows 11 by using industry standard protocols.<br/><br/>To learn more, see [Mobile device management](/windows/client-management/mdm/). |
|
||||
| Microsoft account | When users add their Microsoft account to Windows 11, they can bring their Windows, Microsoft Edge, Xbox settings, web page favorites, files, photos, and more across their devices. <br/><br/>The Microsoft account enables people to manage everything in one place. They can keep tabs on their subscriptions and order history, organize their family's digital life, update their privacy and security settings, track the health and safety of their devices, and even get rewards. <br/><br/>To learn more, see [Microsoft Accounts](identity-protection/access-control/microsoft-accounts.md).|
|
||||
| Microsoft account | When users add their Microsoft account to Windows 11, they can bring their Windows, Microsoft Edge, Xbox settings, web page favorites, files, photos, and more across their devices. <br/><br/>The Microsoft account enables people to manage everything in one place. They can keep tabs on their subscriptions and order history, organize their family's digital life, update their privacy and security settings, track the health and safety of their devices, and even get rewards. <br/><br/>To learn more, see [Microsoft Accounts](/windows-server/identity/ad-ds/manage/understand-microsoft-accounts).|
|
||||
| OneDrive | OneDrive is your online storage for your files, photos, and data. OneDrive provides extra security, backup, and restore options for important files and photos. With options for both personal and business, people can use OneDrive to store and protect files in the cloud, allowing users to them on their laptops, desktops, and mobile devices. If a device is lost or stolen, people can quickly recover all their important files, photos, and data. <br/><br/>The OneDrive Personal Vault also provides protection for your most sensitive files without losing the convenience of anywhere access. Files are secured by identity verification, yet easily accessible to users across their devices. [Learn how to set up your Personal Vault](https://support.microsoft.com/office/protect-your-onedrive-files-in-personal-vault-6540ef37-e9bf-4121-a773-56f98dce78c4). <br/><br/>If there's a ransomware attack, OneDrive can enable recovery. And if you’ve configured backups in OneDrive, you have more options to mitigate and recover from a ransomware attack. [Learn more about how to recover from a ransomware attack using Office 365](/microsoft-365/security/office-365-security/recover-from-ransomware). |
|
||||
| Access to Azure Active Directory | Microsoft Azure Active Directory (Azure AD) is a complete cloud identity and access management solution for managing identities and directories, enabling access to applications, and protecting identities from security threats.<br/><br/>With Azure AD, you can manage and secure identities for your employees, partners, and customers to access the applications and services they need. Windows 11 works seamlessly with Azure Active Directory to provide secure access, identity management, and single sign-on to apps and services from anywhere.<br/><br/>To learn more, see [What is Azure AD?](/azure/active-directory/fundamentals/active-directory-whatis) |
|
||||
|
||||
|
@ -77,6 +77,16 @@
|
||||
"identity-protection/hello-for-business/*.md": "erikdau",
|
||||
"identity-protection/credential-guard/*.md": "zwhittington",
|
||||
"identity-protection/access-control/*.md": "sulahiri"
|
||||
},
|
||||
"ms.collection":{
|
||||
"identity-protection/hello-for-business/*.md": "tier1",
|
||||
"information-protection/bitlocker/*.md": "tier1",
|
||||
"information-protection/personal-data-encryption/*.md": "tier1",
|
||||
"information-protection/pluton/*.md": "tier1",
|
||||
"information-protection/tpm/*.md": "tier1",
|
||||
"threat-protection/auditing/*.md": "tier3",
|
||||
"threat-protection/windows-defender-application-control/*.md": "tier3",
|
||||
"threat-protection/windows-firewall/*.md": "tier3"
|
||||
}
|
||||
},
|
||||
"template": [],
|
||||
|
@ -1,7 +1,6 @@
|
||||
---
|
||||
title: Encryption and data protection in Windows
|
||||
description: Get an overview encryption and data protection in Windows 11 and Windows 10
|
||||
search.appverid: MET150
|
||||
author: frankroj
|
||||
ms.author: frankroj
|
||||
manager: aaroncz
|
||||
@ -9,9 +8,6 @@ ms.topic: overview
|
||||
ms.date: 09/22/2022
|
||||
ms.prod: windows-client
|
||||
ms.technology: itpro-security
|
||||
ms.localizationpriority: medium
|
||||
ms.collection:
|
||||
ms.custom:
|
||||
ms.reviewer: rafals
|
||||
---
|
||||
|
||||
|
@ -29,14 +29,14 @@ Object owners generally grant permissions to security groups rather than to indi
|
||||
|
||||
This content set contains:
|
||||
|
||||
- [Dynamic Access Control Overview](dynamic-access-control.md)
|
||||
- [Security identifiers](security-identifiers.md)
|
||||
- [Security Principals](security-principals.md)
|
||||
- [Dynamic Access Control Overview](/windows-server/identity/solution-guides/dynamic-access-control-overview)
|
||||
- [Security identifiers](/windows-server/identity/ad-ds/manage/understand-security-identifiers)
|
||||
- [Security Principals](/windows-server/identity/ad-ds/manage/understand-security-principals)
|
||||
- [Local Accounts](local-accounts.md)
|
||||
- [Active Directory Accounts](active-directory-accounts.md)
|
||||
- [Microsoft Accounts](microsoft-accounts.md)
|
||||
- [Service Accounts](service-accounts.md)
|
||||
- [Active Directory Security Groups](active-directory-security-groups.md)
|
||||
- [Active Directory Accounts](/windows-server/identity/ad-ds/manage/understand-default-user-accounts)
|
||||
- [Microsoft Accounts](/windows-server/identity/ad-ds/manage/understand-microsoft-accounts)
|
||||
- [Service Accounts](/windows-server/identity/ad-ds/manage/understand-service-accounts)
|
||||
- [Active Directory Security Groups](/windows-server/identity/ad-ds/manage/understand-security-groups)
|
||||
|
||||
## Practical applications
|
||||
|
||||
|
Before Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 8.5 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 9.8 KiB |
Before Width: | Height: | Size: 1.8 KiB |
@ -4,6 +4,7 @@ description: Learn how to secure and manage access to the resources on a standal
|
||||
ms.date: 12/05/2022
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier2
|
||||
ms.topic: article
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
|
@ -4,6 +4,7 @@ description: Learn how to deploy and manage Windows Defender Credential Guard us
|
||||
ms.date: 11/23/2022
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier2
|
||||
ms.topic: article
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
|
@ -1,494 +0,0 @@
|
||||
---
|
||||
title: Scripts for Certificate Issuance Policies in Windows Defender Credential Guard (Windows)
|
||||
description: Obtain issuance policies from the certificate authority for Windows Defender Credential Guard on Windows.
|
||||
ms.date: 11/22/2022
|
||||
ms.topic: reference
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/windows-server-release-info target=_blank>Windows Server 2016 and later</a>
|
||||
---
|
||||
|
||||
# Windows Defender Credential Guard: scripts for certificate authority issuance policies
|
||||
|
||||
Expand each section to see the PowerShell scripts:
|
||||
|
||||
<br>
|
||||
<details>
|
||||
<summary><b>Get the available issuance policies on the certificate authority</b></summary>
|
||||
|
||||
Save this script file as get-IssuancePolicy.ps1.
|
||||
|
||||
```powershell
|
||||
#######################################
|
||||
## Parameters to be defined ##
|
||||
## by the user ##
|
||||
#######################################
|
||||
Param (
|
||||
$Identity,
|
||||
$LinkedToGroup
|
||||
)
|
||||
#######################################
|
||||
## Strings definitions ##
|
||||
#######################################
|
||||
Data getIP_strings {
|
||||
# culture="en-US"
|
||||
ConvertFrom-StringData -stringdata @'
|
||||
help1 = This command can be used to retrieve all available Issuance Policies in a forest. The forest of the currently logged on user is targeted.
|
||||
help2 = Usage:
|
||||
help3 = The following parameter is mandatory:
|
||||
help4 = -LinkedToGroup:<yes|no|all>
|
||||
help5 = "yes" will return only Issuance Policies that are linked to groups. Checks that the linked Issuance Policies are linked to valid groups.
|
||||
help6 = "no" will return only Issuance Policies that are not currently linked to any group.
|
||||
help7 = "all" will return all Issuance Policies defined in the forest. Checks that the linked Issuance policies are linked to valid groups.
|
||||
help8 = The following parameter is optional:
|
||||
help9 = -Identity:<Name, Distinguished Name or Display Name of the Issuance Policy that you want to retrieve>. If you specify an identity, the option specified in the "-LinkedToGroup" parameter is ignored.
|
||||
help10 = Output: This script returns the Issuance Policy objects meeting the criteria defined by the above parameters.
|
||||
help11 = Examples:
|
||||
errorIPNotFound = Error: no Issuance Policy could be found with Identity "{0}"
|
||||
ErrorNotSecurity = Error: Issuance Policy "{0}" is linked to group "{1}" which is not of type "Security".
|
||||
ErrorNotUniversal = Error: Issuance Policy "{0}" is linked to group "{1}" whose scope is not "Universal".
|
||||
ErrorHasMembers = Error: Issuance Policy "{0}" is linked to group "{1}" which has a non-empty membership. The group has the following members:
|
||||
LinkedIPs = The following Issuance Policies are linked to groups:
|
||||
displayName = displayName : {0}
|
||||
Name = Name : {0}
|
||||
dn = distinguishedName : {0}
|
||||
InfoName = Linked Group Name: {0}
|
||||
InfoDN = Linked Group DN: {0}
|
||||
NonLinkedIPs = The following Issuance Policies are NOT linked to groups:
|
||||
'@
|
||||
}
|
||||
##Import-LocalizedData getIP_strings
|
||||
import-module ActiveDirectory
|
||||
#######################################
|
||||
## Help ##
|
||||
#######################################
|
||||
function Display-Help {
|
||||
""
|
||||
$getIP_strings.help1
|
||||
""
|
||||
$getIP_strings.help2
|
||||
""
|
||||
$getIP_strings.help3
|
||||
" " + $getIP_strings.help4
|
||||
" " + $getIP_strings.help5
|
||||
" " + $getIP_strings.help6
|
||||
" " + $getIP_strings.help7
|
||||
""
|
||||
$getIP_strings.help8
|
||||
" " + $getIP_strings.help9
|
||||
""
|
||||
$getIP_strings.help10
|
||||
""
|
||||
""
|
||||
$getIP_strings.help11
|
||||
" " + '$' + "myIPs = .\get-IssuancePolicy.ps1 -LinkedToGroup:All"
|
||||
" " + '$' + "myLinkedIPs = .\get-IssuancePolicy.ps1 -LinkedToGroup:yes"
|
||||
" " + '$' + "myIP = .\get-IssuancePolicy.ps1 -Identity:""Medium Assurance"""
|
||||
""
|
||||
}
|
||||
$root = get-adrootdse
|
||||
$domain = get-addomain -current loggedonuser
|
||||
$configNCDN = [String]$root.configurationNamingContext
|
||||
if ( !($Identity) -and !($LinkedToGroup) ) {
|
||||
display-Help
|
||||
break
|
||||
}
|
||||
if ($Identity) {
|
||||
$OIDs = get-adobject -Filter {(objectclass -eq "msPKI-Enterprise-Oid") -and ((name -eq $Identity) -or (displayname -eq $Identity) -or (distinguishedName -like $Identity)) } -searchBase $configNCDN -properties *
|
||||
if ($OIDs -eq $null) {
|
||||
$errormsg = $getIP_strings.ErrorIPNotFound -f $Identity
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
}
|
||||
foreach ($OID in $OIDs) {
|
||||
if ($OID."msDS-OIDToGroupLink") {
|
||||
# In case the Issuance Policy is linked to a group, it is good to check whether there is any problem with the mapping.
|
||||
$groupDN = $OID."msDS-OIDToGroupLink"
|
||||
$group = get-adgroup -Identity $groupDN
|
||||
$groupName = $group.Name
|
||||
# Analyze the group
|
||||
if ($group.groupCategory -ne "Security") {
|
||||
$errormsg = $getIP_strings.ErrorNotSecurity -f $Identity, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
}
|
||||
if ($group.groupScope -ne "Universal") {
|
||||
$errormsg = $getIP_strings.ErrorNotUniversal -f $Identity, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
}
|
||||
$members = Get-ADGroupMember -Identity $group
|
||||
if ($members) {
|
||||
$errormsg = $getIP_strings.ErrorHasMembers -f $Identity, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
foreach ($member in $members) {
|
||||
write-host " " $member -ForeGroundColor Red
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $OIDs
|
||||
break
|
||||
}
|
||||
if (($LinkedToGroup -eq "yes") -or ($LinkedToGroup -eq "all")) {
|
||||
$LDAPFilter = "(&(objectClass=msPKI-Enterprise-Oid)(msDS-OIDToGroupLink=*)(flags=2))"
|
||||
$LinkedOIDs = get-adobject -searchBase $configNCDN -LDAPFilter $LDAPFilter -properties *
|
||||
write-host ""
|
||||
write-host "*****************************************************"
|
||||
write-host $getIP_strings.LinkedIPs
|
||||
write-host "*****************************************************"
|
||||
write-host ""
|
||||
if ($LinkedOIDs -ne $null){
|
||||
foreach ($OID in $LinkedOIDs) {
|
||||
# Display basic information about the Issuance Policies
|
||||
""
|
||||
$getIP_strings.displayName -f $OID.displayName
|
||||
$getIP_strings.Name -f $OID.Name
|
||||
$getIP_strings.dn -f $OID.distinguishedName
|
||||
# Get the linked group.
|
||||
$groupDN = $OID."msDS-OIDToGroupLink"
|
||||
$group = get-adgroup -Identity $groupDN
|
||||
$getIP_strings.InfoName -f $group.Name
|
||||
$getIP_strings.InfoDN -f $groupDN
|
||||
# Analyze the group
|
||||
$OIDName = $OID.displayName
|
||||
$groupName = $group.Name
|
||||
if ($group.groupCategory -ne "Security") {
|
||||
$errormsg = $getIP_strings.ErrorNotSecurity -f $OIDName, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
}
|
||||
if ($group.groupScope -ne "Universal") {
|
||||
$errormsg = $getIP_strings.ErrorNotUniversal -f $OIDName, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
}
|
||||
$members = Get-ADGroupMember -Identity $group
|
||||
if ($members) {
|
||||
$errormsg = $getIP_strings.ErrorHasMembers -f $OIDName, $groupName
|
||||
write-host $errormsg -ForegroundColor Red
|
||||
foreach ($member in $members) {
|
||||
write-host " " $member -ForeGroundColor Red
|
||||
}
|
||||
}
|
||||
write-host ""
|
||||
}
|
||||
}else{
|
||||
write-host "There are no issuance policies that are mapped to a group"
|
||||
}
|
||||
if ($LinkedToGroup -eq "yes") {
|
||||
return $LinkedOIDs
|
||||
break
|
||||
}
|
||||
}
|
||||
if (($LinkedToGroup -eq "no") -or ($LinkedToGroup -eq "all")) {
|
||||
$LDAPFilter = "(&(objectClass=msPKI-Enterprise-Oid)(!(msDS-OIDToGroupLink=*))(flags=2))"
|
||||
$NonLinkedOIDs = get-adobject -searchBase $configNCDN -LDAPFilter $LDAPFilter -properties *
|
||||
write-host ""
|
||||
write-host "*********************************************************"
|
||||
write-host $getIP_strings.NonLinkedIPs
|
||||
write-host "*********************************************************"
|
||||
write-host ""
|
||||
if ($NonLinkedOIDs -ne $null) {
|
||||
foreach ($OID in $NonLinkedOIDs) {
|
||||
# Display basic information about the Issuance Policies
|
||||
write-host ""
|
||||
$getIP_strings.displayName -f $OID.displayName
|
||||
$getIP_strings.Name -f $OID.Name
|
||||
$getIP_strings.dn -f $OID.distinguishedName
|
||||
write-host ""
|
||||
}
|
||||
}else{
|
||||
write-host "There are no issuance policies which are not mapped to groups"
|
||||
}
|
||||
if ($LinkedToGroup -eq "no") {
|
||||
return $NonLinkedOIDs
|
||||
break
|
||||
}
|
||||
}
|
||||
```
|
||||
> [!NOTE]
|
||||
> If you're having trouble running this script, try replacing the single quote after the ConvertFrom-StringData parameter.
|
||||
|
||||
</details>
|
||||
|
||||
<br>
|
||||
<details>
|
||||
<summary><b>Link an issuance policy to a group</b></summary>
|
||||
|
||||
Save the script file as set-IssuancePolicyToGroupLink.ps1.
|
||||
|
||||
```powershell
|
||||
#######################################
|
||||
## Parameters to be defined ##
|
||||
## by the user ##
|
||||
#######################################
|
||||
Param (
|
||||
$IssuancePolicyName,
|
||||
$groupOU,
|
||||
$groupName
|
||||
)
|
||||
#######################################
|
||||
## Strings definitions ##
|
||||
#######################################
|
||||
Data ErrorMsg {
|
||||
# culture="en-US"
|
||||
ConvertFrom-StringData -stringdata @'
|
||||
help1 = This command can be used to set the link between a certificate issuance policy and a universal security group.
|
||||
help2 = Usage:
|
||||
help3 = The following parameters are required:
|
||||
help4 = -IssuancePolicyName:<name or display name of the issuance policy that you want to link to a group>
|
||||
help5 = -groupName:<name of the group you want to link the issuance policy to>. If no name is specified, any existing link to a group is removed from the Issuance Policy.
|
||||
help6 = The following parameter is optional:
|
||||
help7 = -groupOU:<Name of the Organizational Unit dedicated to the groups which are linked to issuance policies>. If this parameter is not specified, the group is looked for or created in the Users container.
|
||||
help8 = Examples:
|
||||
help9 = This command will link the issuance policy whose display name is "High Assurance" to the group "HighAssuranceGroup" in the Organizational Unit "OU_FOR_IPol_linked_groups". If the group or the Organizational Unit do not exist, you will be prompted to create them.
|
||||
help10 = This command will unlink the issuance policy whose name is "402.164959C40F4A5C12C6302E31D5476062" from any group.
|
||||
MultipleIPs = Error: Multiple Issuance Policies with name or display name "{0}" were found in the subtree of "{1}"
|
||||
NoIP = Error: no issuance policy with name or display name "{0}" could be found in the subtree of "{1}".
|
||||
IPFound = An Issuance Policy with name or display name "{0}" was successfully found: {1}
|
||||
MultipleOUs = Error: more than 1 Organizational Unit with name "{0}" could be found in the subtree of "{1}".
|
||||
confirmOUcreation = Warning: The Organizational Unit that you specified does not exist. Do you want to create it?
|
||||
OUCreationSuccess = Organizational Unit "{0}" successfully created.
|
||||
OUcreationError = Error: Organizational Unit "{0}" could not be created.
|
||||
OUFoundSuccess = Organizational Unit "{0}" was successfully found.
|
||||
multipleGroups = Error: More than one group with name "{0}" was found in Organizational Unit "{1}".
|
||||
confirmGroupCreation = Warning: The group that you specified does not exist. Do you want to create it?
|
||||
groupCreationSuccess = Univeral Security group "{0}" successfully created.
|
||||
groupCreationError = Error: Univeral Security group "{0}" could not be created.
|
||||
GroupFound = Group "{0}" was successfully found.
|
||||
confirmLinkDeletion = Warning: The Issuance Policy "{0}" is currently linked to group "{1}". Do you really want to remove the link?
|
||||
UnlinkSuccess = Certificate issuance policy successfully unlinked from any group.
|
||||
UnlinkError = Removing the link failed.
|
||||
UnlinkExit = Exiting without removing the link from the issuance policy to the group.
|
||||
IPNotLinked = The Certificate issuance policy is not currently linked to any group. If you want to link it to a group, you should specify the -groupName option when starting this script.
|
||||
ErrorNotSecurity = Error: You cannot link issuance Policy "{0}" to group "{1}" because this group is not of type "Security".
|
||||
ErrorNotUniversal = Error: You cannot link issuance Policy "{0}" to group "{1}" because the scope of this group is not "Universal".
|
||||
ErrorHasMembers = Error: You cannot link issuance Policy "{0}" to group "{1}" because it has a non-empty membership. The group has the following members:
|
||||
ConfirmLinkReplacement = Warning: The Issuance Policy "{0}" is currently linked to group "{1}". Do you really want to update the link to point to group "{2}"?
|
||||
LinkSuccess = The certificate issuance policy was successfully linked to the specified group.
|
||||
LinkError = The certificate issuance policy could not be linked to the specified group.
|
||||
ExitNoLinkReplacement = Exiting without setting the new link.
|
||||
'@
|
||||
}
|
||||
# import-localizeddata ErrorMsg
|
||||
function Display-Help {
|
||||
""
|
||||
write-host $ErrorMsg.help1
|
||||
""
|
||||
write-host $ErrorMsg.help2
|
||||
""
|
||||
write-host $ErrorMsg.help3
|
||||
write-host "`t" $ErrorMsg.help4
|
||||
write-host "`t" $ErrorMsg.help5
|
||||
""
|
||||
write-host $ErrorMsg.help6
|
||||
write-host "`t" $ErrorMsg.help7
|
||||
""
|
||||
""
|
||||
write-host $ErrorMsg.help8
|
||||
""
|
||||
write-host $ErrorMsg.help9
|
||||
".\Set-IssuancePolicyToGroupMapping.ps1 -IssuancePolicyName ""High Assurance"" -groupOU ""OU_FOR_IPol_linked_groups"" -groupName ""HighAssuranceGroup"" "
|
||||
""
|
||||
write-host $ErrorMsg.help10
|
||||
'.\Set-IssuancePolicyToGroupMapping.ps1 -IssuancePolicyName "402.164959C40F4A5C12C6302E31D5476062" -groupName $null '
|
||||
""
|
||||
}
|
||||
# Assumption: The group to which the Issuance Policy is going
|
||||
# to be linked is (or is going to be created) in
|
||||
# the domain the user running this script is a member of.
|
||||
import-module ActiveDirectory
|
||||
$root = get-adrootdse
|
||||
$domain = get-addomain -current loggedonuser
|
||||
if ( !($IssuancePolicyName) ) {
|
||||
display-Help
|
||||
break
|
||||
}
|
||||
#######################################
|
||||
## Find the OID object ##
|
||||
## (aka Issuance Policy) ##
|
||||
#######################################
|
||||
$searchBase = [String]$root.configurationnamingcontext
|
||||
$OID = get-adobject -searchBase $searchBase -Filter { ((displayname -eq $IssuancePolicyName) -or (name -eq $IssuancePolicyName)) -and (objectClass -eq "msPKI-Enterprise-Oid")} -properties *
|
||||
if ($OID -eq $null) {
|
||||
$tmp = $ErrorMsg.NoIP -f $IssuancePolicyName, $searchBase
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
elseif ($OID.GetType().IsArray) {
|
||||
$tmp = $ErrorMsg.MultipleIPs -f $IssuancePolicyName, $searchBase
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
else {
|
||||
$tmp = $ErrorMsg.IPFound -f $IssuancePolicyName, $OID.distinguishedName
|
||||
write-host $tmp -ForeGroundColor Green
|
||||
}
|
||||
#######################################
|
||||
## Find the container of the group ##
|
||||
#######################################
|
||||
if ($groupOU -eq $null) {
|
||||
# default to the Users container
|
||||
$groupContainer = $domain.UsersContainer
|
||||
}
|
||||
else {
|
||||
$searchBase = [string]$domain.DistinguishedName
|
||||
$groupContainer = get-adobject -searchBase $searchBase -Filter { (Name -eq $groupOU) -and (objectClass -eq "organizationalUnit")}
|
||||
if ($groupContainer.count -gt 1) {
|
||||
$tmp = $ErrorMsg.MultipleOUs -f $groupOU, $searchBase
|
||||
write-host $tmp -ForegroundColor Red
|
||||
break;
|
||||
}
|
||||
elseif ($groupContainer -eq $null) {
|
||||
$tmp = $ErrorMsg.confirmOUcreation
|
||||
write-host $tmp " ( (y)es / (n)o )" -ForegroundColor Yellow -nonewline
|
||||
$userChoice = read-host
|
||||
if ( ($userChoice -eq "y") -or ($userChoice -eq "yes") ) {
|
||||
new-adobject -Name $groupOU -displayName $groupOU -Type "organizationalUnit" -ProtectedFromAccidentalDeletion $true -path $domain.distinguishedName
|
||||
if ($?){
|
||||
$tmp = $ErrorMsg.OUCreationSuccess -f $groupOU
|
||||
write-host $tmp -ForegroundColor Green
|
||||
}
|
||||
else{
|
||||
$tmp = $ErrorMsg.OUCreationError -f $groupOU
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
$groupContainer = get-adobject -searchBase $searchBase -Filter { (Name -eq $groupOU) -and (objectClass -eq "organizationalUnit")}
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$tmp = $ErrorMsg.OUFoundSuccess -f $groupContainer.name
|
||||
write-host $tmp -ForegroundColor Green
|
||||
}
|
||||
}
|
||||
#######################################
|
||||
## Find the group ##
|
||||
#######################################
|
||||
if (($groupName -ne $null) -and ($groupName -ne "")){
|
||||
##$searchBase = [String]$groupContainer.DistinguishedName
|
||||
$searchBase = $groupContainer
|
||||
$group = get-adgroup -Filter { (Name -eq $groupName) -and (objectClass -eq "group") } -searchBase $searchBase
|
||||
if ($group -ne $null -and $group.gettype().isarray) {
|
||||
$tmp = $ErrorMsg.multipleGroups -f $groupName, $searchBase
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
elseif ($group -eq $null) {
|
||||
$tmp = $ErrorMsg.confirmGroupCreation
|
||||
write-host $tmp " ( (y)es / (n)o )" -ForegroundColor Yellow -nonewline
|
||||
$userChoice = read-host
|
||||
if ( ($userChoice -eq "y") -or ($userChoice -eq "yes") ) {
|
||||
new-adgroup -samAccountName $groupName -path $groupContainer.distinguishedName -GroupScope "Universal" -GroupCategory "Security"
|
||||
if ($?){
|
||||
$tmp = $ErrorMsg.GroupCreationSuccess -f $groupName
|
||||
write-host $tmp -ForegroundColor Green
|
||||
}else{
|
||||
$tmp = $ErrorMsg.groupCreationError -f $groupName
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break
|
||||
}
|
||||
$group = get-adgroup -Filter { (Name -eq $groupName) -and (objectClass -eq "group") } -searchBase $searchBase
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$tmp = $ErrorMsg.GroupFound -f $group.Name
|
||||
write-host $tmp -ForegroundColor Green
|
||||
}
|
||||
}
|
||||
else {
|
||||
#####
|
||||
## If the group is not specified, we should remove the link if any exists
|
||||
#####
|
||||
if ($OID."msDS-OIDToGroupLink" -ne $null) {
|
||||
$tmp = $ErrorMsg.confirmLinkDeletion -f $IssuancePolicyName, $OID."msDS-OIDToGroupLink"
|
||||
write-host $tmp " ( (y)es / (n)o )" -ForegroundColor Yellow -nonewline
|
||||
$userChoice = read-host
|
||||
if ( ($userChoice -eq "y") -or ($userChoice -eq "yes") ) {
|
||||
set-adobject -Identity $OID -Clear "msDS-OIDToGroupLink"
|
||||
if ($?) {
|
||||
$tmp = $ErrorMsg.UnlinkSuccess
|
||||
write-host $tmp -ForeGroundColor Green
|
||||
}else{
|
||||
$tmp = $ErrorMsg.UnlinkError
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
}
|
||||
}
|
||||
else {
|
||||
$tmp = $ErrorMsg.UnlinkExit
|
||||
write-host $tmp
|
||||
break
|
||||
}
|
||||
}
|
||||
else {
|
||||
$tmp = $ErrorMsg.IPNotLinked
|
||||
write-host $tmp -ForeGroundColor Yellow
|
||||
}
|
||||
break;
|
||||
}
|
||||
#######################################
|
||||
## Verify that the group is ##
|
||||
## Universal, Security, and ##
|
||||
## has no members ##
|
||||
#######################################
|
||||
if ($group.GroupScope -ne "Universal") {
|
||||
$tmp = $ErrorMsg.ErrorNotUniversal -f $IssuancePolicyName, $groupName
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
if ($group.GroupCategory -ne "Security") {
|
||||
$tmp = $ErrorMsg.ErrorNotSecurity -f $IssuancePolicyName, $groupName
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
break;
|
||||
}
|
||||
$members = Get-ADGroupMember -Identity $group
|
||||
if ($members -ne $null) {
|
||||
$tmp = $ErrorMsg.ErrorHasMembers -f $IssuancePolicyName, $groupName
|
||||
write-host $tmp -ForeGroundColor Red
|
||||
foreach ($member in $members) {write-host " $member.name" -ForeGroundColor Red}
|
||||
break;
|
||||
}
|
||||
#######################################
|
||||
## We have verified everything. We ##
|
||||
## can create the link from the ##
|
||||
## Issuance Policy to the group. ##
|
||||
#######################################
|
||||
if ($OID."msDS-OIDToGroupLink" -ne $null) {
|
||||
$tmp = $ErrorMsg.ConfirmLinkReplacement -f $IssuancePolicyName, $OID."msDS-OIDToGroupLink", $group.distinguishedName
|
||||
write-host $tmp "( (y)es / (n)o )" -ForegroundColor Yellow -nonewline
|
||||
$userChoice = read-host
|
||||
if ( ($userChoice -eq "y") -or ($userChoice -eq "yes") ) {
|
||||
$tmp = @{'msDS-OIDToGroupLink'= $group.DistinguishedName}
|
||||
set-adobject -Identity $OID -Replace $tmp
|
||||
if ($?) {
|
||||
$tmp = $Errormsg.LinkSuccess
|
||||
write-host $tmp -Foreground Green
|
||||
}else{
|
||||
$tmp = $ErrorMsg.LinkError
|
||||
write-host $tmp -Foreground Red
|
||||
}
|
||||
} else {
|
||||
$tmp = $Errormsg.ExitNoLinkReplacement
|
||||
write-host $tmp
|
||||
break
|
||||
}
|
||||
}
|
||||
else {
|
||||
$tmp = @{'msDS-OIDToGroupLink'= $group.DistinguishedName}
|
||||
set-adobject -Identity $OID -Add $tmp
|
||||
if ($?) {
|
||||
$tmp = $Errormsg.LinkSuccess
|
||||
write-host $tmp -Foreground Green
|
||||
}else{
|
||||
$tmp = $ErrorMsg.LinkError
|
||||
write-host $tmp -Foreground Red
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> If you're having trouble running this script, try replacing the single quote after the ConvertFrom-StringData parameter.
|
||||
|
||||
</details>
|
@ -5,6 +5,7 @@ ms.date: 11/22/2022
|
||||
ms.topic: article
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier2
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/windows-server-release-info target=_blank>Windows Server 2016 and later</a>
|
||||
|
@ -37,5 +37,5 @@ Suppose instead that you sign in on **Device B** and change your password for yo
|
||||
- [Why a PIN is better than a password](hello-why-pin-is-better-than-password.md)
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -89,4 +89,4 @@ To use Iris authentication, you’ll need a [HoloLens 2 device](/hololens/). All
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
|
@ -3,6 +3,7 @@ title: Configure Windows Hello for Business Policy settings in an on-premises ce
|
||||
description: Configure Windows Hello for Business Policy settings for Windows Hello for Business in an on-premises certificate trust scenario
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.date: 12/12/2022
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
|
@ -55,7 +55,7 @@ Following are the various deployment guides and models included in this topic:
|
||||
- [On Premises Key Trust Deployment](hello-deployment-key-trust.md)
|
||||
- [On Premises Certificate Trust Deployment](hello-deployment-cert-trust.md)
|
||||
|
||||
For Windows Hello for Business hybrid [certificate trust prerequisites](hello-hybrid-cert-trust-prereqs.md#directory-synchronization) and [key trust prerequisites](hello-hybrid-key-trust-prereqs.md#directory-synchronization) deployments, you will need Azure Active Directory Connect to synchronize user accounts in the on-premises Active Directory with Azure Active Directory. For on-premises deployments, both key and certificate trust, use the Azure MFA server where the credentials are not synchronized to Azure Active Directory. Learn how to [deploy Multifactor Authentication Services (MFA) for key trust](hello-key-trust-validate-deploy-mfa.md) and [for certificate trust](hello-cert-trust-validate-deploy-mfa.md) deployments.
|
||||
For Windows Hello for Business hybrid [certificate trust prerequisites](/windows/security/identity-protection/hello-for-business/hello-hybrid-cert-trust#directory-synchronization) and [key trust prerequisites](/windows/security/identity-protection/hello-for-business/hello-hybrid-key-trust#directory-synchronization) deployments, you will need Azure Active Directory Connect to synchronize user accounts in the on-premises Active Directory with Azure Active Directory. For on-premises deployments, both key and certificate trust, use the Azure MFA server where the credentials are not synchronized to Azure Active Directory. Learn how to [deploy Multifactor Authentication Services (MFA) for key trust](hello-key-trust-validate-deploy-mfa.md) and [for certificate trust](hello-cert-trust-validate-deploy-mfa.md) deployments.
|
||||
|
||||
## Provisioning
|
||||
|
||||
|
@ -3,6 +3,7 @@ title: Deploy certificates for remote desktop sign-in
|
||||
description: Learn how to deploy certificates to cloud Kerberos trust and key trust users, to enable remote desktop sign-in with supplied credentials.
|
||||
ms.collection:
|
||||
- ContentEngagementFY23
|
||||
- tier1
|
||||
ms.topic: article
|
||||
ms.date: 11/15/2022
|
||||
appliesto:
|
||||
|
@ -4,6 +4,7 @@ metadata:
|
||||
description: Use these frequently asked questions (FAQ) to learn important details about Windows Hello for Business.
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.topic: faq
|
||||
ms.date: 01/06/2023
|
||||
appliesto:
|
||||
|
@ -76,5 +76,5 @@ The computer is ready for dual enrollment. Sign in as the privileged user first
|
||||
* [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
* [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
* [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
* [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
* [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
* [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -55,5 +55,5 @@ RSSI measurements are relative and lower as the bluetooth signals between the tw
|
||||
* [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
* [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
* [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
* [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
* [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
* [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -3,6 +3,7 @@ title: Pin Reset
|
||||
description: Learn how Microsoft PIN reset services enable you to help users recover who have forgotten their PIN.
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.date: 07/29/2022
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
@ -265,5 +266,5 @@ The [ConfigureWebSignInAllowedUrls](/windows/client-management/mdm/policy-csp-au
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -5,6 +5,8 @@ ms.date: 02/24/2021
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
ms.topic: article
|
||||
ms.collection:
|
||||
- tier1
|
||||
---
|
||||
|
||||
# Remote Desktop
|
||||
@ -56,5 +58,5 @@ Users appreciate convenience of biometrics and administrators value the security
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -101,7 +101,7 @@ In Windows 10 and Windows 11, cloud experience host is an application used while
|
||||
|
||||
### More information on cloud experience host
|
||||
|
||||
[Windows Hello for Business and device registration](./hello-how-it-works-device-registration.md)
|
||||
[Windows Hello for Business and device registration](/azure/active-directory/devices/device-registration-how-it-works)
|
||||
|
||||
## Cloud Kerberos trust
|
||||
|
||||
|
@ -52,5 +52,5 @@ For more information read [how authentication works](hello-how-it-works-authenti
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -14,7 +14,7 @@ ms.topic: how-to
|
||||
If you plan to use certificates for on-premises single-sign on, then follow these **additional** steps to configure the environment to enroll Windows Hello for Business certificates for Azure AD-joined devices.
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Ensure you have performed the configurations in [Azure AD-joined devices for On-premises Single-Sign On](hello-hybrid-aadj-sso-base.md) before you continue.
|
||||
> Ensure you have performed the configurations in [Azure AD-joined devices for On-premises Single-Sign On](/windows/security/identity-protection/hello-for-business/hello-hybrid-aadj-sso) before you continue.
|
||||
|
||||
Steps you'll perform include:
|
||||
|
||||
|
@ -77,4 +77,4 @@ Before moving to the next section, ensure the following steps are complete:
|
||||
> - Update group memberships for the AD FS service account
|
||||
|
||||
> [!div class="nextstepaction"]
|
||||
> [Next: configure policy settings >](hello-hybrid-cert-whfb-settings-policy.md)
|
||||
> [Next: configure policy settings >](/windows/security/identity-protection/hello-for-business/hello-hybrid-key-trust-provision)
|
@ -3,6 +3,7 @@ title: Windows Hello for Business Deployment Prerequisite Overview
|
||||
description: Overview of all the different infrastructure requirements for Windows Hello for Business deployment models
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.date: 12/13/2022
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
|
@ -3,6 +3,7 @@ title: Manage Windows Hello in your organization (Windows)
|
||||
description: You can create a Group Policy or mobile device management (MDM) policy that will implement Windows Hello for Business on devices running Windows 10.
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.date: 2/15/2022
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
|
@ -3,6 +3,7 @@ title: Windows Hello for Business Overview (Windows)
|
||||
description: Learn how Windows Hello for Business replaces passwords with strong two-factor authentication on PCs and mobile devices in Windows 10 and Windows 11.
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.topic: conceptual
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
@ -110,5 +111,5 @@ Windows Hello for Business with a key, including cloud Kerberos trust, doesn't s
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
@ -87,7 +87,7 @@ A deployment's trust type defines how each Windows Hello for Business client aut
|
||||
|
||||
The key trust type does not require issuing authentication certificates to end users. Users authenticate using a hardware-bound key created during the built-in provisioning experience. This requires an adequate distribution of Windows Server 2016 or later domain controllers relative to your existing authentication and the number of users included in your Windows Hello for Business deployment. Read the [Planning an adequate number of Windows Server 2016 or later Domain Controllers for Windows Hello for Business deployments](hello-adequate-domain-controllers.md) to learn more.
|
||||
|
||||
The certificate trust type issues authentication certificates to end users. Users authenticate using a certificate requested using a hardware-bound key created during the built-in provisioning experience. Unlike key trust, certificate trust does not require Windows Server 2016 domain controllers (but still requires [Windows Server 2016 or later Active Directory schema](./hello-hybrid-cert-trust-prereqs.md#directories)). Users can use their certificate to authenticate to any Windows Server 2008 R2, or later, domain controller.
|
||||
The certificate trust type issues authentication certificates to end users. Users authenticate using a certificate requested using a hardware-bound key created during the built-in provisioning experience. Unlike key trust, certificate trust does not require Windows Server 2016 domain controllers (but still requires [Windows Server 2016 or later Active Directory schema](/windows/security/identity-protection/hello-for-business/hello-hybrid-cert-trust#directories)). Users can use their certificate to authenticate to any Windows Server 2008 R2, or later, domain controller.
|
||||
|
||||
> [!NOTE]
|
||||
> RDP does not support authentication with Windows Hello for Business key trust deployments as a supplied credential. RDP is only supported with certificate trust deployments as a supplied credential at this time. Windows Hello for Business key trust can be used with [Windows Defender Remote Credential Guard](../remote-credential-guard.md).
|
||||
|
@ -52,6 +52,6 @@ If your policy allows it, people can use biometrics (fingerprint, iris, and faci
|
||||
- [Why a PIN is better than a password](hello-why-pin-is-better-than-password.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
||||
|
@ -3,6 +3,7 @@ title: Why a PIN is better than an online password (Windows)
|
||||
description: Windows Hello enables users to sign in to their device using a PIN. How is a PIN different from (and better than) an online password.
|
||||
ms.collection:
|
||||
- highpri
|
||||
- tier1
|
||||
ms.date: 10/23/2017
|
||||
appliesto:
|
||||
- ✅ <a href=https://learn.microsoft.com/windows/release-health/supported-versions-windows-client target=_blank>Windows 10 and later</a>
|
||||
@ -81,5 +82,5 @@ If you only had a biometric sign-in configured and, for any reason, were unable
|
||||
- [Prepare people to use Windows Hello](hello-prepare-people-to-use.md)
|
||||
- [Windows Hello and password changes](hello-and-password-changes.md)
|
||||
- [Windows Hello errors during PIN creation](hello-errors-during-pin-creation.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](hello-event-300.md)
|
||||
- [Event ID 300 - Windows Hello successfully created](/windows/security/identity-protection/hello-for-business/hello-faq)
|
||||
- [Windows Hello biometrics in the enterprise](hello-biometrics-in-enterprise.md)
|
||||
|
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 183 KiB |
Before Width: | Height: | Size: 276 KiB |
Before Width: | Height: | Size: 279 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 185 KiB |
Before Width: | Height: | Size: 164 KiB |
Before Width: | Height: | Size: 200 KiB |
Before Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 132 KiB |
Before Width: | Height: | Size: 107 KiB |
Before Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 204 KiB |
Before Width: | Height: | Size: 152 KiB |
Before Width: | Height: | Size: 295 KiB |
Before Width: | Height: | Size: 292 KiB |
Before Width: | Height: | Size: 183 KiB |
Before Width: | Height: | Size: 278 KiB |
Before Width: | Height: | Size: 337 KiB |
Before Width: | Height: | Size: 216 KiB |
Before Width: | Height: | Size: 223 KiB |
Before Width: | Height: | Size: 303 KiB |
Before Width: | Height: | Size: 270 KiB |
Before Width: | Height: | Size: 194 KiB |
Before Width: | Height: | Size: 145 KiB |
Before Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 81 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 90 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 2.1 KiB |