Astra Linux Directory Client Core API  1.7.0
ALDCoreUtils.h
См. документацию.
1 
6 #ifndef ALD_CORE_UTILS
7 #define ALD_CORE_UTILS
8 
9 #include <string>
10 #include "ALDCore.h"
11 #include "ldap-wrapper.h"
12 #include "kadm5-wrapper.h"
13 #include "ald-config.h"
14 #include "ald-rpc.h"
15 #include <stdint.h>
16 using namespace std;
17 
18 namespace ALD
19 {
25 // ALD connection interfaces flags
27 #define ALD_CI_LDAP 0x1 // LDAP interface needed
29 #define ALD_CI_KADM5 0x2 // KADM5 interface needed
30 #define ALD_CI_RPC 0x4 // RPC interface needed
31 
32 #define ALD_CI_GSS 0x100 // used GSS authentication
33 #define ALD_CI_LAZY 0x200 // dont establish connection immedeately
34 #define ALD_CI_CACHE 0x400 // try use credential cache
35 
36 #define ALD_CI_ALL ALD_CI_LDAP|ALD_CI_KADM5|ALD_CI_RPC|ALD_CI_GSS|ALD_CI_LAZY
37 #define ALD_CI_LOCAL ALD_CI_LDAP|ALD_CI_KADM5
38 #define ALD_CI_CLIENT ALD_CI_LDAP|ALD_CI_RPC|ALD_CI_GSS|ALD_CI_LAZY
39 
42 CALDLdapConnPtr GetLdapConnection(IALDCore &Core, ALDAuthType at, unsigned int ci_flags);
44 CALDKadm5ConnPtr GetKadm5Connection(IALDCore &Core, ALDAuthType at, unsigned int ci_flags);
45 CALDRpcConnPtr GetRpcConnection(IALDCore &Core, ALDAuthType at, unsigned int ci_flags);
46 CALDConfigPtr GetConfig(IALDCore &Core);
48 
53 {
54 protected:
60  unsigned int m_ci_flags;
61  string m_strUserId;
62  bool m_bActive;
63 public:
65  explicit CALDConnection(IALDCore &Core, ALDAuthType at,
66  unsigned int flags = ALD_CI_ALL);
70  IALDCore *pCore() const;
78  const string& userId() const {return m_strUserId;}
79 
81  bool Check(unsigned int timeout, unsigned int delay);
83  bool IsConnected();
85  void Connect(ALDAuthType at, unsigned int ci_flags = 0);
87  void Connect(const string &userId, ALDAuthType at, unsigned int ci_flags = 0);
89  void Disconnect();
93  unsigned int flags() const;
95  bool IsLdap() const;
97  bool IsKadm() const;
99  bool IsRpc() const;
100  virtual ~CALDConnection();
101 };
102 
104 typedef shared_ptr<CALDConnection> CALDConnectionPtr;
105 
107 void RegisterLdapSchema(IALDCore &Core, const string &schema);
108 
111 
113 void FreeCore(IALDCore* &ICore);
114 
116 bool LoginAdmin(IALDCore &Core, const string &admin = "");
117 
119 bool LoginAdmin(IALDCore &Core, const string &admin, const string &pwd);
120 
122 void Logout(IALDCore &Core, bool keep_cred = false);
123 
125 void InitCore(IALDCore &Core);
126 
132 {
134 //#define ALD_RE_USER_NAME "[a-z][a-z0-9\\_\\-]*" now in ALD_PRM_VALID_USER_NAMES
135 public:
137  CALDUserNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_USER_NAME, Core){}
138  virtual bool Validate(const void *value, const void *tag, void *result);
139 };
140 
146 {
148 //#define ALD_RE_GROUP_NAME "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*" now in ALD_PRM_VALID_GROUP_NAMES
149 public:
151  CALDGroupNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_GROUP_NAME, Core){}
152  virtual bool Validate(const void *value, const void *tag, void *result);
153 };
154 
160 {
162 #define ALD_RE_SERVICE_NAME "[A-Za-z][A-Za-z0-9\\_\\-]*"
163 public:
165  CALDServiceNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_SERVICE_NAME, Core){}
166  virtual bool Validate(const void *value, const void *tag, void *result);
167 };
168 
174 {
176 #define ALD_RE_PATH "[\\/0-9A-Za-zА-Яа-я\\.\\-\\_]+"
177 public:
179  CALDPathValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_PATH, Core){}
180  virtual bool Validate(const void *value, const void *tag, void *result);
181 };
182 
188 {
190 #define ALD_RE_UTF8_GECOS_FIELD "[^\\:]*"
191 //#define ALD_RE_UTF8_GECOS_FIELD "[0-9A-Za-zА-Яа-рс-я \\@\\#\\$\\-\\.\\+\\‍(\\‍)\\_]*"
193 #define ALD_RE_GECOS_FIELD "[^А-Яа-рс-я\\:]*"
194 //#define ALD_RE_GECOS_FIELD "[0-9A-Za-z \\@\\#\\$\\-\\.\\+\\‍(\\‍)\\_]*"
195 public:
197  CALDGecosValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_GECOS, Core){}
198  virtual bool Validate(const void *value, const void *tag, void *result);
199 };
200 
206 {
208 #define ALD_RE_POLICY_NAME "[0-9A-Za-z\\_\\-]+"
209 public:
211  CALDPolicyNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_POLICY_NAME, Core){}
212  virtual bool Validate(const void *value, const void *tag, void *result);
213 };
214 
220 {
222 #define ALD_RE_LIFETIME "\\d+(d|h|m|s)"
223 public:
225  CALDPolicyLifeTimeValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_POLICY_LIFETIME, Core){}
226  virtual bool Validate(const void *value, const void *tag, void *result);
227 };
228 
234 {
235 public:
237  CALDTaskHistoryValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_TASK_HISTORY, Core){}
238  virtual bool Validate(const void *value, const void *tag, void *result);
239 };
240 
246 {
247 public:
249  CALDHiddenPrincipalsValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_HIDDEN_PRINCIPALS, Core){}
250  virtual bool Validate(const void *value, const void *tag, void *result);
251 };
252 
258 {
260 #define ALD_RE_HOST_NAME "[a-z0-9\\-][\\.a-z0-9\\-]*"
261 #define ALD_RE_HOST_DOMAIN_NAME "[a-z0-9\\-]+%s"
263 public:
265  CALDHostNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_HOST_NAME, Core){}
266  virtual bool Validate(const void *value, const void *tag, void *result);
267 };
268 
274 {
276 #define ALD_RE_DOMAIN_NAME "^\\.[a-z0-9\\-][a-z0-9\\-\\.]*"
277 public:
279  CALDDomainNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_DOMAIN_NAME, Core){}
280  virtual bool Validate(const void *value, const void *tag, void *result);
281 };
282 
288 {
289 public:
291  CALDDNSNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_DNS_NAME, Core){}
292  virtual bool Validate(const void *value, const void *tag, void *result);
293 };
294 
300 {
302 #define ALD_RE_HOST_FLAGS "\\[P?C?F?D?\\]"
303 public:
305  CALDHostFlagsValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_HOST_FLAGS, Core){}
306  // tag ignored, result ignored
307  virtual bool Validate(const void *value, const void *tag, void *result);
308 };
309 
315 {
317 #define ALD_RE_SGROUP_NAME "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"
318 public:
320  CALDSvcGroupNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_SGROUP_NAME, Core){}
321  virtual bool Validate(const void *value, const void *tag, void *result);
322 };
323 
329 {
331 #define ALD_RE_HGROUP_NAME "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"
332 public:
334  CALDHostGroupNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_HGROUP_NAME, Core){}
335  // tag ignored, result ignored
336  virtual bool Validate(const void *value, const void *tag, void *result);
337 };
338 
339 
345 {
347 #define ALD_VALIDATOR_LOG_TEMPLATE "LogTemplate"
348 public:
351  virtual bool Validate(const void *value, const void *tag, void *result);
352 };
353 
359 {
360 public:
362  CALDDocNameValidator(IALDCore &Core):CALDValidator(ALD_VALIDATOR_DOC_NAME, Core){}
363  virtual bool Validate(const void *value, const void *tag, void *result);
364 };
365 
368 
370 bool UnparseHostName(IALDCore &Core, const string &host, const string &domain, string &fullname, string *perror);
372 bool ParseHostName(IALDCore &Core, const string &fullname, string &host, string &domain, string *perror);
373 
374 
382 void UpdatePrincipalInKeytab(CALDKadm5ConnPtr krb5, const string &keytab, const string &name, bool create);
383 
385 string HostPrincipal(const string &name);
387 string UserToDN(const string &user, const string &base);
389 string DNToUser(const string &dn);
390 
392 enum ALDServiceOperation {asoStop, asoStart, asoRestart, asoInstall, asoRemove, asoReload};
394 int ManageService(const string &service, ALDServiceOperation op, bool ignore = false);
395 // int ManageService(const string &service, const string &op, bool ignore = false);
397 
399 int ExecCommand(const string &command, bool infinite = false);
401 int ExecCommandOut(const string &command, ald_string_list &outlist, bool infinite = false);
402 int ExecCommandInOut(const string &command, ald_string_list &outlist,
403  const ald_string_list &inlist, bool infinite = false);
405 
407 void CheckValidExits(const string &command, const int exitcode, ald_int_list &validlist);
408 
410 void RestartNSCD();
411 
414 
416 void CreateClientMountPoint(IALDCore &Core);
418 void UmountClientMountPoint(IALDCore &Core, const string &mode);
419 void MountClientMountPoint(IALDCore &Core, const string &mode);
421 
423 void SetAllowTix(CALDKadm5ConnPtr &krb5, bool AllowTix);
424 
427 
430 
433 
435 void CheckCompatibility(IALDCore &Core, const string &version);
436 
438 string CannonicalizePrincipalName(IALDCore &Core, const string &name, const string &domain);
439 
441 string SvcPrincipal(IALDCore &Core, const string &svc, const string &host = "", const string &realm = "");
442 
444 string LifetimeToStr(unsigned int ltime);
445 
447 void UseCommonCommand(IALDCore &Core, const string &cmd);
448 
449 // serialization
451 string princ2str(const CALDKrbPrincipalPtr &princ);
453 CALDKrbPrincipalPtr str2princ(const string &name, const string &body);
454 
455 string policy2str(const CALDKrbPolicyPtr &policy);
456 CALDKrbPolicyPtr str2policy(const string &name, const string &body);
458 
459 // recheck ALD server name
461 bool GetActiveALDServerName(IALDCore& Core, const string& domain, string& dc);
462 
464 
466 void SetCounter(string &name, int value);
467 
469 int GetCounter(string &name);
470 
472 int IncrementCounter(string &name, int increment);
473 
474 bool ReConfigureSSSD(IALDCore *pCore, CALDConnectionPtr conn);
475 
476 void UnConfigureSSSD(IALDCore *pCore);
477 
478 } // ALD
479 
480 #endif // ALD_CORE_UTILS
ALD::ALDAuthType
ALDAuthType
Набор способов аутентификации
Definition: ALDCore.h:28
ALD::CALDDocNameValidator::CALDDocNameValidator
CALDDocNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:362
ALD::CALDConnection::m_strUserId
string m_strUserId
Аутентифицированный пользователь
Definition: ALDCoreUtils.h:61
ALD::LoginAdmin
bool LoginAdmin(IALDCore &Core, const string &admin, const string &pwd)
Вход администратора с паролем
ALD::ParseHostName
bool ParseHostName(IALDCore &Core, const string &fullname, string &host, string &domain, string *perror)
Разбор полного имени компьютера
ALD::IncrementCounter
int IncrementCounter(string &name, int increment)
Атомарное изменение значения именованного счётчика
ALD::CALDConnection::m_pCore
IALDCore * m_pCore
Указатель на интерфейс ядра
Definition: ALDCoreUtils.h:55
ALD::CALDHostFlagsValidator
Класс валидатора флагов компьютера
Definition: ALDCoreUtils.h:300
ALD::CALDSvcGroupNameValidator::CALDSvcGroupNameValidator
CALDSvcGroupNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:320
ALD::CALDValidator
Базовый класс валидатора
Definition: ALDCore.h:132
ALD::CALDConnection::m_bActive
bool m_bActive
Состояние активного соединения
Definition: ALDCoreUtils.h:62
ALD::GetActiveALDServerName
bool GetActiveALDServerName(IALDCore &Core, const string &domain, string &dc)
Обнаружение контроллера указанного домена
ALD::SvcPrincipal
string SvcPrincipal(IALDCore &Core, const string &svc, const string &host="", const string &realm="")
Синтез принципала сервиса по имени, компьютеру и домену
ALD::CALDTaskHistoryValidator
Класс валидатора размера истории заданий
Definition: ALDCoreUtils.h:234
ALD::CALDConfigPtr
shared_ptr< IALDConfig > CALDConfigPtr
Разделяемый указатель на интерфейс конфигурирования Astra Linux Directory.
Definition: ald-config.h:223
ALD::CALDGroupNameValidator
Класс валидатора имени группы
Definition: ALDCoreUtils.h:146
ALD::CheckConfigured
void CheckConfigured(IALDCore &Core)
Проверка настроенности ALD.
ALD::CALDConnection::Connect
void Connect(const string &userId, ALDAuthType at, unsigned int ci_flags=0)
Установка соединения для заданного пользователя по типу аутентификации и флагам
ALD::CALDConnection::Connect
void Connect(ALDAuthType at, unsigned int ci_flags=0)
Установка соединения по типу аутентификации и флагам
ALD::RegisterBaseValidators
void RegisterBaseValidators(IALDCore &Core)
Регистрация базовых валитаторов
ALD::UseCommonCommand
void UseCommonCommand(IALDCore &Core, const string &cmd)
Разрешение использования указанной общей команды
ALD::DNToUser
string DNToUser(const string &dn)
ПОлучение имени пользователя по DN.
ALD::CALDSvcGroupNameValidator
Класс валидатора имени группы сервисов
Definition: ALDCoreUtils.h:315
ALD::CALDConnection::userId
const string & userId() const
Возвращет аутентифицированного пользователя
Definition: ALDCoreUtils.h:78
ALD::CALDDNSNameValidator
Класс валидатора DNS имени
Definition: ALDCoreUtils.h:288
ALD::SetCounter
void SetCounter(string &name, int value)
Установка значения именованного счётчика
ALD::CALDSvcGroupNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::AllocateCore
IALDCore * AllocateCore()
Выделение ядра
ALD::UpdateLifetimes
void UpdateLifetimes(IALDCore &Core, CALDKadm5ConnPtr &krb5)
Обновление времени жизни всех принципалов
ALD::CALDPolicyLifeTimeValidator
Класс валидатора времени жизни
Definition: ALDCoreUtils.h:220
ALD::CALDConnection
Класс соединения
Definition: ALDCoreUtils.h:53
ALD::UpdatePrincipalInKeytab
void UpdatePrincipalInKeytab(CALDKadm5ConnPtr krb5, const string &keytab, const string &name, bool create)
Обновление ключей принципала в ключевом файле
ALD::CALDHostGroupNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDUserNameValidator::CALDUserNameValidator
CALDUserNameValidator(IALDCore &Core)
Регулярное выражение имени пользователя
Definition: ALDCoreUtils.h:137
ALD::CALDPathValidator
Класс валидатора пути ФС
Definition: ALDCoreUtils.h:174
ALD::CannonicalizePrincipalName
string CannonicalizePrincipalName(IALDCore &Core, const string &name, const string &domain)
Канонизация имени принципала (синтез имени с доменом)
ALD::RegisterLdapSchema
void RegisterLdapSchema(IALDCore &Core, const string &schema)
Регистрирует указанную схему LDAP.
ald-rpc.h
Объявление RPC интерфейса Astra Linux Directory.
ALD::CALDConnection::CALDConnection
CALDConnection(IALDCore &Core, ALDAuthType at, unsigned int flags=ALD_CI_ALL)
Конструктор
ALD::CALDConnection::pCore
IALDCore * pCore() const
Возвращает указатель на интерфейс ядра
ALD::FreeCore
void FreeCore(IALDCore *&ICore)
Освобождение ядра
ALD::CALDKrbPolicyPtr
shared_ptr< CALDKrbPolicy > CALDKrbPolicyPtr
Разделяемый указатель на политику паролей Kerberos CALDKrbPolicy.
Definition: kadm5-wrapper.h:111
ALD::CALDHostGroupNameValidator
Класс валидатора имени группы компьютеров
Definition: ALDCoreUtils.h:329
ALD::CheckCompatibility
void CheckCompatibility(IALDCore &Core, const string &version)
Проверка совместимости с версией
ALD::CALDDomainNameValidator::CALDDomainNameValidator
CALDDomainNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:279
ALD::CALDConnection::m_connKadm5
CALDKadm5ConnPtr m_connKadm5
Указатель на интерфейс Kerberos.
Definition: ALDCoreUtils.h:58
ALD::CALDDomainNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::RestartNSCD
void RestartNSCD()
Перезапуск служб NSCD, NSLCD.
ALD::CALDTaskHistoryValidator::CALDTaskHistoryValidator
CALDTaskHistoryValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:237
ALD::InitCore
void InitCore(IALDCore &Core)
Инициализация ядра
ALD::CALDServiceNameValidator
Класс валидатора имени сервиса
Definition: ALDCoreUtils.h:160
ALD::CALDDNSNameValidator::CALDDNSNameValidator
CALDDNSNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:291
ALD::CALDConnection::m_ci_flags
unsigned int m_ci_flags
Флаги соединения
Definition: ALDCoreUtils.h:60
ALD::CALDUserNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDRpcConnPtr
shared_ptr< IALDRpcConnection > CALDRpcConnPtr
Definition: ald-rpc.h:179
ALD::CALDConnection::Disconnect
void Disconnect()
Завершение соединения
ALD::CALDGecosValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::SetAllowTix
void SetAllowTix(CALDKadm5ConnPtr &krb5, bool AllowTix)
Установка признака выдачи билетов AllowTix всех принципалов
ALD::IALDCore
Абстрактный класс IALDCore - основной интерфейс клиента Astra Linux Directory, с помощью которого вып...
Definition: ALDCore.h:242
ALD::UnparseHostName
bool UnparseHostName(IALDCore &Core, const string &host, const string &domain, string &fullname, string *perror)
Синтез полного имени компьютера
ALD::InvalidateNSCD
void InvalidateNSCD()
Обновление кеша службы NSCD.
ALD::CALDGecosValidator
Класс валидатора GECOS.
Definition: ALDCoreUtils.h:188
ALD::CALDConnection::AuthType
ALDAuthType AuthType() const
Возвращает тип аутентификации
ALD::CALDConnection::kadm5
CALDKadm5ConnPtr & kadm5()
Возвращает указатель на интерфейс Kerberos.
ALD::CALDConnectionPtr
shared_ptr< CALDConnection > CALDConnectionPtr
Разделяемый указатель на соединение
Definition: ALDCoreUtils.h:104
ALD::CALDConnection::m_connLdap
CALDLdapConnPtr m_connLdap
Указатель на интерфейс LDAP.
Definition: ALDCoreUtils.h:57
ALD::CALDPathValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDConnection::rpc
CALDRpcConnPtr & rpc()
Возвращает указатель на интерфейс RPC.
kadm5-wrapper.h
Объявление интерфейса взаимодействия с Kerberos.
ALD::CALDConnection::m_connRpc
CALDRpcConnPtr m_connRpc
Указатель на интерфейс RPC.
Definition: ALDCoreUtils.h:59
ALD::CALDPolicyNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDHiddenPrincipalsValidator::CALDHiddenPrincipalsValidator
CALDHiddenPrincipalsValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:249
ALD::CALDKadm5ConnPtr
shared_ptr< IALDKadm5Connection > CALDKadm5ConnPtr
Разделяемый указатель на интерфейс соединения с сервером Kerberos.
Definition: kadm5-wrapper.h:338
ALD::ald_int_list
list< int > ald_int_list
Список целых
Definition: ALDUtils.h:154
ALD::CALDServiceNameValidator::CALDServiceNameValidator
CALDServiceNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:165
ldap-wrapper.h
Объявление интерфейса взаимодействия с LDAP.
ALD::CALDHostFlagsValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::FilterUserPrincipals
void FilterUserPrincipals(IALDCore &Core, ald_string_list &list)
Отбрасывание из списка принципалов записей с '/'.
ALD::CALDPolicyNameValidator::CALDPolicyNameValidator
CALDPolicyNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:211
ALD::CALDPolicyNameValidator
Класс валидатора имени политики
Definition: ALDCoreUtils.h:206
ALD::CALDHostFlagsValidator::CALDHostFlagsValidator
CALDHostFlagsValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:305
ALD::CALDLdapConnPtr
shared_ptr< IALDLdapConnection > CALDLdapConnPtr
Разделяемый указатель на интерфейс соединения с сервером LDAP.
Definition: ldap-wrapper.h:310
ALD::CALDLogTemplateValidator
Класс валидатора шаблона протоколирования
Definition: ALDCoreUtils.h:345
ALD::CALDLogTemplateValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDHostNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDPolicyLifeTimeValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDConnection::ldap
CALDLdapConnPtr & ldap()
Возвращает указатель на интерфейс LDAP.
ALD::CALDConnection::Check
bool Check(unsigned int timeout, unsigned int delay)
Проверка соединения
ALD::GetCounter
int GetCounter(string &name)
Получение значения именованного счётчика
ald-config.h
Объявление интерфейса конфигурирования Astra Linux Directory.
ALD::CALDDNSNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDHiddenPrincipalsValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::Logout
void Logout(IALDCore &Core, bool keep_cred=false)
Выход администратора
ALD::CALDConnection::IsConnected
bool IsConnected()
Возвращает состояние соединения
ALD
Пространство имен основного интерфейса Astra Linux Directory.
Definition: action-definitions.h:10
ALD::CALDConnection::EnsureConnection
void EnsureConnection()
Восстановление соединения
ALD::CALDHostNameValidator::CALDHostNameValidator
CALDHostNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:265
ALD_VALIDATOR_LOG_TEMPLATE
#define ALD_VALIDATOR_LOG_TEMPLATE
Регулярное выражение шаблона протоколирования
Definition: ALDCoreUtils.h:347
ALD::CALDHostGroupNameValidator::CALDHostGroupNameValidator
CALDHostGroupNameValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:334
ALD::CALDConnection::IsKadm
bool IsKadm() const
Возвращает доступность интерфейса Kerberos.
ALD::CALDConnection::flags
unsigned int flags() const
Возвращет флаги соединения
ALD::CALDPolicyLifeTimeValidator::CALDPolicyLifeTimeValidator
CALDPolicyLifeTimeValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:225
ALD::CALDGecosValidator::CALDGecosValidator
CALDGecosValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:197
ALD::CALDTaskHistoryValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDDomainNameValidator
Класс валидатора имени домена
Definition: ALDCoreUtils.h:274
ALD::CALDGroupNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALDCore.h
Объявление основного интерфейса клиента Astra Linux Directory и необходимых для него типов и интерфей...
ALD::CALDServiceNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDGroupNameValidator::CALDGroupNameValidator
CALDGroupNameValidator(IALDCore &Core)
Регулярное выражение имени группы
Definition: ALDCoreUtils.h:151
ALD::HostPrincipal
string HostPrincipal(const string &name)
Получение имени принципала компьютера
ALD::CALDDocNameValidator::Validate
virtual bool Validate(const void *value, const void *tag, void *result)
Перегружаемый вызов валидации
ALD::CALDHiddenPrincipalsValidator
Класс валидатора скрытых принципалов
Definition: ALDCoreUtils.h:246
ALD::CALDConnection::m_AuthType
ALDAuthType m_AuthType
Текущий тип аутентификации
Definition: ALDCoreUtils.h:56
ALD::UserToDN
string UserToDN(const string &user, const string &base)
ПОлучение DN по имени пользователя
ALD::CALDUserNameValidator
Класс валидатора имени пользователя
Definition: ALDCoreUtils.h:132
ALD::CALDDocNameValidator
Класс валидатора имени документа
Definition: ALDCoreUtils.h:359
ALD::CALDKrbPrincipalPtr
shared_ptr< CALDKrbPrincipal > CALDKrbPrincipalPtr
Разделяемый указатель на принципал Kerberos CALDKrbPrincipal.
Definition: kadm5-wrapper.h:185
ALD::CheckValidExits
void CheckValidExits(const string &command, const int exitcode, ald_int_list &validlist)
Проверка кода возврата по списку успешных
ALD::ald_string_list
list< string > ald_string_list
Список строк
Definition: ALDUtils.h:152
ALD::CALDConnection::IsLdap
bool IsLdap() const
Возвращает доступность интерфейса LDAP.
ALD::CALDConnection::IsRpc
bool IsRpc() const
Возвращает доступность интерфейса RPC.
ALD::CALDHostNameValidator
Класс валидатора имени компьютера
Definition: ALDCoreUtils.h:258
ALD::CALDLogTemplateValidator::CALDLogTemplateValidator
CALDLogTemplateValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:350
ALD::LifetimeToStr
string LifetimeToStr(unsigned int ltime)
Получение ткстового представления времени жизни
ALD::CALDPathValidator::CALDPathValidator
CALDPathValidator(IALDCore &Core)
Конструктор
Definition: ALDCoreUtils.h:179