2013-02-21 11 views
7

से AssignRoles और UnAssignRoles को कैसे हटा सकता हूं, मैं सर्विसस्टैक में प्रमाणीकरण सुविधा का उपयोग कर रहा हूं और CredentialsAuthProvider का उपयोग करने के लिए Auth प्लगइन को कॉन्फ़िगर किया गया है। उत्पन्न मेटाडाटा पृष्ठ पर, ServiceStack निम्न कार्रवाई दिखाता है:मैं सर्विसस्टैक एपीआई

  • प्रमाणीकरण
  • AssignRoles
  • UnAssignRoles

मैं केवल प्रमाणीकरण आपरेशन उपयोग कर रहा हूँ, मैं क्यों भूमिकाओं निकालना चाहते हैं इस पृष्ठ के पाठकों को एपीआई का उपयोग करने के तरीके पर भ्रमित होने से बचने के लिए संचालन। क्या यह संभव है?

उत्तर

16

आप जिसके बाद केवल AssignRoles और UnAssignRoles

AuthFeature authFeature = new AuthFeature(() => new AuthUserSession(), new IAuthProvider[] { new BasicAuthProvider() }); 

authFeature.IncludeAssignRoleServices = false; 

Plugins.Add(authFeature); 
+0

हाँ कि भी बेहतर निकाल देंगे कर सकता है! – mythz

+0

बू-याआ! महान समाधान – ThomasArdal

6

संदेह में यह देखने के लिए कि Plugins wiki में कोई विवरण है या इसके लिए समर्पित Authentication page है।

प्रत्येक प्लग इन बस मार्गों कि उपलब्ध हैं के साथ ओवरराइड गुण जो ओवरराइड यह व्यवहार है, इस मामले में दिया गया है:

Plugins.Add(new AuthFeature(() => new AuthUserSession()) { 
    IncludeAssignRoleServices = false 
}); 

कौन सा के लिए एक छोटी हाथ है:

Plugins.Add(new AuthFeature(() => new AuthUserSession(), 
    new IAuthProvider[] { ... }, 
    ServiceRoutes = new Dictionary<Type, string[]> { 
     { typeof(AuthService), new[]{"/auth", "/auth/{provider}"} }, 
     //Omit the Un/AssignRoles service definitions here. 
    }  
)); 

source code for the AuthFeature प्रत्येक संपत्ति के डिफ़ॉल्ट को देखने के लिए भी उपयोगी है।

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