All Projects → alekseynemiro → Nemiro.oauth.dll

alekseynemiro / Nemiro.oauth.dll

Licence: apache-2.0
Nemiro.OAuth is a class library for authorization via OAuth protocol in .NET Framework

Projects that are alternatives of or similar to Nemiro.oauth.dll

Assent
Multi-provider framework in Elixir
Stars: ✭ 126 (+180%)
Mutual labels:  google, oauth, twitter, facebook, instagram, vk, vkontakte
Pow assent
Multi-provider authentication for your Pow enabled app
Stars: ✭ 236 (+424.44%)
Mutual labels:  google, oauth, twitter, facebook, instagram, vk
Oauth
🔗 OAuth 2.0 implementation for various providers in one place.
Stars: ✭ 336 (+646.67%)
Mutual labels:  google, oauth, login, facebook, instagram
Socialcounters
jQuery/PHP - Collection of Social Media APIs that display number of your social media fans. Facebook Likes, Twitter Followers, Instagram Followers, YouTube Subscribers, etc..
Stars: ✭ 104 (+131.11%)
Mutual labels:  google, twitter, facebook, instagram, vk
Login With
Stateless login-with microservice for OAuth
Stars: ✭ 2,301 (+5013.33%)
Mutual labels:  google, oauth, login, twitter, facebook
Social Login Helper Deprecated
A simple android library to easily implement social login into your android project
Stars: ✭ 81 (+80%)
Mutual labels:  google, login, twitter, facebook, instagram
Yii2 Authclient
Yii 2 authclient extension.
Stars: ✭ 430 (+855.56%)
Mutual labels:  google, oauth, twitter, facebook, vk
Keyring
Keyring is an authentication framework for WordPress. It comes with definitions for a variety of HTTP Basic, OAuth1 and OAuth2 web services. Use it as a common foundation for working with other web services from within WordPress code.
Stars: ✭ 52 (+15.56%)
Mutual labels:  google, twitter, facebook, instagram
Spark Pac4j
Security library for Sparkjava: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 154 (+242.22%)
Mutual labels:  oauth, login, twitter, facebook
Play Pac4j
Security library for Play framework 2 in Java and Scala: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 375 (+733.33%)
Mutual labels:  oauth, login, twitter, facebook
Spring Webmvc Pac4j
Security library for Spring Web MVC: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 110 (+144.44%)
Mutual labels:  oauth, login, twitter, facebook
Daily Coding Problem
Series of the problem 💯 and solution ✅ asked by Daily Coding problem👨‍🎓 website.
Stars: ✭ 90 (+100%)
Mutual labels:  google, dropbox, twitter, facebook
Play Authenticate
An authentication plugin for Play Framework 2.x (Java)
Stars: ✭ 813 (+1706.67%)
Mutual labels:  google, oauth, facebook, vkontakte
Spring Security Pac4j
pac4j security library for Spring Security: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 231 (+413.33%)
Mutual labels:  oauth, login, twitter, facebook
Hackathon Starter Kit
A Node-Typescript/Express Boilerplate with Authentication(Local, Github, Facebook, Twitter, Google, Dropbox, LinkedIn, Discord, Slack), Authorization, and CRUD functionality + PWA Support!
Stars: ✭ 242 (+437.78%)
Mutual labels:  google, dropbox, twitter, facebook
Simplicity
A simple way to implement Facebook and Google login in your iOS apps.
Stars: ✭ 683 (+1417.78%)
Mutual labels:  google, oauth, login, facebook
Skraper
Kotlin/Java library and cli tool for scraping posts and media from various sources with neither authorization nor full page rendering (Facebook, Instagram, Twitter, Youtube, Tiktok, Telegram, Twitch, Reddit, 9GAG, Pinterest, Flickr, Tumblr, IFunny, VK, Pikabu)
Stars: ✭ 72 (+60%)
Mutual labels:  twitter, facebook, instagram, vk
Socialauthhelper
Easy social network authorization for Android. Supports Facebook, Twitter, Instagram, Google+, Vkontakte. Made by Stfalcon
Stars: ✭ 94 (+108.89%)
Mutual labels:  twitter, facebook, instagram, vkontakte
Turnstile
An authentication framework for Swift.
Stars: ✭ 163 (+262.22%)
Mutual labels:  google, oauth, login, facebook
Buji Pac4j
pac4j security library for Shiro: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT...
Stars: ✭ 444 (+886.67%)
Mutual labels:  oauth, login, twitter, facebook

Nemiro.OAuth

Nemiro.OAuth is a class library for authorization via OAuth protocol in .NET Framework.

The library provides mechanisms for implementing OAuth clients, and also contains a ready-to-use clients for popular websites.

Nemiro.OAuth is distributed under Apache License Version 2.0.

To install Nemiro.OAuth, run the following command in the Package Manager Console:

PM> Install-Package Nemiro.OAuth

Online Demo

demo-oauth.nemiro.net

Features

  • Support OAuth 1.0 and 2.0;
  • Obtaining basic information about users: ID, name, sex, date of birth, email address and telephone number;
  • Ready-to-Use OAuth clients for: Amazon, Assembla, CodeProject, Dropbox, Facebook, Foursquare, GitHub, Google, Instagram, LinkedIn, Microsoft Live, Mail.Ru, Odnoklassniki (odnoklassniki.ru), SoundCloud, SourceForge, Tumblr, Twitter, VK (vkontakte, vk.com), Yahoo!, Yandex (yandex.ru);
  • Base classes to create additional clients;
  • Basic principles of operation with API of different providers;
  • Unified mechanisms to facilitate integration with a variety of API.

Less code, more functionality!

System Requirements

  • .NET Framework 3.5, 4.0, 4.5, 4.6 or 4.7

License

Nemiro.OAuth is distributed under Apache License Version 2.0.

How to use

1. Create an application at the OAuth provider site.

2. Use these credentials for registration of an OAuth client in your project.

For example, Facebook:

C#

OAuthManager.RegisterClient
(
  "facebook", 
  "1435890426686808", 
  "c6057dfae399beee9e8dc46a4182e8fd"
);

Visual Basic .NET

OAuthManager.RegisterClient _
(
  "facebook", 
  "1435890426686808", 
  "c6057dfae399beee9e8dc46a4182e8fd"
)

3. Create a page to handle the callback. And add code to obtain user data with external server.

For example:

C#

public partial class ExternalLoginResult : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
    var result = OAuthWeb.VerifyAuthorization();
    Response.Write(String.Format("Provider: {0}<br />", result.ProviderName));
    if (result.IsSuccessfully)
    {
      var user = result.UserInfo;
      Response.Write(String.Format("User ID:  {0}<br />", user.UserId));
      Response.Write(String.Format("Name:     {0}<br />", user.DisplayName));
      Response.Write(String.Format("Email:    {0}", user.Email));
    }
    else
    {
      Response.Write(result.ErrorInfo.Message);
    }
  }
}

Visual Basic .NET

Public Class ExternalLoginResult
  Inherits System.Web.UI.Page

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim result As AuthorizationResult = OAuthWeb.VerifyAuthorization()
    Response.Write(String.Format("Provider: {0}<br />", result.ProviderName))
    If result.IsSuccessfully Then
      Dim user As UserInfo = result.UserInfo
      Response.Write(String.Format("User ID:  {0}<br />", user.UserId))
      Response.Write(String.Format("Name:     {0}<br />", user.DisplayName))
      Response.Write(String.Format("Email:    {0}", user.Email))
    Else
      Response.Write(result.ErrorInfo.ToString())
    End If
  End Sub

End Class

4. Get the address for authentication and redirect the user to it.

C#

string returnUrl =  new Uri(Request.Url, "ExternalLoginResult.aspx").AbsoluteUri;
OAuthWeb.RedirectToAuthorization("facebook", returnUrl);

Visual Basic .NET

Dim returnUrl As String = New Uri(Request.Url, "ExternalLoginResult.aspx").AbsoluteUri
OAuthWeb.RedirectToAuthorization("facebook", returnUrl)

5. Enjoy!

See Also

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].