Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
This task accepts as input the following:
DomainController: the name of the domain controller on which to update the computer account.
CurrentSamAccountName: the SAM account name of the computer.
NewSamAccountName: the new SAM account name of the computer.
DomainAccount: the domain account to be used for accessing computer account object in the directory service.
DomainAccountPassword: the password that matches DomainAccount.
The following definitions are used in the specification of message processing that follows:
LocalSMBSession: Contains the SMB state for the SMB/CIFS session established to the domain controller.
LocalServerHandle: Contains the RPC context handle representing a SAM RPC server object.
LocalDomainHandle: Contains the RPC context handle representing a domain object.
LocalUserHandle: Contains the RPC context handle representing a user object.
This task executes as follows:
The server MUST establish an authenticated (2) SMB/CIFS session to the IPC$ share on the DomainController domain controller by invoking [MS-CIFS] section 3.4.4.7, specifying the following parameters:
ServerName = DomainController
UserCredentials = DomainAccount \ DomainAccountPassword
Upon success, the server MUST store the result in LocalSMBSession.
The server MUST update the SAM account name with NewSamAccountName using the following steps:
The server MUST bind to the named pipe endpoint \PIPE\samr, as shown in [MS-SAMR] section 2.1.
The server MUST connect to the SAM RPC server on the domain controller using one of the SamrConnect variants. See [MS-SAMR] section 1.7.2 for details about invoking the SamrConnect variants in order to determine the version and method supported by the RPC server. See [MS-SAMR] section 3.1.5.1 for using the Open pattern in the SAM interface.
ServerName = DomainController
DesiredAccess = GENERIC_ALL
Upon success, the server MUST store the result in LocalServerHandle.
The server MUST call SamrLookupDomainInSamServer ([MS-SAMR] section 3.1.5.11.1) to retrieve LocalDomainSID specifying the following parameters:
ServerHandle = LocalServerHandle
Name = the name of the local machine
The server MUST call SamrOpenDomain ([MS-SAMR] section 3.1.5.1.5) specifying the following parameters:
DesiredAccess = GENERIC_ALL
DomainId = the domain security identifier (SID) obtained from prior step
Upon success, the server MUST store the result in LocalDomainHandle.
The server MUST call SamrLookupNamesInDomain ([MS-SAMR] section 3.1.5.11.2) specifying the following parameters:
DomainHandle = LocalDomainHandle
Names = CurrentSamAccountName
The server MUST call SamrOpenUser ([MS-SAMR] section 3.1.5.1.9) to obtain a handle to the computer account specifying the following parameters:
DomainHandle = the domain handle obtained from step 5
DesiredAccess = 0x0
UserId = the relative ID obtained from prior step
Upon success, the server MUST store the result in LocalUserHandle.
The server MUST call SamrSetInformationUser ([MS-SAMR] section 3.1.5.6.5) specifying the following parameters:
Regardless of whether an error was encountered in any of the preceding calls, any SAM RPC domain controller handles opened MUST be closed using SamrCloseHandle method ([MS-SAMR] section 3.1.5.13.1).
The server MUST disconnect the SMB/CIFS session ([MS-CIFS] section 3.2.4.24), specifying LocalSMBSession.