2009-03-15 18 views
5

लोगों को मेरी होस्टेड एएसपी.नेट वेबसाइट से छवियों को हॉटलिंक करने से रोकने का सबसे अच्छा/सरल तरीका क्या है? मुझे सभी छवियों/संसाधनों को हॉटलिंकिंग से रोकने की आवश्यकता नहीं है, मैं बस साइट पर विशिष्ट छवियों/संसाधनों के लिए हॉटलिंकिंग को रोकना चाहता हूं। FYI करें। यह GoDaddy.com पर होस्ट किया गया है, इसलिए आईआईएस चाल शायद काम नहीं करेगी।अपनी एएसपी.NET साइट से छवि हॉटलिंक को कैसे रोकें?

+0

एक नज़र यहाँ है। http://mvolo.com/blogs/serverside/archive/2006/11/10/Stopping-hot_2D00_linking-with-IIS-and-ASP.NET.aspx –

उत्तर

3

एएसपीएक्स पेज के माध्यम से छवियों को स्ट्रीम करना एक अच्छा समाधान है। हालांकि रेफरर को हैक किया जा सकता है।

यदि आप वास्तव में सुरक्षा से चिंतित हैं तो आप एक अद्वितीय नमक (कीवर्ड) का उपयोग कर सकते हैं और एमडी 5 (SHA-1 या SHA-2) के खिलाफ उत्पन्न कर सकते हैं। वर्तमान युग के साथ-साथ इसके खिलाफ भी चलाएं, इससे छवियों पर भी समाप्ति होती है। कुकीज़ में इस "कीकोड" को स्टोर करें। जब भी छवियों की सेवा की जाती है तो आप मूल रूप से क्वेरीस्ट्रिंग के माध्यम से इसे पास करते हैं। दूसरी तरफ एएसपीएक्स पर सत्यापन होता है। आप HTTPRequestModule या Global.asax पृष्ठ का उपयोग करके प्रत्येक अनुरोध के बीच एक नया "कीकोड" भी पुन: उत्पन्न कर सकते हैं।

ओवरहेड होगा, लेकिन यह किसी को हॉटलिंकिंग से रोक देगा।

+0

+1 + उत्तर। वहां बहुत कुछ है। मैं शायद समाप्त हो चुके हैंश और कस्टम एक्सटेंशन हैंडलर (404 तंत्र के माध्यम से) –

3

आप उन छवियों के लिए किसी भी अनुरोध को अस्वीकार कर सकते हैं जिनके पास HTTP रेफरर हेडर फ़ील्ड में आपकी साइट नहीं है। यही सिद्धांत है। अपने आवेदन में अनुरोधों को नियंत्रित करने के लिए, आपको एएसपी पेज के माध्यम से सभी छवियों को स्ट्रीम करना होगा (जैसा कि उन्हें सीधे जोड़ने के विपरीत)।

2

एक बात मैंने देखा है कि मैंने सोचा था कि चालाक था छवि के निचले भाग में एक अतिरिक्त भाग जोड़ने के लिए, और फिर अपनी साइट पर दिखाए जाने पर इसे काटने के लिए एक सीएसएस स्प्राइट तकनीक का उपयोग करें। एक बेवकूफ हॉटलिंक का परिणाम आपके अतिरिक्त हिस्से को प्रदर्शित करेगा। इसका मतलब यह होगा कि छवि खराब हो गई है, इसलिए यह दूसरी साइट पर सही नहीं दिखती है, और आप अपने स्वयं के यूआरएल या जो भी चाहें दिखाने के लिए अतिरिक्त हिस्से का उपयोग कर सकते हैं।

8

ऐसा करने का सबसे आसान तरीका आईआईएस 7.0 में यूआरएलआरईआरआईटी के साथ है।

https://help.maximumasp.com/KB/a738/using-url-rewrite-to-prevent-image-hotlinking.aspx

<configuration> 
<system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="PreventImageHotlinking" enabled="true" stopProcessing="true"> 


<match url=".*\.(gif|jpg|png)$" /> 
    <conditions> 
         <add input="{HTTP_REFERER}" negate="true" pattern="^$" /> 
         <add input="{HTTP_REFERER}" negate="true" pattern="http://www.YourDomain.com/.*" /> 
    </conditions> 
    <action type="Rewrite" url="/images/hotlinking.jpg" /> 
</rule> 
      </rules> 
     </rewrite> 
    </system.webServer> 
+0

इसे प्यार करता हूँ! मैं इसे छवियों/जेएस/सीएसएस फाइलों के लिए उपयोग करता हूं और कुछ भी नहीं जो मैं दूसरों को हॉटलिंक नहीं करना चाहता! – RoLYroLLs

संबंधित मुद्दे