1. Trang chủ
  2. » Công Nghệ Thông Tin

Secure PHP Development- P43 pdf

5 146 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 91,81 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

$thisApp = new userManagerApparray ‘app_name’ => $APPLICATION_NAME, ‘app_version’ => ‘1.0.0’, ‘app_type’ => ‘WEB’, ‘app_db_url’ => $APP_DB_URL, ‘app_auto_authorize’ => FALSE, ‘app_auto_c

Trang 1

$thisApp = new userManagerApp(

array( ‘app_name’ => $APPLICATION_NAME,

‘app_version’ => ‘1.0.0’,

‘app_type’ => ‘WEB’,

‘app_db_url’ => $APP_DB_URL,

‘app_auto_authorize’ => FALSE,

‘app_auto_connect’ => TRUE,

‘app_auto_chk_session’ => FALSE,

‘app_debugger’ => $ON )

);

//$thisApp->buffer_debugging();

$thisApp->run();

//$thisApp->dump_debuginfo();

?>

Configuring user administration applications

The user manager application and all the other applications in the user manage-ment system require configuration information that is stored in user_mngr.conf Table 6-2 shows the configuration settings.

TABLE6-2 USER MANAGER CONFIGURATION

$PEAR_DIR Set to the directory containing the PEAR

package; specifically the DB module needed for class.DBI.phpin our application framework.

$PHPLIB_DIR Set to the PHPLIB directory, which contains the

PHPLIB packages; specifically the template.

incpackage needed for template manipulation.

$APP_FRAMEWORK_DIR Set to our application framework directory.

Continued

Trang 2

TABLE6-2 USER MANAGER CONFIGURATION (Continued)

$PATH Set to the combined directory path consisting of

the $PEAR_DIR, the $PHPLIB_DIR, and the

$APP_FRAMEWORK_DIR This path is used with the ini_set()method to redefine the php.inientry for include_pathto include

$PATHahead of the default path This allows PHP to find our application framework, PHPLIB, and PEAR-related files.

$AUTHENTICATION_URL Set to the central login application URL.

$LOGOUT_URL Set to the central logout application URL.

$APPLICATION_NAME The internal name of the application.

$DEFAULT_LANGUAGE Set to the default (two character) language

code.

$DEFAULT_DOMAIN Set to the default domain of the user This

domain is appended when the user does not specify the fully qualified username (user@host) during interaction with the user management applications.

$ROOT_PATH Set to the parent directory within the Web

server’s document root where the user-manager-specific directory exists as a subdirectory.

$REL_APP_PATH The relative application path as seen from Web

browser.

$TEMPLATE_DIR Set to the template directory containing the

ihtml template files needed for the user management applications.

$CLASS_DIR Set to the class directory where

user-management-related class files are stored.

$USER_CLASS Fully qualified pathname for the User class.

$MIN_USERNAME_SIZE Minimum user name (EMAIL) size.

$MIN_PASSWORD_SIZE Minimum password size.

Trang 3

Variable Purpose

$DUMMY_PASSWD Dummy password used during account

modification step.

$ROOT_USER Fully qualified username of the root user

generation, which is used when forgotten password URL links are sent via e-mail.

$CHAR_SET Default character set to be used in e-mail

content type header.

$USERMNGR_MNGR Name of the user manager application.

$USERMNGR_FORGOTTEN_APP Name of the forgotten password application.

$USERMNGR_CHANGE_PWD_APP Name of the change password application.

$REL_TEMPLATE_DIR Relative path to the template directory as seen

from the Web.

$APP_DB_URL The fully qualified database URL needed to

access the user database.

$STATUS_TEMPLATE Name of the status information display

template.

$USERMNGR_MENU_TEMPLATE Name of the user management menu template.

$USERMNGR_USER_TEMPLATE Name of the user add/modify form template.

$USERMNGR_PWD_REQUEST_TEMPLATE Name of the password change template.

$USERMNGR_PWD_EMAIL_TEMPLATE Name of the e-mail template, which is used to

send the e-mail message for forgotten passwords.

$USERMNGR_PWD_RESET_TEMPLATE Name of the forgotten password reset template.

$USERMNGR_PWD_CHANGE_TEMPLATE Name of the password change template.

$ADMINISTRATIVE_USER Numeric type value for administrative user.

$STANDARD_USER Numeric type value for standard user.

$USER_TYPE Associative array defining the relationship

between the numeric user type and user type labels.

Trang 4

Listing 6-3 shows the configuration file (user_mngr.conf).

Listing 6-3: user_mngr.conf

<?php

// Turn on all error reporting error_reporting(E_ALL);

// If you have installed framework directory in // a different directory than

// %DocumentRoot%/framework, change the setting below

$APP_FRAMEWORK_DIR=$_SERVER[‘DOCUMENT_ROOT’] ‘/framework’;

$PEAR =$_SERVER[‘DOCUMENT_ROOT’] ‘/pear’;

$PHPLIB =$_SERVER[‘DOCUMENT_ROOT’] ‘/phplib’;

// Insert the path in the PHP include_path so that PHP // looks for PEAR, PHPLIB and our application framework // classes in these directories

ini_set( ‘include_path’, ‘:’

$PEAR ‘:’

$PHPLIB ‘:’

$APP_FRAMEWORK_DIR ‘:’ ini_get(‘include_path’));

$AUTHENTICATION_URL = “/login/login.php”;

$LOGOUT_URL = “/logout/logout.php”;

$APP_MENU = ‘/home/home.php’;

$APPLICATION_NAME = ‘USER_MNGR’;

$XMAILER_ID = ‘Example User Manager Version 1.0’;

$DEFAULT_LANGUAGE = ‘US’;

$DEFAULT_DOMAIN = ‘example.com’;

$ROOT_PATH = $_SERVER[‘DOCUMENT_ROOT’];

$REL_ROOT_PATH = ‘/user_mngr’;

$REL_APP_PATH = $REL_ROOT_PATH ‘/apps’;

$TEMPLATE_DIR = $ROOT_PATH $REL_APP_PATH ‘/templates’;

$CLASS_DIR = $ROOT_PATH $REL_APP_PATH ‘/class’;

$REL_TEMPLATE_DIR = $REL_APP_PATH ‘/templates/’;

Trang 5

require_once “user_mngr.errors”;

require_once “user_mngr.messages”;

require_once ‘DB.php’;

require_once $APP_FRAMEWORK_DIR ‘/’ ‘constants.php’;

require_once $APP_FRAMEWORK_DIR ‘/’ $APPLICATION_CLASS;

require_once $APP_FRAMEWORK_DIR ‘/’ $ERROR_HANDLER_CLASS;

require_once $APP_FRAMEWORK_DIR ‘/’ $AUTHENTICATION_CLASS;

require_once $APP_FRAMEWORK_DIR ‘/’ $DBI_CLASS;

require_once $APP_FRAMEWORK_DIR ‘/’ $USER_CLASS;

require_once $TEMPLATE_CLASS;

$MIN_USERNAME_SIZE= 3;

$MIN_PASSWORD_SIZE= 3;

$DUMMY_PASSWD = ‘1234567890’;

$ROOT_USER = ‘kabir@evoknow.com’;

$SECRET = 916489;

$CHAR_SET = ‘charset=iso-8859-1’;

// Application names

$USERMNGR_MNGR = ‘user_mngr.php’;

$USERMNGR_FORGOTTEN_APP = ‘user_mngr_forgotten_pwd.php’;

$USERMNGR_CHANGE_PWD_APP = ‘user_mngr_passwd.php’;

/* -START TABLE NAMES - */

$APP_DB_URL = ‘mysql://root:foobar@localhost/auth’;

$AUTH_DB_TBL = ‘users’;

/* -END TABLE NAMES - */

$STATUS_TEMPLATE = ‘usermngr_status.html’;

$USERMNGR_MENU_TEMPLATE = ‘usermngr_menu.html’;

$USERMNGR_USER_TEMPLATE = ‘usermngr_user_form.html’;

$USERMNGR_PWD_REQUEST_TEMPLATE= ‘usermngr_forgotten_pwd.html’;

$USERMNGR_PWD_EMAIL_TEMPLATE = ‘usermngr_forgotten_pwd_email.html’;

$USERMNGR_PWD_RESET_TEMPLATE = ‘usermngr_pwd_reset.html’;

$USERMNGR_PWD_CHANGE_TEMPLATE = ‘usermngr_pwd_change.html’;

$ADMINISTRATIVE_USER = 9;

$STANDARD_USER = 1;

$USER_TYPE = array(‘9’ => ‘Administrator’, ‘1’ => ‘Standard User’);

?>

Make sure you change this file to adjust the file and directory path information

as needed

Ngày đăng: 07/07/2014, 07:20