الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة ال security في IIS

بدأه thepast في 14 فبراير 2012 · 17 رد · 506 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

انا عندي مشروعين منفصلين وضعتهم في IIS انا استخدم IIS7

المشروع الاول اريده مفتوح بمعنى الكل يدخل عليه

بس المشروع الثاني اريده يدخل على الاي بي الداخلي للشبكة فقط لانني عند 2 اي بي واحد داخلي والاخر خارجي

والشيئ الاخر : اريد ان اسمح لبعض الاجهزة الدخول على صفحات الويب التي في المشروع بمعنى احدد ايبيهات

تم تعديل هذه المشاركة بواسطة thepast في 14 فبراير 2012 في 19:46

#2

ارجووووووووووو المساعدة

#3

السلام عليكم

يمكنك فحص الاي بي في Global.asax في حدث begin request وعلى هذا الاساس يمكن السماح والمنع .

ايضا يمكن باستخدام IP security الموجودة في win 2008 او win7 انظر الى هذه المقالة

او استخدام httpModule كما في هذه المقالة

تم تعديل هذه المشاركة بواسطة TareqVB في 15 فبراير 2012 في 14:02 — السبب: اضافة httpModule

#4

يا اخي ممكن تشرح لي الخطوة الاولى Global.asax

كيف اقدر اعملها اعطيني الكود لو سمحت

#5

اضف الملف global.asax الى المشروع ان لم يكن مضافا من قبل واضف الكود التالي

void Application_BeginRequest(object sender, EventArgs e)
    {


        string ipAddress = Request.UserHostAddress;
        if (!IsValidIpAddress(ipAddress))
        {
            Response.StatusCode = 403;  // (Forbidden)

        }
}



private bool IsValidIpAddress(string ipAddress)
    {
   return (ipAddress.StartsWith( "192.168.1"));
    }

في IsValidIpAddress يمكنك فحص الاي بي حسب الشروط التي تريدها واعتقد هناك كود لمعرفة اذا كان الاي بي من شبكة محلية اما لا .

وفي الصفحات التي تريد تحديد الاي بي لها ضع نفس الكود في page_load

#6

يا اخي انا اسف

حطيت الكود في global

بس الجزئية الاخيرة مافهمتها private bool IsValidIpAddress(string ipAddress

return (ipAddress.StartsWith( "192.168.1"));

انا استخدم كود فيجول

انت تقصد السطرين الاخيرين احطها في page load

ماهو كود فحص الايبي اذا كان داخلي او خارجي

اريد تريتيب الاكواد

ارجوووووووك ساعدني

#7

السلام عليكم يا اخ TareqVB

لقد قمت بتحويل الكود الى فيجول

فأصبح

 Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)

        Dim ipAddress As String = Request.UserHostAddress
        If Not IsValidIpAddress(ipAddress) Then

            Response.StatusCode = 403
        End If
    End Sub



    Private Function IsValidIpAddress(ByVal ipAddress As String) As Boolean
        Return (ipAddress.StartsWith("192.168.1"))
    End Function

انشأت صفحة global

ووضعته فيه

ثم وضعت في صفحتي التي اريد تحديد الاي بي الفنكشن فقط

بس الكود يعطيني acess denied

من كل الاجهزة جربت ادخل على الصفحة بس بدون فائدة

مسحت الفنكشن التي في صفحتي وخليت الكود الموجود في global

بس نفس القصة حتى الصفحات التي لم اضع فيها كود مقفلة

ارجوووووووو المساعدة

تم تعديل هذه المشاركة بواسطة thepast في 16 فبراير 2012 في 09:44

#8

بدل عنوان الشبكة 192.168.1 ضع قيمة مناسبة للشبكة عندك او اخبرني ما هو الاي بي الداخلي للسيرفر .

ولا تضع مؤقتا اي شيء في الصفحات .

#9

الايبي الداخلي هو

192.168.200.15

#10

ارجوووووووووو المساعدة يا اخي

#11

ارجووو المساعدة

#12

ارجووو مساعدتكم

يا شباب

#14

وضعت الاي بي 198.168.200

البرنامج قفل الاي بي الخارجي واصبح البرنامج يدخل يالاي بي الداخلي فقط كذا تمام

بس كيف اجعل بعض الاجهزة تدخل على البرنامج يمعني كيف احدد ايبيهات فقط هذه التي حددتها تدخل على البرناج وغير كذا لا

ارجووووووووووك المساعدة

#15
اقتباس
بس كيف اجعل بعض الاجهزة تدخل على البرنامج يمعني كيف احدد ايبيهات فقط هذه التي حددتها تدخل على البرناج وغير كذا لا

بدل ان تستخدم starstwith في الكود السابق حدد الارقام بالضبط

مثل

private bool IsValidIpAddress(string ipAddress)
    {
   return ((ipAddress== "192.168.200.5") || (ipAddress== "192.168.200.55") || (ipAddress== "192.168.200.15"));
    }
#16

بعد ما وضعت الكود

لا استطيع ان ادخل على البرنامج من السيرفر من IIS

انا اريد شاشة مفتوحة على طول لاني وضعت فيها تايمر واكواد

واذا شلت الكود يشتغل

#18

انا استخدمت الكود الاول

تحقق لي انه الدخول للصفحات تكون من داخل الشبكة اما اذا استخدم الاي بي الخارجي يعطيني access denied هذا تمام بالنسبة لي

الشيء الاخر اللذي هو تحديد بعض الاجهزة ففشلت معي

لانه اي بي السيرفر 192.168.1.1 وايبيهات المستخدمين تبدأ من 10.1.30......

ممكن بسبب هذه المشكلة لم اتمكن من انجاح المهمة الثانية

مواضيع مشابهة