ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 1004


Ignore:
Timestamp:
Dec 2, 2006, 4:42:01 PM (17 years ago)
Author:
takanashi
Message:

r999/r1000確認用

Location:
OpenPNE/branches/takanashi/prj_takanashi2
Files:
10 edited
7 copied

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/admin/lib/db_admin.php

    r939 r1004  
    18571857}
    18581858
     1859//APIを全て取得(ページャー付き)
     1860function db_admin_get_c_api_all($page, $page_size, &$pager)
     1861{
     1862    $sql = 'SELECT * FROM c_api ORDER BY c_api_id';
     1863
     1864    $list = db_get_all_page($sql, $page, $page_size, $params);
     1865
     1866    $sql = 'SELECT count(*) FROM c_api';
     1867    $total_num = db_get_one($sql, $params);
     1868    $pager = admin_make_pager($page, $page_size, $total_num);
     1869
     1870    return $list;
     1871}
     1872
     1873
     1874//APIを一つ取得
     1875function db_admin_get_c_api_one($name)
     1876{
     1877    $sql = 'SELECT * FROM c_api WHERE name = ?';
     1878    $params = array(strval($name));
     1879
     1880    return db_get_row($sql, $params);
     1881}
     1882
     1883
     1884//APIを編集
     1885function db_admin_update_c_api($c_api_id, $name, $ip)
     1886{
     1887    $data = array(
     1888        'name' => strval($name),
     1889        'ip' => strval($ip),
     1890    );
     1891    $where = array('c_api_id' => intval($c_api_id));
     1892    return db_update('c_api', $data, $where);
     1893}
     1894
     1895//APIが許可しているIPかどうかチェックする
     1896function db_admin_api_check_ip($name, $ip)
     1897{
     1898    $api = db_admin_get_c_api_one($name);
     1899    if ($api['ip'] == '*' || $api['ip'] == $ip) {
     1900        return true;
     1901    } else {
     1902        return false;
     1903    }
     1904}
     1905
    18591906?>
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/admin/lib/etc_admin.php

    r945 r1004  
    3434function admin_make_pager($page, $page_size, $total_num)
    3535{
     36    if ($total_num == 0) {
     37        return;
     38    }
    3639    $pager = array(
    3740        'page' => $page,
     
    114117}
    115118
     119//IPアドレスとして正しいか
     120//例:XXX.XXX.XXX.XXX
     121function admin_is_ip($ip)
     122{
     123    return preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/',$ip);
     124}
     125
     126//APIを許容するIPアドレスとして正しいか
     127//XXX.XXX.XXX.XXX or *(アスタリスク) or 空
     128function admin_api_is_ip($ip)
     129{
     130    if (!$ip || $ip == '*') {
     131        return true;
     132    } else {
     133        return admin_is_ip($ip);
     134    }
     135}
     136
    116137?>
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/admin/templates/inc_header.tpl

    r924 r1004  
    6969<li><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('edit_c_banner')})" title="バナー管理: トップバナー、サイドバナー追加、任意HTML挿入">バナー管理</a></li>
    7070<li><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('limit_domain')})" title="ドメイン制限: ドメイン制限追加、編集、削除">ドメイン制限</a></li>
     71<li><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_api')})" title="OpenPNE API設定: API通信を許可するIPアドレスの設定">OpenPNE API設定</a></li>
     72<li><a href="?m=({$module_name})&amp;a=page_({$hash_tbl->hash('list_c_cmd')})" title="CMD設定: CMDを許可するページの設定">CMD設定</a></li>
    7173</ul>
    7274
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/auth.inc

    r2 r1004  
    55 */
    66
    7 // IP制限
    8 if (!in_array('any', (array)$GLOBALS['_OPENPNE_API_IP_LIST'])) {
    9     $ip = $_SERVER[SERVER_IP_KEY];
    10     if (!in_array($ip, (array)$GLOBALS['_OPENPNE_API_IP_LIST'])) {
    11         exit('Access Denied');
    12     }
    13 }
    14 
    157?>
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/init.inc

    r2 r1004  
    99}
    1010
     11require_once OPENPNE_MODULES_DIR . '/admin/lib/db_admin.php';
     12
    1113?>
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/lib/xmlrpc/000_auth.php

    r2 r1004  
    1010function xmlrpc_000_auth($message)
    1111{
     12    //IPアドレス制限
     13    if (!db_admin_api_check_ip("000_auth", $_SERVER[SERVER_IP_KEY])) {
     14        exit('Access Denied');
     15    }
     16
    1217    $param = $message->getParam(0);
    1318    if (!XML_RPC_Value::isValue($param)) {
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/lib/xmlrpc/001_get_c_member.php

    r2 r1004  
    77function xmlrpc_001_get_c_member($message)
    88{
     9    //IPアドレス制限
     10    if (!db_admin_api_check_ip("001_get_c_member", $_SERVER[SERVER_IP_KEY])) {
     11        exit('Access Denied');
     12    }
     13
    914    $param = $message->getParam(0);
    1015    if (!XML_RPC_Value::isValue($param)) {
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/lib/xmlrpc/002_get_member_point.php

    r2 r1004  
    77function xmlrpc_002_get_member_point($message)
    88{
     9    //IPアドレス制限
     10    if (!db_admin_api_check_ip("002_get_member_point", $_SERVER[SERVER_IP_KEY])) {
     11        exit('Access Denied');
     12    }
     13
    914    $param = $message->getParam(0);
    1015    if (!XML_RPC_Value::isValue($param)) {
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/lib/xmlrpc/101_add_point.php

    r2 r1004  
    77function xmlrpc_101_add_point($message)
    88{
     9    //IPアドレス制限
     10    if (!db_admin_api_check_ip("101_add_point", $_SERVER[SERVER_IP_KEY])) {
     11        exit('Access Denied');
     12    }
     13
    914    $param = $message->getParam(0);
    1015    if (!XML_RPC_Value::isValue($param)) {
  • OpenPNE/branches/takanashi/prj_takanashi2/webapp/modules/api/lib/xmlrpc/smtp2pne.php

    r113 r1004  
    1111function xmlrpc_smtp2pne($message)
    1212{
     13    //IPアドレス制限
     14    if (!db_admin_api_check_ip("smtp2pne", $_SERVER[SERVER_IP_KEY])) {
     15        exit('Access Denied');
     16    }
     17
    1318    // パラメータを取得
    1419    $param = $message->getParam(0);
Note: See TracChangeset for help on using the changeset viewer.