NULL Non-NULL Old of "new secret Current server time time" Non-NULL NULL Current server time Current server time Non-NULL Non-NULL Current server time Current server time LsarQuerySecret (Opnum 30) The LsarQuerySecret method is invoked to retrieve the current and old (or previous) of the secret object. NTSTATUS LsarQuerySecret( [in] LSAPR_HANDLE SecretHandle, [in, out, unique] PLSAPR_CR_CIPHER_VALUE* EncryptedCurrentValue, [in, out, unique] PLARGE_INTEGER CurrentValueSetTime, [in, out, unique] PLSAPR_CR_CIPHER_VALUE* EncryptedOldValue, [in, out, unique] PLARGE_INTEGER OldValueSetTime ); SecretHandle: An open secret object handle. EncryptedCurrentValue: Used to return the encrypted current value of the secret object. CurrentValueSetTime: Used to return the time when the current value was set. EncryptedOldValue: A BLOB representing the encrypted old value. It is valid for this parameter to be NULL, in which case the current value in the policy database is copied. OldValueSetTime: The time corresponding to the instant that the old value was last changed. Return Values: The following is a summary of the return values that an implementation MUST return, as specified by the message processing that follows. Return value/code Description 0x00000000 The request was successfully completed. STATUS_SUCCESS 0xC0000022 The caller does not have the permissions to perform this STATUS_ACCESS_DENIED operation. 0xC0000008 is not a SecretHandle handle. STATUS_INVALID_HANDLE Processing: This message takes five arguments: SecretHandle: An open handle to a secret object. If the handle is not a valid context handle to a secret object or SecretHandle.HandleType does not equal "Secret", the server MUST return STATUS_INVALID_HANDLE. The server MUST verify that SecretHandle grants access as specified in section with RequiredAccess set to SECRET_QUERY_VALUE.<74>
NULL Non-NULL Old of "new secret time" Current server time Non-NULL NULL Current server time Current server time Non-NULL Non-NULL Current server time Current server time LsarQuerySecret (Opnum 30) The LsarQuerySecret method is invoked to retrieve the current and old (or previous) of the secret object. NTSTATUS LsarQuerySecret( [in] LSAPR_HANDLE SecretHandle, [in, out, unique] PLSAPR_CR_CIPHER_VALUE* EncryptedCurrentValue, [in, out, unique] PLARGE_INTEGER CurrentValueSetTime, [in, out, unique] PLSAPR_CR_CIPHER_VALUE* EncryptedOldValue, [in, out, unique] PLARGE_INTEGER OldValueSetTime ); SecretHandle: An open secret object handle. EncryptedCurrentValue: Used to return the encrypted current value of the secret object. CurrentValueSetTime: Used to return the time when the current value was set. EncryptedOldValue: A BLOB representing the encrypted old value. It is valid for this parameter to be NULL, in which case the current value in the policy database is copied. OldValueSetTime: The time corresponding to the instant that the old value was last changed. Return Values: The following is a summary of the return values that an implementation MUST return, as specified by the message processing that follows. Return value/code Description 0x00000000 STATUS_SUCCESS The request was successfully completed. 0xC0000022 STATUS_ACCESS_DENIED The caller does not have the permissions to perform this operation. 0xC0000008 STATUS_INVALID_HANDLE SecretHandle is not a handle. Processing: This message takes five arguments: SecretHandle: An open handle to a secret object. If the handle is not a valid context handle to a secret object or SecretHandle.HandleType does not equal "Secret", the server MUST return STATUS_INVALID_HANDLE. The server MUST verify that SecretHandle grants access as specified in section with RequiredAccess set to SECRET_QUERY_VALUE.<74>
%5BMS-LSAD%5D-160714.docx