FR: accesskey patch

Evan Miller emmiller at gmail.com
Sun Dec 30 06:21:00 MSK 2007


  static ngx_int_t
  ngx_http_accesskey_handler(ngx_http_request_t *r)
  {
      ngx_uint_t   i;
      ngx_uint_t   hashlength,bhashlength;
-    ngx_http_core_loc_conf_t    *clcf;
      ngx_http_accesskey_loc_conf_t  *alcf;

модуль (.tar.gz):

http://wiki.codemongers.com/NginxHttpAccessKeyModule?action=AttachFile&do=get&target=nginx-accesskey-2.0.3.tar.gz

     ./configure --add-module=path/to/nginx-accesskey-2.0.3 ...

Evan

Mykola S. Grechukh wrote:
> исправил несколько мелких ошибок.
> 
> http://paq.osdn.org.ua/~gns/nginx/nginx-accesskey-2.0.3.diff.bz2
> 
> 2007/10/10, Mykola S. Grechukh <>:
>> Добрый день!
>>
>> Я изготовил http_accesskey_module. Работает это так:
>>
>> в выражении, заданном директивой accesskey_signature, раскрываются
>> переменные и вычисляется хэш значения . Если в GET строке есть
>> параметр key со значением хэша, запрос проходит, иначе клиент получает
>> 403 forbidden.
>>
>> Чтобы все это имело какой-то смысл, accesskey_signature должна
>> содержать переменные, идентифицирующие клиента, например $remote_addr,
>> и некий секретный ключ (по умолчанию там просто "$remote_addr", что
>> довольно бессмысленно - любой может изготовить md5 от своего ip
>> адреса).
>>
>> В результате клиенту можно давать url вида
>> http://x.x.x.x/download?key=a1b2c3d4e5f6g7h8&&filename=onlyforyou,
>> который будет доступен только с определенного remote_addr.
>>
>> директивы:
>>
>> accesskey [on|off]
>>
>> accesskey_arg "mykeyargname" - строка, имя проверяемого аргумента. По
>> умолчанию "key".
>>
>> accesskey_hashmethod [md5|sha1]
>>
>> accesskey_signature "mypass12345$remote_addr"
>>
>>






More information about the nginx-ru mailing list