enum UserStatus
{
GUEST,
ADMIN,
REGULAR,
MODERATOR,
INACTIVE,
SYSTEM
};
GUEST - ГостьADMIN - АдминистраторREGULAR - Обычный пользовательMODERATOR - МодераторINACTIVE - НеактивированныйSYSTEM - Системныйstruct DomainInfo
{
integer id;
string domain;
string contactName;
string contactMail;
integer regtime;
string description;
};
id: integer - domain: string - contactName: string - contactMail: string - regtime: integer - description: string - struct GrantInfo
{
string privilege;
integer object_id;
UserInfo user;
};
privilege: string - object_id: integer - user: UserInfo - struct PrivilegeInfo
{
integer id;
string name;
};
struct UserInfo
{
integer id;
string login;
string mail;
UserStatus status;
integer regtime;
string avatar_url;
};
id: integer - login: string - mail: string - status: UserStatus - regtime: integer - avatar_url: string - Список элементов GrantInfo
Список элементов PrivilegeInfo
Список элементов UserInfo
Данная функция проверяет обладает ли указаный пользователь указанным правом на данном объекте.
Примечание: чтобы проверять права других пользователей, текущий пользователь
сам должен обладать правом check-grant на том же объекте.
privilege: string -
object_id: integer -
user_id: integer -
Возвращает: boolean -
DomainInfo CreateDomain(string domain, string contactName, string contactMail, string description)Примечание: для создания домена нужно иметь административыне привилегии.
domain: string -
contactName: string -
contactMail: string -
description: string -
Возвращает: DomainInfo -
DomainInfo GetDomainInfo(string domain)domain: string -
Возвращает: DomainInfo -
GrantsList GetGrantsOn(string object_class, integer object_id, integer user_id)Данная функция возращает список привилегий пользователя по отношению к указаному объекту.
Примечание: чтобы проверять права других пользователей, текущий пользователь
сам должен обладать правом check-grant на том же объекте.
object_class: string -
object_id: integer -
user_id: integer -
Возвращает: GrantsList -
PrivilegeList GetPrivileges(string obj_class)obj_class: string -
Возвращает: PrivilegeList -
Примечание: чтобы раздавать права, текущий пользователь сам должен обладать
правом grant на том же объекте.
privilege: string -
object_id: integer -
user_id: integer -
UserInfo RegisterDomainUser(string domain, string realname, string login, string mail, string password)
Данная функция позволяет регистрировать пользователя в домене.
Для регистрации пользователя в домене нужно обладать правом
domain:register для данного домена.
Примечание: в отличии от обычных функций регистрации, данная функция не требует активизации пользователя и подтверждения e-mail адреса. Владельцы доменов обязуются указывать реальные e-mail адреса и только с согласия их владельцев. Пользователи должны знать, что они могут получать различные уведомления от системы.
Пользователь зарегистрированный через функцию RegisterDomainUser
обадает такими же правами и возможностями как и обычные пользователи.
Данная функция вводиться лишь для того, чтобы владелцы проектов
могли самостоятельно регистрировать в системе пользователей
своих программ, чтобы предоставить им возможность пользоваться всеми
услугами сервиса.
domain: string -
realname: string -
login: string -
mail: string -
password: string -
Возвращает: UserInfo -
Возвращает: UserInfo -
Примечание: чтобы забирать права, текущий пользователь сам должен обладать
правом revoke на том же объекте.
privilege: string -
object_id: integer -
user_id: integer -
Каждый пользователь может сменить свой пароль. Только администратор может менять пароль других пользователей.
user_id: integer -
password: string -
id: integer -
Возвращает: UserInfo -
login: string -
Возвращает: UserInfo -
UserInfo whoami()Может использоваться для тестирования авторизации
Возвращает: UserInfo -