Sync-ADObject

Replicates a single object between any two domain controllers that have partitions in common.

Syntax

Sync-ADObject
    [-AuthType <ADAuthType>]
    [-Credential <PSCredential>]
    [-Destination] <String>
    [-Object] <ADObject>
    [-PassThru]
    [-PasswordOnly]
    [[-Source] <String>]
    [<CommonParameters>]

Description

The Sync-ADObject cmdlet replicates a single object between any two domain controllers that have partitions in common. The two domain controllers do not need to be direct replication partners. It can also be used to populate passwords in a read-only domain controller (RODC) cache.

Examples

-------------------------- EXAMPLE 1 --------------------------

C:\PS>Sync-ADObject "CN=AccountManagers,OU=AccountDeptOU,DC=corp,DC=contoso,DC=com" corp-DC01 corp-DC02

Description


Replicate an object with DistinguishedName 'CN=AccountManagers,OU=AccountDeptOU,DC=corp,DC=contoso,DC=com' from corp-DC01 to corp-DC02.

-------------------------- EXAMPLE 2 --------------------------

C:\PS>Get-ADUser saradavis | Sync-ADObject -Destination "corp-RODC01" -PasswordOnly

Description


Pre-cache the password of Sara Davis to the read-only Domain Controller corp-RODC01 using the user's SamAccountName

Required Parameters

-Destination

Specifies the identity of the Active Directory server that acts as the destination for synchronizing this data. The alias for Destination is Server. This parameter works similarly to the Server parameter as used on the Set-Object cmdlet with some restrictions. It does not allow domain or forest names to be used.

Valid formats for specifying the destination server are the following:

Host name

Example: corp-DC12

Host name and port

Examples: corp-DC12:3268

Fully qualified directory server name and port

Example: corp-DC12.corp.contoso.com:3268

IP address

Examples: 10.0.0.1

IP address and port

Example: 10.0.0.1:3268

Type:String
Aliases:Server, HostName, IPv4Address
Position:2
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Object

Specifies an Active Directory object by providing one of the following property values. The identifier in parentheses is the LDAP display name for the attribute.

Distinguished Name

Example: CN=saradavis,OU=users,OU=asia,DC=corp,DC=contoso,DC=com

GUID (objectGUID)

Example: 599c3d2e-f72d-4d20-8a88-030d99495f20

The cmdlet searches the default naming context or partition to find the object. If two or more objects are found, the cmdlet returns a non-terminating error.

This parameter can also get this object through the pipeline or you can set this parameter to an object instance.

Derived types, such as the following are also accepted:

Microsoft.ActiveDirectory.Management.ADGroup

Microsoft.ActiveDirectory.Management.ADUser

Microsoft.ActiveDirectory.Management.ADComputer

Microsoft.ActiveDirectory.Management.ADServiceAccount

Microsoft.ActiveDirectory.Management.ADFineGrainedPasswordPolicy

Microsoft.ActiveDirectory.Management.ADDomain

This example shows how to set this parameter to an ADObject object instance named "ADObjectInstance".

-Identity $ADObjectInstance

Type:ADObject
Position:0
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False

Optional Parameters

-AuthType

Specifies the authentication method to use. Possible values for this parameter include:

Negotiate or 0

Basic or 1

The default authentication method is Negotiate.

A Secure Sockets Layer (SSL) connection is required for the Basic authentication method.

The following example shows how to set this parameter to Basic.

-AuthType Basic

Type:ADAuthType
Parameter Sets:Negotiate, Basic
Position:Named
Default value:Microsoft.ActiveDirectory.Management.AuthType.Negotiate
Accept pipeline input:False
Accept wildcard characters:False
-Credential

Specifies a user account that has permission to perform this action. The default is the current user.

Type a user name, such as "User01" or "Domain01\User01", or enter a PSCredential object, such as one generated by the Get-Credential cmdlet. If you type a user name, you will be prompted for a password.

This parameter is not supported by any providers installed with Windows PowerShell.

Type:PSCredential
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PassThru

Returns the object once it has been synchronized on the destination server. By default if the PassThru parameter is not specified, this cmdlet does not generate any output.

Type:SwitchParameter
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-PasswordOnly

Populates a read-only domain controller (RODC) password cache with the password of the account specified in the Object parameter. If specified, no other data is replicated other than the password.

Type:SwitchParameter
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-Source

Specifies the identity of the Active Directory server that acts as the source for synchronizing this data. This parameter works similarly to the Server parameter as used on the Set-Object cmdlet with some restrictions. It does not allow domain or forest names to be used.

Valid format foes specifying the source server are the following:

Host name

Example: corp-DC12

Host name and port

Examples: corp-DC12:3268

Fully qualified directory server name and port

Example: corp-DC12.corp.contoso.com:3268

IP address

Examples: 10.0.0.1

IP address and port

Example: 10.0.0.1:3268

Type:String
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Inputs

Microsoft.ActiveDirectory.Management.ADObject

Derived types, such as the following are also accepted:

Microsoft.ActiveDirectory.Management.ADGroup

Microsoft.ActiveDirectory.Management.ADUser

Microsoft.ActiveDirectory.Management.ADComputer

Microsoft.ActiveDirectory.Management.ADServiceAccount

Microsoft.ActiveDirectory.Management.ADOrganizationalUnit

Microsoft.ActiveDirectory.Management.ADFineGrainedPasswordPolicy

Microsoft.ActiveDirectory.Management.ADDomain

Notes

  • This cmdlet only works with Windows Server 2012, Windows Server 2008 R2 SP1 and Windows Server 2008 or Windows Server 2003.
  • For Windows Server 2008 or Windows Server 2003, this cmdlet requires that the Active Directory Management Gateway Service is installed and running. This requires a separate download, which can be obtained on the Microsoft Download Center.