Comment puis-je obtenir un jeton d'authentification OAuth 2.0 en C#
J'ai une
- Auth URL (qui se trouve être un
"https://login.microsoftonline.com/...") si ça peut aider. - Jeton d'accès de l'URL "https://service.endpoint.com/api/oauth2/token"
- ClientId "abc"
- Clientsecret "123"
Je puis avoir besoin de faire un appel à l'aide d'un porteur du jeton dans l'en-tête.
Je peux obtenir que cela fonctionne en Facteur, mais a frappé un mur en essayant de travailler sur la façon de l'implémenter en C#. J'ai été en utilisant RestSharp (mais ouvert à d'autres). Tout cela semble si opaque, quand j'ai pensé qu'il serait assez simple :/C'est une application console, donc je n'ai pas besoin de cloches et de sifflets.
En fin de compte, je veux que mon application (par programmation) obtenir un jeton, puis l'utiliser pour mes prochains appels. Je vous en serais reconnaissant à quiconque de me pointer à la documentation ou des exemples, qui explique ce que je suis après clairement. Tout ce que j'ai trouver est partielle ou pour les services d'exploitation sur un autre flux.
Grâce.
OriginalL'auteur Matt C | 2016-07-21
Vous devez vous connecter pour publier un commentaire.
En Facteur, cliquez sur Générer du Code puis dans Générer des Fragments de Code boîte de dialogue, vous pouvez sélectionner un autre codage de la langue, notamment en C# (RestSharp).
En outre, vous ne devrait avoir besoin que le jeton d'accès de l'URL. La forme de paramètres sont alors:
Extrait De Code:
De la réponse du corps, vous pouvez alors obtenir votre jeton d'accès. Par exemple pour un Porteur type de jeton, vous pouvez ensuite ajouter l'en-tête suivant à suivant les requêtes authentifiées:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
est également requise (au moins dans mon cas), l'autre sage codes d'état '0' sont rencontrés.Quel espace de noms utilisez-vous, je ne suis pas familier avec RestClient
Je crois que c'est RestSharp
OriginalL'auteur Stav
Le Reste Client réponse est parfait! (Je upvoted)
Mais, juste au cas où vous voulez aller "raw"
..........
J'ai eu ce de travailler avec HttpClient.
Voici un autre exemple de travail (en fonction de la réponse ci-dessus)......avec un peu plus de réglages. Parfois, le jeton de service est capricieux:
comment agit d'une permutation lorsqu'un certificat est utilisé?
OriginalL'auteur granadaCoder
Cet exemple obtenir jeton thouth HttpWebRequest
OriginalL'auteur ukrainianDev