/ / Разрешаване на достъп до определена страница в даден сайт, само ако идват от връзка на друга определена страница - asp.net-mvc

Разрешаване на достъпа до определена страница в сайта, само ако те идват от връзка на друга определена страница - asp.net-mvc

За моя уебсайт ASP.NET MVC искам да разреша достъп до определена страница, само ако потребителят идва от връзка на друга определена страница (тази страница може да бъде от съвсем различен URL адрес).

Пример:

Искам да разреша на потребителя достъп до www.MySite.com/thispage, само ако идват от връзка на www.MySite.com/thatpage или www.MyOtherSite.com/thatpage

Как може да се постигне това?

Отговори:

3 за отговор № 1

Ще искате да проверите HTTP_REFERER удар с глава

Можете да направите това с

Request.UrlReferrer

С това казано, това не е реален сигурност. Някой може ръчно да зададе заглавката на референта на своя браузър.

Ако това е само средство за предотвратяване на горещи връзки,всичко е добре. Но ако използвате само това, за да предпазите хората от лична / защитена информация, ще искате да приложите някаква истинска форма за удостоверяване / упълномощаване.


0 за отговор № 2

Можете да го ограничите с Referer, но това лесно може да бъде манипулирано, така че ако това е много важно за вас ... Бих отишъл по друг път.

Това, което можете да направите, е да използвате.htaccess, за да попречи на входящата препращаща връзка да достигне до вашия сайт. Можете да откажете напълно входящия трафик от сайта или въпросната връзка. Или може би просто пренасочвате или препращате входящия трафик от сайта или линк към друго място.

Това може да се приложи към всеки уеб сайт с .htaccess, стига хостът ви да е активирал mod_rewrite.

Ако използвате Dolphin и той е инсталиран във вашата директория root / main / http docs / public_html, тогава ще добавите към: yoursite () com / .htaccess

Ако използвате Dolphin и той е инсталиран в подпапка / поддиректория, тогава ще добавите към: yoursite () com / dolphin-directory / .htaccess

Добавете към .htaccess файл след реда RewriteEngine като:

RewriteEngine включен

RewriteCond% {HTTP_REFERER} baddomain.com [NC] RewriteRule. * - [F]

За да препратите или пренасочите трафика от нежелания сайт или връзка към друго място, след това добавете:

RewriteEngine включен

RewriteCond% {HTTP_REFERER} baddomain.com [NC] RewriteRule. * http://en.wikipedia.org/ [R, L]

Забележка: -Променете реда RewriteCond: baddomain.com към връзката или сайта, който искате да предотвратите. -Промяна на RewriteRule ред: http://en.wikipedia.org/ към връзката или сайта, към който искате да го пренасочите или препратите.

- Не забравяйте да изтеглите и архивирате оригиналния си .htaccess файл, преди да го редактирате. Htaccess е изключително чувствителен и трябва да бъде точно прав, или може да отстрани цялата ви грешка в сайта.

--- И не забравяйте да тествате след това, за да сте сигурни, че всичко работи правилно. Не искате случайно да блокирате целия трафик към вашия сайт.


Винаги можете да проследите какви сайтове посещават като големите агенции, като по този начин ги блокират, ако не идват от вашата утопия :)