سؤال

لدينا تطبيق ويب الإنترانت asp.net الذي يستخدم العضوية ودور مقدمي OOTB ASP.net.

والآن نحن نخطط لفضح التطبيق على شبكة الانترنت، عن طريق تحريك خادم الويب لDMZ المتمثلة في ما يلي (كربي) مخطط النص

             External                    Internal     
internet --- Firewall --- Web server --- Firewall --- App Server --- Database

                             DMZ                              Intranet

والمشكلة الآن هي أن عضوية asp.net ومقدمي دور على خادم الويب غير قادر على الاتصال بخادم مزود بسبب جدار الحماية الداخلية.

هل سبق لك أن واجهت مثل هذا السيناريو من قبل؟ وسوف يوصي بفتح منافذ في جدار الحماية الداخلية بحيث خادم يمكن الاتصال مباشرة إلى خادم SQL؟ ما هي البدائل الأخرى لا بد لي (انتزاع otherthan مقدم الطلب نفسي)؟

هل كانت مفيدة؟

المحلول

وتغيير سياسة DMZ الخاص بك وفتح الموانئ عادة ما يكون من الصعب حقا. قد يكون لديك أفضل نجاح تفعل ما فعلت: فضح خدمة WCF داخل الشبكة والتواصل معها عبر HTTP على المنفذ 80

وصفر الاحتكاك مع الناس LAN، وأنا مجرد تقليد نفسه بالضبط (على الرغم من كربي) API التي تتيح لنا. NET:)

وتحرير: لتوضيح، وهذا يعني لدي RemoteRoleProvider الذي تم تكوينه مثل هذا:

<roleManager enabled="true" defaultProvider="RemoteRoleProvider">
   <providers>
      <add name="RemoteRoleProvider" type="MyCorp.RemoteRoleProvider, MyCorp" serviceUrl="http://some_internal_url/RoleProviderService.svc" />
   </providers>
</roleManager>

نصائح أخرى

لدينا اثنين من خوادم الويب واجهة إنترنت في المنطقة المجردة من السلاح، وكان لفتح الأنفاق في جدار الحماية عودتنا إلى خادم SQL في شبكة خاصة لدينا أنهم بحاجة إلى التفاعل معها. أعتقد أننا تستخدم شيئا آخر غير المنفذ 1433 للاتصالات SQL. حتى الآن انها عملت بشكل جيد، أي لا الخروقات الأمنية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top