ESP <strong>简介</strong><strong>安装运行</strong> Elasticsearch 代理

程序名称:ESP <strong>简介</strong><strong>安装运行</strong>

授权协议: GPL

操作系统: 跨平台

开发语言: PHP

ESP <strong>简介</strong><strong>安装运行</strong> 介绍

简介

  • 由于Elasticsearch没有提供权限管理功能(官方shield又收费),特开发此Proxy,可以针对Elasticsearch Rest的路径设置权限,可以指定信任IP,支持用户,群组授权

  • 当前版本0.01试用版。

  • 框架基于PHP-Swoole扩展开发,用fast-route库来做http route处理。

安装运行

环境:linux2.6+、PHP5.5+、MysqL5.5+、swoole1.7.20+
下载:https://github.com/xtjsxtj/esp

tar zxvf esp.zip  
cd esp  
./bin/esp start

查看当前server进程状态:
./bin/esp status

配置文件

系统级配置文件,全局生效,不能reload,只能restart
server_conf.PHP

<?PHP
class server_conf {
    public static $config=array(
        'server_name' => 'es_proxy',  //server名称 
        'log_level' => NOTICE,        //跟踪级别TRACE,DEBUG,INFO,NOTICE,WARNING,ERROR
        'listen' => 9501,             //listen监听端口
        'worker_num' => 1,            //工作进程数
        'daemonize' => true,          //是否以守护进程方式运行
        'log_file' => '/home/jfy/testprog/esproxy/proxy/index.log',  //log文件
    );   
}

工作进程配置文件支持reload worker_conf.PHP

<?PHP
class worker_conf{
    public static $config=array(
        'log_level' => NOTICE,
        'es_url' => 'http://localhost:9200',
        'trust_ip' => [
            '127.0.0.1'
        ],
        'groups' => [
            'cpyf' => 'jfy,zyw',
        ],        
        'users' => [
            'jfy' => '123456',
            'zyw' => '123456',
        ],
        'auths' => [
            ['OPTIONS', '/{param:.+}', '*'], 
            ['GET',     '/{param:.+}', '*'],            
            ['POST',    '/{param1}/_search', '*'],            
            ['POST',    '/{param1}/{param2}/_search', '*'],            
            ['PUT',     '/kibana-int/{param:.+}', '*'],            
            ['DELETE',  '/kibana-int/{param:.+}', '@cpyf'],
        ],
    );
}

针对Elasticsearch的访问权限配置上,只需要修改worker_conf配置文件即可。

配置文件一看上去就应该明白了:

  • es_url,后端Elasticsearch http地址

  • trust_ip,信任的IP列表,不做任何权限限制

  • groups,用户组列表,组下可包含多个用户用户必须存在于users配置中

  • users,用户列表,用户名 => 密码

  • auths,访问详细rest路径权限设置

      method restpath users
    

ESP <strong>简介</strong><strong>安装运行</strong> 官网

https://github.com/xtjsxtj/esp

相关编程语言

BlazeDS 是一个基于服务器的Java 远程控制(remoting...
OVal 是一个可扩展的Java对象数据验证框架,验证的规...
Volta 是一套开发工具,专为开发分布式、实时系统应...
OpenDDS 是一个开源的 C++ 实现的 对象管理组织 OMG...
JADE (Java Agent DEvelopment Framework) 是一个完...
FastMM ,在D2006和2007中已代替了原来的内存管理器。