Страница 6 из 6

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2014-06-29 7:03:59
drv
Привет всем.
У меня вопрос, у кого есть соображения, в конфиге ProFTPd есть такая конструкция:

Код: Выделить всё

...
SQLUserWhereClause              "disabled=0 and (NOW()<=expiration or expiration=-1 or expiration=0)"
...
чего она может значить или делать?
Насколько я понял из документации ProFTPd на оф.сайте, параметр "SQLUserWhereClause" предназначен для добавления к пользоватльским запросам определенной в значении параметра команды. И вот посему меня интересует, чего это за команда, что делает, чем/чему даётся и может быть есть список других возможных команд?
Может кто сталкивался?

Re: Вопрос по SQL аутентификации proftpd

Добавлено: 2014-06-29 16:31:49
drv
Вопрос отпал, сообщение "disabled=0 and (NOW()<=expiration or expiration=-1 or expiration=0)" используется модулем mod_sql для проверки параметров учетной записи пользователя в БД.
"disabled=0" - проверка, что пользователь не заблокирован.
"expiration" - проверка, что заданный срок действия учетки не истек (если он задан).
конструкия "NOW()" даёт текущее время.

Дамп БД взят из настроек "proFTPd Administrator":

Код: Выделить всё

....

CREATE TABLE IF NOT EXISTS `usertable` (
  `userid` text,
  `passwd` char(250) DEFAULT NULL,
  `homedir` text,
  `shell` text,
`uid` int(11) NOT NULL,
  `gid` int(11) DEFAULT NULL,
  `count` int(11) NOT NULL DEFAULT '0',
  `lastlogin` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `lastlogout` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `expiration` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `disabled` tinyint(4) DEFAULT '0',
  `det_name` tinytext,
  `det_mail` tinytext,
  `det_adress` tinytext,
  `det_notes` tinytext
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10000 ;

....