2012-03-15 9 views
14

SignalR नेट पर सुरक्षित कनेक्शन है, हम ग्राहक और सर्वर के बीच नीचे के रूप में एक संबंध स्थापित:SignalR बीच नेट क्लाइंट और सर्वर

var connection = new HubConnection("http://mysite/"); 

इसके बाद, हम घटनाओं सदस्यता लें और नीचे के रूप में कनेक्शन प्रारंभ:

connection.Start().Wait(); 

यदि मैं ग्राहक और सर्वर के बीच एक सुरक्षित कनेक्शन स्थापित करना चाहता हूं तो क्या होगा। हम वर्तमान सुविधाओं के साथ इसे कैसे प्राप्त कर सकते हैं?

मैंने देखा कि वर्ग पर System.Net.ICredentials का एक संपत्ति प्रकार है। क्या यह इस के लिए रास्ता है? यदि हां, तो हम अपने हब्स के लिए सर्वर पक्ष पर Auth को कैसे संभालेंगे?

उत्तर

25

यहाँ मैं कैसे मेरा स्थापित किया है है:

var hubConnection = new HubConnection("http://siteurl"); 
    hubConnection.Credentials = CredentialCache.DefaultNetworkCredentials; 
    hubProxy = hubConnection.CreateProxy("My.Hub.Namespace"); 

    hubConnection.Start().Wait(); 

आप निश्चित रूप से अलग-अलग क्रेडेंशियल पास कर सकता है, मैं का उपयोग DefaultNetworkCredentials

साख DefaultNetworkCredentials द्वारा लौटाए वर्तमान के लिए प्रमाणीकरण क्रेडेंशियल्स का प्रतिनिधित्व करता है सुरक्षा संदर्भ जिसमें एप्लिकेशन चल रहा है। क्लाइंट-साइड एप्लिकेशन के लिए, ये आमतौर पर एप्लिकेशन चलाने वाले उपयोगकर्ता के विंडोज प्रमाण-पत्र (उपयोगकर्ता नाम, पासवर्ड और डोमेन) होते हैं। एएसपी.नेट अनुप्रयोगों के लिए, डिफ़ॉल्ट नेटवर्क प्रमाण-पत्र लॉग-इन उपयोगकर्ता के उपयोगकर्ता प्रमाण-पत्र हैं, या उपयोगकर्ता का प्रतिरूपण किया जा रहा है।

+0

ठीक है, यह अच्छा है। आप सर्वर पर उपयोगकर्ता को उन प्रमाण-पत्रों के साथ कैसे लिखते हैं? सिग्नलर इसका प्रबंधन कैसे करता है? – tugberk

+1

सिग्नल प्रमाणीकरण में शामिल नहीं है। यह बस अंतर्निहित मेजबान से प्रमाण पत्र के माध्यम से गुजरता है। उपर्युक्त नमूने के मामले में, आपको कुछ भी करने के लिए डिफ़ॉल्ट नेटवर्क प्रमाण-पत्रों के लिए Windows प्रमाणीकरण का उपयोग करके अपने सिग्नलर को सुरक्षित रखना होगा। फिर आप उपयोगकर्ता को अपने तर्क के आधार पर अधिकृत कर सकते हैं (क्या उपयोगकर्ता "बॉब" हब विधि "फू" कॉल करने की अनुमति है?) –

+0

@DamianEdwards तो, क्या हम कह सकते हैं कि डेस्कटॉप चैट एप्लिकेशन बनाना जिसमें उपयोगकर्ता आधारित ऑथ है (जैसे विंडोज़ लाइव Messagner) सिग्नल के साथ एक अच्छा विचार नहीं है (कम से कम अब के लिए)? आपके पास जब्बआर आईआरसी के रूप में है जिसमें फॉर्म-ऑथ है। क्या आपके पास कोई डेस्कटॉप ऑथ नमूना है जिसे मैं देख सकता हूं और विचार को समझ सकता हूं? – tugberk