मुझे पहचान सर्वर 4 के दस्तावेज़ों के माध्यम से किया गया है और मैंने इसे लॉगिन प्रदाता के रूप में Microsoft Office 365 का उपयोग करने के लिए सेट अप किया है। उपयोगकर्ता में लॉग इन किया है जब मैं एक बटन है, जहां वह अपने ऐप्स को अपने कैलेंडर graph.microsoft.comएएसपी.नेट पहचान (पहचान सर्वर के साथ) बाहरी संसाधन ओथ एक्सेस टोकन
startup.cs में कोड की webhooks एपीआई का उपयोग कर की घटनाओं की सदस्यता के लिए अनुमति दे सकते हैं बनाना चाहते
app.UseMicrosoftAccountAuthentication(new MicrosoftAccountOptions
{
AuthenticationScheme = "Microsoft",
DisplayName = "Microsoft",
SignInScheme = IdentityServerConstants.ExternalCookieAuthenticationScheme,
ClientId = "CLIENT ID",
ClientSecret = "CLIENT SECRET",
CallbackPath = new PathString("/signin-microsoft"),
Events = new OAuthEvents
{
OnCreatingTicket = context =>
{
redisCache.Set("AccessToken", context.AccessToken.GetBytes(), new DistributedCacheEntryOptions
{
AbsoluteExpiration = DateTimeOffset.UtcNow.AddDays(3)
});
return Task.FromResult(context);
}
}
Scope =
{
"Calendars.Read",
"Calendars.Read.Shared",
},
SaveTokens = true
});
लेकिन यह स्पष्ट रूप से जाने के लिए एक व्यवहार्य मार्ग नहीं है। मैंने केवल परीक्षण उद्देश्यों के लिए और सब्सक्रिप्शन की पीओसी बनाने के लिए यह किया है।
अब मैं जानना चाहता हूं कि पहचान सर्वर के साथ संवाद करने का एक बेहतर तरीका है या नहीं, जो मुझे यह बाहरी एक्सेस टोकन प्राप्त करने की अनुमति देता है, ताकि मैं अपने लॉग इन उपयोगकर्ताओं की तरफ से माइक्रोसॉफ्ट एपीआई का उपयोग कर सकूं?
या माइक्रोसॉफ्ट एक्सेसटोकन को सीधे इस OAuthEvent से लेने का एकमात्र विकल्प है और लॉग इन उपयोगकर्ता से जुड़े डेटाबेस में सीधे इसे संग्रहीत करता है?
मुझे वास्तव में इसकी आवश्यकता है, क्योंकि मेरी अधिकांश कार्यक्षमता तीसरे पक्ष के डेटा पर आधारित है।
हाय क्रिस्टियन , क्या आप एक एएसपीनेट प्रोजेक्ट में सभी हिस्सों का उपयोग कर रहे हैं या पहचान सर्वर के लिए एक अलग अंतराल है? –
@AmrElsehemy मैं एक अलग परियोजना में पहचान सर्वर की मेजबानी कर रहा हूं। हम माइक्रोस्कोप का उपयोग कर रहे हैं और हमारे अन्य एपीआई एक्सेस टोकन सत्यापन मिडलवेयर के माध्यम से पहचान सर्वर से संचार कर रहे हैं। उम्मीद है कि यह आपके प्रश्न का उत्तर देगा। –
धन्यवाद, एक और सवाल, पहचान सर्वर एक ही अंतराल या बाहरी में होस्ट किया गया है, जो उपयोग करने के लिए बेहतर है? –