GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - ophers/SimpleSSO: A .Net class to implement a general-purpose simple SSO scheme

BranchesTags
Open more actions menu

Latest commit

 

History

12 Commits
12 Commits

Folders and files

NameName
Last commit message
Last commit date
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
SimpleSSO.cs
SimpleSSO.cs
 
 

Repository files navigation

SimpleSSO

A .Net class to implement a general-purpose simple SSO scheme.

How it came to be?

We host our information systems on-premise and avail them to customers as a SaaS service. A customer asked that we link to another application of his such that he whould not need to authenticate to it seperately. Both application of course have different authentication authorities, but it was accepted that we whould be authoritative for the purpose of this linking.
The only question was how to implement this. OAuth 2.0, CAS and SAML 2.0 were deemed an overkill. A simple secure and reliable scheme is described by (one of many) this thread SSO via HMAC and shared key. Googling for ready made implementations I only came across specifically tailored implementations: specific kind of encoding, user-data, ticket timeout etc.

Features

  • Has six parameters controling its functionality and behaviour.
  • Self contained and simple public interface.
  • One line of code to initialize, one to create a token and one to validate a token.

Usage

  1. Exchange a shared key with your partner.
  2. Instantiate an object with the shared key:
    SimpleSSO sso = new SimpleSSO("My super secret Shared KEY :)");
  3. Create a token and use it:
    string token = sso.CreateToken("jhondoe", "[email protected]");
  4. On the recieving side validate the token:
string token = ...
if (sso.IsValid(token))
{
  // Do something useful
  string[] data = token.Split(':');
  // data[0] == "jhondoe", data[1] == "[email protected]"
}

About

A .Net class to implement a general-purpose simple SSO scheme

Resources

Readme
Apache-2.0 license
Activity

Stars

0 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.