Безопасная авторизация

Тема в разделе "PHP", создана пользователем LEXAlForpostl, 16 янв 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    708
    Симпатии:
    225
    Здравствуйте.
    С прошедшими всех праздниками, наконец-то))
    Пишу сайт для института.
    Сайт будет состоять из 2х частей:
    - пользовательская часть
    - админская часть
    Суть - новостной сайт, со своими особенностями...
    Сайт с админской частью пишу - первый раз.
    Прошу от Вас совета.
    Как реализовать максимально безопасную авторизацию, чтобы её нельзя было взломать.
    Да, и как дальше писать админскую часть, чтобы там было проверка на авторизацию.
    Т.е. не прошу объяснить не просто реализацию авторизации, но и дальнейшее её применение.
    Буду безмерно признателен.
     
  2. usasoft

    usasoft

    Регистр.:
    9 янв 2008
    Сообщения:
    200
    Симпатии:
    107
    посмотри сайты других образовательных учреждений, зачем писать что-то свое, если уже есть множество популярных cms и статей по организации в них правильной авторизации и безопасности, а вот уже какие-то модули и т.п. сможешь дописать под свои нужды, а так, по практике скажу, касяков будет очень много, если писать самому)
     
  3. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    708
    Симпатии:
    225
    Учту.
    Но всё же хотелось бы услышать мнение профессионалов по теме.
     
  4. Sochniy

    Sochniy Постоялец

    Регистр.:
    1 май 2009
    Сообщения:
    84
    Симпатии:
    6
    мнение такое - до тебя все уже написано - используй cms - wordpress или maxsite cms.

    Если хочешь повозиться сам - то используй фреймворки, например CodeIgniter
     
  5. designf

    designf Постоялец

    Регистр.:
    24 май 2009
    Сообщения:
    105
    Симпатии:
    16
    Либо поискать - статей множество, сам пробывал делать. Вроде, что-то получилось. Главное, фильтруй данные и заносии их в сесии + хэш, + двойной md + секретный код + куки.

    Во как. Но в двух словах никто не опишет.
     
  6. serjinio

    serjinio

    Регистр.:
    10 май 2007
    Сообщения:
    439
    Симпатии:
    49
  7. m0hze

    m0hze Писатель

    Регистр.:
    25 дек 2009
    Сообщения:
    5
    Симпатии:
    1
    Следуя логике,что это админка,то попасть туда должен не каждый,соответственно.
    File: ./admin/auth.php
    PHP:
    if(isset($core->post['login']) & isset($core->post['pawd'])){
    /* тут простой чек логина и пассворжа на валид,и если валид - установка куков,не простых,а с сессией,которая тутже пишетться в бд */
    }
    Далее,во всех остальных файлах уже само собой подрузамеваеться,что раз тут ктото лазиет,то он должен быть админ,то мы просто напросто чкаем уже не логин и пасворд,а сессию.В начало каждого файла добавляем
    PHP:
    if(!checkSession(){die('hacking attempt!');}
    PHP:
    function checkSession(){
    $query $mysql->query("SELECT * FROM users WHERE session='$core->user[session]'");
    if(
    $mysql->numrow($query) > 0){ return(true);}else{return(false);}
    }
    Описал совсем схематично и просто,все писал на коленке,так что не судить строго,но я думаю схема будет понятно,а дя простого сайта это в самый раз.
     
  8. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    708
    Симпатии:
    225
    Ссылки почитал, очень интересно. Но во-первых, этой инфе уже около 3х лет и второе, её писали не очень профессиональные люди, не в обиду им сказанно.
    Хотелось бы прочитать, что-то, что можно назвать максимально безопасной аутенфикацией, без SQL-инъекций и всех других багов.
     
  9. Abliganto

    Abliganto Постоялец

    Регистр.:
    30 ноя 2009
    Сообщения:
    111
    Симпатии:
    46
    Для максимально безопасной авторизации должны быть соблюдены следующие условия:
    1) Безопасный сервер
    2) Безопасный компьютер пользователя
    3) Безопасное соединение между комп. пользователя и сервером

    Начнём с 3го пункта. В первую очередь необходимо обезопасить соединение. Для этого будет использоваться HTTPS http://ru.wikipedia.org/wiki/HTTPS Вам понадобится сертификат, его можно купить, либо сгенерировать бесплатно, но в таком случае у пользователей будет предупреждение, что испольуется самоподписанный сертификат.

    Пункт 2: тут мы ничего поделать не можем, обезопасить пользователя может только 3й пункт

    Пункт 1: необходимо использовать сессии, в PHP есть встроенный механизм сессий (session_start() и далее использовать глобальный массив $_SESSION). Проверку авторизации делаете на своё усмотрение.

    И будет Вам безопасная авторизация. Мощная входная дверь. Но статистика гласит, что чаще всего злоумышленники входят через окна, по этому опыт и только опыт помогут написать Вам действительно безопасное приложение.
     
  10. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
    Посмотри вот тут http://ruseller.com/lessons.php?rub=37&id=369
     
Статус темы:
Закрыта.