GithubHelp home page GithubHelp logo

petergfernandez / auth0-verified-account-linking Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 89 KB

Reference implementation for Verified Account Linking in Auth0

License: MIT License

JavaScript 75.62% HTML 15.32% CSS 9.05%

auth0-verified-account-linking's Introduction

Auth0 Verified Account Linking

Consumer type scenarios often involve providing users with more than one option to authenticate. This offers customers great flexibility, and serves to reduce friction by mitigating the need to repetitively enter (personal) information. Use of social providers such as Facebook, Twitter or Google, will typically result in a smoother sign-up or sign-in (a.k.a. login) experience but can lead to frustration for a user if their account/profile changes depending on which provider they choose. Further, self-service typically provides users with the ability to change one or more aspects of their user profile (through some MyAccount/MyProfile functionality, say) and providing some capability for some self-serviced account/profile association could, without the proper control, potentially lead to security vulnerabilities which could be exploited.

Verified Account Linking workflow is provided as a customized extensibility solution, that leverages Auth0 functionality to address the sort of problems that can occur in unverified account link scenarios. For further information regarding this, or any other Auth0 customized extensibility provided, please feel free to get in touch.

The Auth0 Account Link Extension is provided to handle the most typical user case - i.e. workflow which provides for the linking of user accounts during sign-up/sign-in. Use of the Account Link Extension is a recommended best practice, and for most cases the Account Link Extension provides functionality that can be used out-of-box. However, use of the Account Link Extension can be challenging in a number of situations, and in such circumstances use of the solution provided here can be beneficial.

Design documentation

Custom Implementation Services to support functionality not supported out-of-the-box are provided by Auth0 Professional Services, and a wide variety of services are offered to help address a number of use case scenarios. These services can be leveraged to provide you with a complete solution for Verified Account Linking - in either a stand-alone fashion or in conjunction with other customization. However we also provide you with full design documentation (see below) if you prefer to implement yourself.

Verified Account Linking workflow in Auth0 - Design Document

Detailed design documentation (follow link above to access) provides you with a comprehensive set of information that is implementation agnostic. Using this, you and your team can implement Verified Account Linking workflow whatever the technology stack you currently, or indeed plan, to utilize. The information is provided free of charge and without warranty (either explicit or implied).

Reference implementation

This repository also contains reference implementation developed using Node.js, and is provided to accelerate development. This implementation is provided free of charge and without warranty either explicit or implied.

Profile Management

The Profile folder contains reference Node.js implementation that can be used as a basis to build out Profile Management functionality in order to support Verified Account Linking. For further details please refer to the readme contained in the folder.

Auth0 Configuration

The Tenant folder contains reference Auth0 Tenant configuration and asset definitions that can be used as a basis to build out functionality in order to support Verified Account Linking. For further details please refer to the readme contained in the folder.

About Auth0

Auth0 is the flagship Platform-as-a-Service (PaaS) Identity and Access Management service from the company of the same name. Auth0 helps you to easily:

  • authenticate using multiple identity providers, including social (e.g. Google, Facebook, Microsoft, LinkedIn, GitHub, Twitter, etc), or enterprise (e.g. Windows Azure AD, Google Apps, Active Directory, ADFS, SAML, etc),
  • authenticate users via username/password, or passwordless mechanisms,
  • implement multi-factor authentication,
  • link multiple user identities to a single user account,
  • generate signed JSON Web Tokens to authorize API calls and flow user identity securely,
  • access demographics and analytics, detailing how, when, and where users are logging in
  • enrich user profiles from other data sources using customizable JavaScript Rules,
  • and much, much more.

Go to Auth0 and click Sign Up to create a free account.

Issue Reporting

If you have found a bug or if you have a feature request, please report them via the issues section of this repository. Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.

License

This project is licensed under an MIT LICENSE. Please see the LICENSE file for more info.

auth0-verified-account-linking's People

Contributors

petergfernandez avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.