VAB> On Tue, 6 May 2003 08:56:15 +0400
VAB> "Oleg V.Ermakov" <eov@mtsnet.ru> wrote:
> http://www.security.nnov.ru/search/document.asp?docid=4482
что мешает разработчикам CGP сделать вот такую систему хранения
sessionID в полях 401 авторизации? дешево и сердито :) пример на php,
думаю общий смысл разработчики легко поймут :)
-- http://ronet.ru/aaa.php ---
<?
ini_set('session_use_cookies',0);
ini_set('session_use_trans_sid',0);
if (isset($_SERVER['PHP_AUTH_USER'])) {
if (isset($_GET['auth_reload'])) {
Header("Location: ".$_SERVER['PHP_SELF']);
exit;
}
session_id($_SERVER['PHP_AUTH_PW']);
session_start();
if ($_GET['logout']==1) {
session_destroy();
Header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
exit;
}
}
if (isset($_POST['user_name'])) {
if ($_POST['user_name']=='user' AND $_POST['user_pass']=='pass') {
session_start();
$_SESSION['auth']=1;
session_write_close();
$href="http://protected:".session_id()."@".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']."?auth_reload=".time();
header("Refresh: 1;url=$href");
exit;
}
}
if (isset($_GET['auth_reload'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
exit;
}
if (empty($_SESSION['auth'])) {
?>
<form action="<? echo getenv('REQUEST_URI') ?>" method="POST"> Name: <input name="user_name" type="text" length="10" value="user"><br> Pass: <input name="user_pass" type="text" length="10" value="pass"><br>Remember me <input name="user_mem" type="checkbox" <? if ($_COOKIE['apuserid'] or $_POST['user_mem']) echo 'checked'; ?>>
<input name="submit" type="submit" value="Login"> </form> <?
<A href="<?=$_SERVER['PHP_SELF']?>?logout=1">Logout</A> <HR> <?php
--
С уважением,
Евгений М. Кулев mailto:inventor@ulg.udmnet.ru ICQ:58890624
Получено Tue May 13 04:53:01 2003
Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:12:36 MSK