|
Astra Linux Directory Client Core API
1.7.0
|
См. документацию.
6 #ifndef ALD_KADM5_WRAPPER
7 #define ALD_KADM5_WRAPPER
23 #define KADM5_ITF_NAME "kadmin"
27 #define KRB5_ITF_VERSION_1 1
28 #define KRB5_ITF_VERSION_2 2
32 #define KRB5CCNAME "KRB5CCNAME"
86 #define ALD_KRB_SET_PW_MAX_LIFE 0x01
89 #define ALD_KRB_SET_PW_MIN_LIFE 0x02
91 #define ALD_KRB_SET_PW_MIN_LENGTH 0x04
93 #define ALD_KRB_SET_PW_MIN_CLASSES 0x08
95 #define ALD_KRB_SET_PW_HISTORY_NUM 0x10
99 #define ALD_KRB_SET_PW_MAX_FAIL 0x20
100 #define ALD_KRB_SET_PW_FAIL_CNT_INT 0x40
102 #define ALD_KRB_SET_PW_LCK_OUT_DUR 0x80
107 #define ALD_KRB_SET_PW_ALL ALD_KRB_SET_PW_MAX_LIFE | ALD_KRB_SET_PW_MIN_LIFE | ALD_KRB_SET_PW_MIN_LENGTH \
108 | ALD_KRB_SET_PW_MIN_CLASSES | ALD_KRB_SET_PW_HISTORY_NUM | ALD_KRB_SET_PW_MAX_FAIL \
109 | ALD_KRB_SET_PW_FAIL_CNT_INT | ALD_KRB_SET_PW_LCK_OUT_DUR
136 princ_expire_time = 0;
145 max_renewable_life = 0;
151 #define ALD_KRB_DISALLOW_ALL_TIX 0x00000040
154 #define ALD_KRB_REQUIRES_PWCHANGE 0x00000200
156 #define ALD_KRB_DISALLOW_TGT_BASED 0x00000004
160 #define ALD_KRB_SET_POLICY 0x000800
161 #define ALD_KRB_SET_RANDKEY 0x001000
163 #define ALD_KRB_SET_PWCHANGE 0x002000
165 #define ALD_KRB_SET_DISALLOWTIX 0x004000
167 #define ALD_KRB_SET_MAXLIFE 0x008000
169 #define ALD_KRB_SET_MAXRLIFE 0x010000
171 #define ALD_KRB_CLR_FAILCNT 0x020000
173 #define ALD_KRB_SET_DISALLOWTGTBASED 0x040000
178 #define ALD_KRB_STR_ACCOUNT_TYPE "ald_account"
180 #define ALD_KRB_STR_ACCOUNT_USER "user"
181 #define ALD_KRB_STR_ACCOUNT_SERVICE "service"
182 #define ALD_KRB_STR_ACCOUNT_INTERNAL "internal"
203 virtual void ConnectPassword(
const string& user,
const string& pwd,
bool kadmin,
bool savecred =
false) = 0;
211 virtual void ConnectKeytab(
const string& user,
const string& keytab,
bool kadmin,
bool savecred =
false) = 0;
355 #define ADM_KRB_USER_NAME "K/M"
360 #endif // ALD_KADM5_WRAPPER
time_t pw_expiration
Время истечения действия пароля
Definition: kadm5-wrapper.h:124
virtual string GetUserId()=0
Текущий аутентифицированный пользователь
virtual long GetLastError()=0
Получение кода последней ошибки
unsigned int history_num
Размер истории паролей
Definition: kadm5-wrapper.h:46
virtual void ConnectKeytab(const string &user, const string &keytab, bool kadmin, bool savecred=false)=0
Установка соединения с помощью файла ключей
virtual CALDKrbPrincipalPtr PrincipalGet(const string &princname)=0
Получение принципала по имени
virtual string ConnectCreds(const string &cache, bool kadmin)=0
Установка соединения с помощью кеша аутентификационных данных
Абстрактный класс-интерфейс соединения с сервером Kerberos.
Definition: kadm5-wrapper.h:192
virtual void Principals(const string &expr, ald_string_list &princlist)=0
Получение списка принципалов по шаблону
time_t last_success
Время последней успешной попытки аутентификации
Definition: kadm5-wrapper.h:126
virtual ~CALDKrbPolicy()
Деструтор
Definition: kadm5-wrapper.h:82
unsigned int lockout_duration
Длительность блокировки
Definition: kadm5-wrapper.h:51
virtual void PrincipalChangePwd(CALDKrbPrincipalPtr Principal, const string &pwd)=0
Смена пароля принципала
#define KRB5_ITF_VERSION_2
Версия 2 протокола Kerberos.
Definition: kadm5-wrapper.h:29
IALDKadm5Wrapper(IALDCore &Core)
Конструктор
Definition: kadm5-wrapper.h:348
virtual bool IfReconnectNeeded()=0
Проверка нужна ли переустановка соединения
unsigned int fail_auth_count
Количество неуспешных попыток аутентификации
Definition: kadm5-wrapper.h:128
Класс принципала Kerberos.
Definition: kadm5-wrapper.h:117
shared_ptr< CALDKrbPolicy > CALDKrbPolicyPtr
Разделяемый указатель на политику паролей Kerberos CALDKrbPolicy.
Definition: kadm5-wrapper.h:111
ald_string_map strings
Строковые атрибуты
Definition: kadm5-wrapper.h:132
shared_ptr< IALDKadm5Wrapper > CALDKadm5WrapperPtr
Разделяемый указатель на интерфейс взаимодействия с Kerberos IALDKadm5Wrapper.
Definition: kadm5-wrapper.h:352
time_t mod_date
Время модификации
Definition: kadm5-wrapper.h:125
string name
Имя принципала
Definition: kadm5-wrapper.h:119
time_t last_failed
Время последней неуспешной попытки аутентификации
Definition: kadm5-wrapper.h:127
#define KADM5_ITF_NAME
Имя интерфейса Kerberos.
Definition: kadm5-wrapper.h:24
unsigned int failcnt_interval
Время между попытками ввода при неверном вводе
Definition: kadm5-wrapper.h:50
unsigned int itf_version
Версия протокола Kerberos.
Definition: kadm5-wrapper.h:41
Абстрактный класс IALDCore - основной интерфейс клиента Astra Linux Directory, с помощью которого вып...
Definition: ALDCore.h:242
virtual void PolicyDel(const string &policy)=0
Удаление политики паролей по имени
unsigned int min_length
Минимальная длина
Definition: kadm5-wrapper.h:44
virtual unsigned int GetItfVersion()=0
Версия протокола Kerberos.
virtual void PolicyAdd(CALDKrbPolicyPtr Policy, unsigned int setmask)=0
Создание политики паролей
unsigned int itf_version
Версия протокола Kerberos.
Definition: kadm5-wrapper.h:120
virtual void PolicyMod(CALDKrbPolicyPtr Policy, unsigned int setmask)=0
Модификация политики паролей
shared_ptr< IALDKadm5Connection > CALDKadm5ConnPtr
Разделяемый указатель на интерфейс соединения с сервером Kerberos.
Definition: kadm5-wrapper.h:338
virtual void PrincipalSetString(CALDKrbPrincipalPtr Principal, const string &key, const string &val)=0
Устанвока/удаление строкового атрибута принципала
virtual bool IsConnected()=0
Проверка установлено ли соединение
map< string, string > ald_string_map
MAP строка => строка
Definition: ALDUtils.h:164
unsigned int refcnt
Счетчик использования политики
Definition: kadm5-wrapper.h:47
virtual CALDKrbPolicyPtr PolicyGet(const string &polname)=0
Получение политики паролей по имени
virtual void KeytabAddPrincipal(const string &keytab, const string &princname)=0
Добавление ключей принципала в файл ключей
string name
Имя политики
Definition: kadm5-wrapper.h:40
virtual void ConnectPassword(const string &user, const string &pwd, bool kadmin, bool savecred=false)=0
Установка соединения с помощью пароля
virtual bool KeytabCheckPrincipal(const string &keytab, const string &princname)=0
Проверка ключей принципала в файле ключей
virtual void PrincipalGetStrings(CALDKrbPrincipalPtr Principal)=0
Получение строковых атрибутов принципала
Абстрактный класс-интерфейс взаимодействия с Kerberos.
Definition: kadm5-wrapper.h:346
virtual void KeytabPrincipals(const string &keytab, ald_string_list &princlist)=0
Получение списка принципалов из файла ключей
virtual void Disconnect(bool keep_cred=false)=0
Завершение соединения с сервером
unsigned int max_life
Максимальное время действия билета
Definition: kadm5-wrapper.h:130
time_t princ_expire_time
Максимальное время действия учетной записи
Definition: kadm5-wrapper.h:122
string policy
Имя политики паролей
Definition: kadm5-wrapper.h:121
Основной заголовочный файл, содержащий необходимый минимум предварительных объявлений и включений дру...
Класс политики паролей Kerberos.
Definition: kadm5-wrapper.h:38
void Assign(CALDKrbPolicy &policy)
Копирование свойств с другой политики
Definition: kadm5-wrapper.h:69
Пространство имен основного интерфейса Astra Linux Directory.
Definition: action-definitions.h:10
virtual void PrincipalDel(CALDKrbPrincipalPtr Principal)=0
Удаление принципала
virtual ~CALDKrbPrincipal()
Деструктор
Definition: kadm5-wrapper.h:147
virtual void KeytabRmPrincipal(const string &keytab, const string &princname)=0
Удаление ключей принципала из файла ключей
unsigned int max_renewable_life
Максимальное возобновляемое время действия билета
Definition: kadm5-wrapper.h:131
unsigned int min_classes
Минимальное количество классов символов
Definition: kadm5-wrapper.h:45
virtual CALDKadm5ConnPtr getConnection()=0
Создание экземпляра соединения с сервером Kerberos CALDKadm5ConnPtr.
Объявление основного интерфейса клиента Astra Linux Directory и необходимых для него типов и интерфей...
virtual string GetDefaultRealm()=0
Kerberos REALM по умолчанию
virtual void PrincipalAdd(CALDKrbPrincipalPtr Principal, const string &pwd, unsigned int setmask)=0
Создание принципала
Базовый класс интерфейса
Definition: ALDCore.h:84
time_t last_pwd_change
Время последней смены пароля
Definition: kadm5-wrapper.h:123
virtual ~IALDKadm5Connection()
Деструктор
Definition: kadm5-wrapper.h:335
unsigned int max_fail
Максимальное количество неверных вводов пароля до блокировки
Definition: kadm5-wrapper.h:49
shared_ptr< CALDKrbPrincipal > CALDKrbPrincipalPtr
Разделяемый указатель на принципал Kerberos CALDKrbPrincipal.
Definition: kadm5-wrapper.h:185
unsigned int min_life
Минимальное время действия пароля
Definition: kadm5-wrapper.h:42
list< string > ald_string_list
Список строк
Definition: ALDUtils.h:152
virtual void PrincipalMod(CALDKrbPrincipalPtr Principal, unsigned int setmask)=0
Модификация принципала
unsigned int max_life
Максимальное время действия пароля
Definition: kadm5-wrapper.h:43
unsigned int attributes
Вектор атрибутов
Definition: kadm5-wrapper.h:129
virtual void Policies(const string &expr, ald_string_list &pollist)=0
Получение списка политик паролей по шаблону