Поделиться через


Функция SetClusterServiceAccountPassword (clusapi.h)

[Эта функция доступна для использования в операционных системах, указанных в разделе Требования. Поддержка этой функции была удалена в Windows Server 2008, и эта функция ничего не делает и возвращает ERROR_CALL_NOT_IMPLEMENTED.]

Изменяет пароль для учетной записи пользователя службы кластеров на всех доступных узлах кластера. Тип PCLUSAPI_SET_CLUSTER_SERVICE_ACCOUNT_PASSWORD определяет указатель на эту функцию.

Синтаксис

DWORD SetClusterServiceAccountPassword(
  [in]           LPCWSTR                      lpszClusterName,
  [in]           LPCWSTR                      lpszNewPassword,
  [in, optional] DWORD                        dwFlags,
  [out]          PCLUSTER_SET_PASSWORD_STATUS lpReturnStatusBuffer,
  [in, out]      LPDWORD                      lpcbReturnStatusBufferSize
);

Параметры

[in] lpszClusterName

Строка Юникода с завершением NULL, указывающая имя кластера.

[in] lpszNewPassword

Строка Юникода с завершением NULL, указывающая новый пароль для учетной записи пользователя службы кластеров.

[in, optional] dwFlags

Необязательное битовое поле значений, перечисляемых из перечисления CLUSTER_SET_PASSWORD_FLAGS , содержащее флаги, описывающие способ применения обновления пароля к кластеру.

По умолчанию (dwFlags = 0) функция не будет продолжать работу, если не будут доступны все узлы кластера.

CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES (1 (0x1))

Вызывает выполнение функции SetClusterServiceAccountPassword , даже если все узлы недоступны. Функция попытается изменить пароль на максимально возможном количестве узлов, но все узлы, не в состоянии ClusterNodeUp или ClusterNodePaused (см. GetClusterNodeState) не будут обновлены.

[out] lpReturnStatusBuffer

Указатель на выходной буфер, который получает массив CLUSTER_SET_PASSWORD_STATUS структур, описывающих результат обновления пароля для каждого узла кластера. Если этот параметр не равен NULL и буфер недостаточно велик для хранения результирующих данных, функция возвращает ERROR_MORE_DATA и задает для lpcbReturnStatusBufferSize необходимый размер выходного буфера. Если этот параметр имеет значение NULL, обновление пароля выполняться не будет; функция присвоит lpcbReturnStatusBufferSize необходимый размер буфера и вернет ERROR_SUCCESS.

[in, out] lpcbReturnStatusBufferSize

На входных данных указатель на значение, указывающее размер (в байтах) выходного буфера. В выходных данных указатель на значение, указывающее фактический размер результирующей информации (в байтах). Размер выходных данных всегда указывается, даже если lpReturnStatusBuffer имеет значение NULL. Этот параметр не может иметь значение NULL.

Возвращаемое значение

Если операция выполнена успешно, функция возвращает ERROR_SUCCESS (0).

Если операция завершается сбоем, функция возвращает код системной ошибки. Ниже приведены возможные коды ошибок.

Возвращаемый код/значение Описание
ERROR_ALL_NODES_NOT_AVAILABLE
5037 (0x13AD)
Некоторые узлы в кластере недоступны (то есть не находятся в состояниях ClusterNodeStateUp или ClusterNodeStatePaused ), а флаг CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES не установлен.
ERROR_MORE_DATA
234 (0xEA)
Выходной буфер, на который указывает lpReturnStatusBuffer , не был достаточно велик для хранения результирующей данных.

Комментарии

По умолчанию функция SetClusterServiceAccountPassword не выполняет никаких действий, пока не доступны все узлы в кластере (то есть в состояниях ClusterNodeStateUp или ClusterNodeStatePaused ). Вы можете использовать флаг CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES , чтобы переопределить это поведение, но обратите внимание, что любой узел, которому не удалось обновить пароль, не сможет присоединиться к кластеру, пока пароль не будет обновлен вручную на этом узле.

Если новый пароль совпадает со старым паролем на узле, обновление пароля не применяется к узлу и возвращается ERROR_SUCCESS .

Эта функция не обновляет пароль, хранящийся контроллерами домена для учетной записи пользователя службы кластеров.

Не вызывайте SetClusterServiceAccountPassword из библиотеки DLL ресурса.

Требования

   
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2003 Datacenter, Windows Server 2003 Корпоративная
Целевая платформа Windows
Header clusapi.h
Библиотека ClusAPI.lib
DLL ClusAPI.dll

См. также раздел

CLUSTER_SET_PASSWORD_FLAGS

CLUSTER_SET_PASSWORD_STATUS

Функции управления кластером