我们开发了一些独立的 php 脚本并希望限制对它们的访问。我们使用 Joomla 1.5 作为我们的主要前端,我想知道我们是否可以使用来自 Joomla 的身份验证来确定用户是否从 Joomla 框架之外的应用程序内登录。如果我们可以避免将 joomla 框架集成到我们的代码中,那将是首选。
不是 Joomla 身份验证系统的专家,有没有人知道用户是否登录?我假设我们会查看会话 ID,然后使用它进行数据库查询以查看用户是谁以及他们是否已登录?
我们开发了一些独立的 php 脚本并希望限制对它们的访问。我们使用 Joomla 1.5 作为我们的主要前端,我想知道我们是否可以使用来自 Joomla 的身份验证来确定用户是否从 Joomla 框架之外的应用程序内登录。如果我们可以避免将 joomla 框架集成到我们的代码中,那将是首选。
不是 Joomla 身份验证系统的专家,有没有人知道用户是否登录?我假设我们会查看会话 ID,然后使用它进行数据库查询以查看用户是谁以及他们是否已登录?
这是游戏后期,但以防其他人需要它。:您可以很容易地访问大部分 Joomla Envrionment:
你的脚本.php
require_once('joomla_platform.php');
$user =& JFactory::getUser();
if($user->gid <25) {
die ("YOU CANT BE HERE");
}
joomla_platform.php
<?php
/* Force Debugging here, otherwise the loaded configuration will define it. */
define( 'JDEBUG', 1 );
/* If not already done, initialize Joomla framework */
if (!defined('_JEXEC')) {
define( '_JEXEC', 1 );
// define('JPATH_BASE', dirname(__FILE__) );
define ('JPATH_BASE', "c:\\wamp\\www\\hosted\\newday");
define( 'DS', DIRECTORY_SEPARATOR );
/* Required Files */
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
/* To use Joomla's Database Class */
require_once ( JPATH_BASE .DS.'libraries'.DS.'joomla'.DS.'factory.php' );
require_once ( JPATH_LIBRARIES.DS.'joomla'.DS.'import.php'); // Joomla library imports.
/* Create the Application */
global $mainframe;
$mainframe =& JFactory::getApplication('site');
global $mainframe;
}
/* $config = new JConfig(); */
/* $db = &JFactory::getDBO(); */
?>
在以下位置可以找到一些工具:
http://extensions.joomla.org/extensions/access-a-security/authentication-external
哪个应该能够回答你的问题。从 LDAP 到 NDIS,有多种方法可以实现这一目标。