ما الذي يجب أن ننفذه لإذن العملاء باستخدام خدمة الويب الخاصة بنا؟

StackOverflow https://stackoverflow.com/questions/557979

سؤال

لدينا خدمة ويب سنستضيفها على خادم ويب علني وسيتم الاتصال بها بواسطة خدمات الويب المستضافة على خوادم الويب داخل جدران المستشفى. لقد كتبنا كلا البرنامجين من البرنامج، لذلك لدينا سيطرة كاملة على ما يتم تنفيذه.

نود تأمين الاتصالات بين خوادم الويبين. حاليا الشيء الوحيد الذي لدينا في مكانه هو https على خادم الويب العام و GUID لتحديد العملاء.

هناك أنواع مستوى الشبكة من الترخيص، يمكننا الدعم، لكنني لا أحب الاعتماد على هذه لأنها ليست كل عملائنا (المستشفيات) ستكون قادرة على القيام بنفس الشيء. لن يكون لدى البعض القدرة على تقديم عنوان IP ثابت وبعضها لن يكون قادرا على القيام VPN، لذلك لا يمكننا الاعتماد فقط على تلك الأساليب.

ما هي التقنيات التي تستخدمها أو تنصحها للحصول على الاتصالات إلى خدمات الويب الخاصة بك؟ إن اهتمامنا الرئيسي هو الحفاظ على الناس من الحصول على معرف المستشفيات (حاليا فقط GUID) والحصول على بيانات من خدمتنا على شبكة الإنترنت مخصصة للمستشفى.

سوف نوظف تدابير أمنية على مستوى الشبكات الأخرى للحد من الوصول العام إلى نظامنا ولكني أشعر أن حل برمجيات ضروري أيضا.

النظام ليس في الإنتاج بعد ولكن على وشك الانتهاء من التنمية. وضعت لها في C # على .NET 3.5

Fwiw كنت أفكر في نوع من الترخيص المستند إلى الرمز المميز لأنني أعرف أن صاحب عمل سابق يستخدم شيئا ما على طول هذه الخطوط. ومع ذلك، لا أعرف على وجه التحديد ما الذي يجب البحث عنه أو أي معلومات أخرى حول الموضوع.

يحرر: في حين أود استخدام WCF، حاليا لا أحد في الفريق (بما في ذلك نفسي) لديه أي خبرة في استخدامها، وقد طورنا بالفعل خدمات الويب مع التعليمات البرمجية التي تتفاعل معها. جميع مراجع الويب التي تمت إضافتها باستخدام طريقة .NET 2.0 (من vs.net08، المستهدفة إلى .NET 3.5) ونحن نفضل عدم الإعادة تماما ذلك. لن أقول إن WCF ليس خيارا، لكنني لا أعتقد أننا سنذهب مع هذا الخيار عن طيب خاطر.

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

المحلول

هل يمكنك استخدام شيء مثل المصادقة الأساسية على https لتوفير كلمة مرور اسم المستخدم الصعبة؟ أعتقد أن صابون Microsoft يدعمه جيدا إلى حد ما. أنت فقط تستخدم أيضا IIS لتكوين المصادقة الأساسية (يجب أن تستخدم SSL)، وفي C # فقط تمرير icedentials إلى وكيلك.

من googling، يبدو أن لغات أخرى تدعم المصادقة الأساسية على الصابون أيضا.

نصائح أخرى

يمكن استخدام شهادات العميل لتوفير بيانات اعتماد من المتصل إلى مواقع الويب الخاصة بك؛ ليس من الصعب أخذ سيرت مرت وتفعل أي تقييم إضافي لإملاء ما لديه الرؤية في.

ربما تريد استخدام شيء مثل OAuth:

http://oauth.net/

يمكنك بعد ذلك استخدامه مع WCF لتوفير نقطة نهاية.

من هناك، تريد تعيين المطالبات إلى معرف داخلي للعملاء (سيتعين عليك تحديد ما هو هذا التعيين هو).

بهذه الطريقة، ليس عليك الاعتماد على إصدار أي شيء لأي شخص، كل ما عليك فعله هو إنشاء التعيين بناء على المطالبات المرسلة إليك.

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