All Projects → linianhui → Oidc.example

linianhui / Oidc.example

Licence: mit
OIDC (OpenID Connect) Example for http://openid.net/connect/

Projects that are alternatives of or similar to Oidc.example

IdentityServerSample
Sample ASP.NET Core MVC and Angular apps and API using Identity Server 4
Stars: ✭ 25 (-86.84%)
Mutual labels:  oauth2, openid-connect, identityserver4
Angularaspnetcoreoauth
Sample project demonstrating user authentication and identity with Angular, Asp.Net Core and IdentityServer4
Stars: ✭ 268 (+41.05%)
Mutual labels:  oauth2, openid-connect, identityserver4
example-oidc
OIDC (OpenID Connect) Example for http://openid.net/connect/
Stars: ✭ 221 (+16.32%)
Mutual labels:  openid-connect, identityserver4, oauth2-client
Jpproject.identityserver4.sso
🔒 ASP.NET Core 3.1 Open Source SSO. Built within IdentityServer4 🔑
Stars: ✭ 298 (+56.84%)
Mutual labels:  oauth2, openid-connect, identityserver4
Identityserver4 Example
Example IdentityServer 4 Implementation
Stars: ✭ 136 (-28.42%)
Mutual labels:  oauth2, openid-connect, identityserver4
Identityserver4
OpenID Connect and OAuth 2.0 Framework for ASP.NET Core
Stars: ✭ 8,428 (+4335.79%)
Mutual labels:  oauth2, openid-connect, identityserver4
oxd
Client software to secure apps with OAuth 2.0, OpenID Connect, and UMA
Stars: ✭ 40 (-78.95%)
Mutual labels:  oauth2, openid-connect, oauth2-client
Identityserver4.samples
Samples for IdentityServer4,use .net core 2.0
Stars: ✭ 561 (+195.26%)
Mutual labels:  oauth2, openid-connect, identityserver4
Jpproject.identityserver4.adminui
🔧 ASP.NET Core 3 & Angular 8 Administration Panel for 💞IdentityServer4 and ASP.NET Core Identity
Stars: ✭ 717 (+277.37%)
Mutual labels:  oauth2, openid-connect, identityserver4
Identityserver4.samples
Samples for IdentityServer4
Stars: ✭ 1,002 (+427.37%)
Mutual labels:  oauth2, openid-connect, identityserver4
Identitybase
IdentityBase is a Universal Identity Platform for web, mobile and IoT built on top of IdentityServer.
Stars: ✭ 112 (-41.05%)
Mutual labels:  oauth2, openid-connect, identityserver4
Reactjs Ts Identityserver
Demo app for using Identity Server with React.js SPA, .Net Core 3.0 and TypeScript
Stars: ✭ 120 (-36.84%)
Mutual labels:  openid-connect, identityserver4
React Oidc Client Js
OpenID Connect (OIDC) client with React and typescript
Stars: ✭ 122 (-35.79%)
Mutual labels:  openid-connect, identityserver4
Fosite
Extensible security first OAuth 2.0 and OpenID Connect SDK for Go.
Stars: ✭ 1,738 (+814.74%)
Mutual labels:  oauth2, openid-connect
Hydra
OpenID Certified™ OpenID Connect and OAuth Provider written in Go - cloud native, security-first, open source API security for your infrastructure. SDKs for any language. Compatible with MITREid.
Stars: ✭ 11,884 (+6154.74%)
Mutual labels:  oauth2, openid-connect
Auth
Authenticator via oauth2
Stars: ✭ 118 (-37.89%)
Mutual labels:  oauth2, oauth2-client
Node Oidc Provider
OpenID Certified™ OAuth 2.0 Authorization Server implementation for Node.js
Stars: ✭ 2,018 (+962.11%)
Mutual labels:  oauth2, openid-connect
Oathkeeper
A cloud native Identity & Access Proxy / API (IAP) and Access Control Decision API that authenticates, authorizes, and mutates incoming HTTP(s) requests. Inspired by the BeyondCorp / Zero Trust white paper. Written in Go.
Stars: ✭ 2,442 (+1185.26%)
Mutual labels:  oauth2, openid-connect
Django Auth Adfs
A Django authentication backend for Microsoft ADFS and AzureAD
Stars: ✭ 127 (-33.16%)
Mutual labels:  oauth2, openid-connect
Myoidc
基于OIDC协议的参考实现,根据各类库提供实现参考
Stars: ✭ 132 (-30.53%)
Mutual labels:  oauth2, openid-connect

Table of content

CI

CI Platform Stauts
GitHub Action Windows GitHub-Actions-Img

How to run?

docker-compose.yml (docker platform)

## start docker
docker-compose up --detach --build

## stop docker
docker-compose down

Update local /etc/hosts.

cat <<EOF >> /etc/hosts
127.0.0.1 traefik.test
127.0.0.1 oidc-server.test
127.0.0.1 oidc-client-hybrid.test
127.0.0.1 oidc-client-js.test
127.0.0.1 oauth2-resources-nodejs.test
127.0.0.1 oauth2-resources-aspnetcore.test
127.0.0.1 oauth2-resources-java.test
127.0.0.1 oauth2-client-aspnetcore.test
EOF

build.ps1 (windows platform)

Use administrator run build.ps1 to deploy demo web site to local IIS. Required :

  1. vs 2019 16.4 +
  2. .net framework 4.6.1 sdk
  3. .net core 3.1 sdk
  4. ASP.NET Core Module
build.ps1 -help

build.ps1 -target {Task}

Task                          Description
================================================================================
clean                         清理项目缓存
restore                       还原项目依赖
build                         编译项目
deploy-iis                    部署到本机IIS
open-browser                  用浏览器打开部署的站点
default                       默认执行open-browser

Deployed web site

web site docker windows description
http://traefik.test reverse proxy : traefik
http://oidc-server.test oidc server : asp.net core 3.1
http://oidc-client-hybrid.test oidc client : asp.net core 3.1
http://oidc-client-implicit.test oidc client : asp.net owin 4
http://oidc-client-js.test oidc client : html js(use access_token call resource api)
http://oauth2-resources-aspnetcore.test   oauth2 resources api : asp.net core 3.1
http://oauth2-resources-nodejs.test oauth2 resources api : node.js
http://oauth2-resources-java.test oauth2 resources api : java (spring boot)
http://oauth2-resources-owin.test oauth2 resources api : asp.net webapi 2
http://oauth2-client-aspnetcore.test oauth2 client : asp.net core 3.1
http://oauth2-client-owin.test oauth2 client : asp.net owin 4

OIDC Servers

  1. 1-src/web.oidc.server.ids4 : ids4 (https://github.com/IdentityServer/IdentityServer4) example (with github, qqconnect external login).

OIDC Clients

  1. 1-src/web.oidc.client.hybrid : web site, hybrid flow.
  2. 1-src/web.oidc.client.implicit : web site, implicit flow.
  3. 1-src/web.oidc.client.js : web site(static), implicit flow .
  4. 1-src/uwp.oidc.client.authorization-code : uwp app, authorization code flow.
  5. 1-src/wpf.oidc.client.authorization-code : wpf app, authorization code flow.

OAuth2 Clients

  1. 1-src/web.oauth2.client.aspnetcore : asp.net core 3.1.
  2. 1-src/web.oauth2.client.owin : asp.net owin.
  3. 1-src/console.oauth2.client.client-credentials : console app, client credentials flow(oauth2).
  4. 1-src/console.oauth2.client.resource-owner-password-credentials : console app, resource owner password credentials flow(oauth2).

OAuth2 Resources Servers

  1. 1-src/web.oauth2.resources.aspnetcore: asp.net core 3.1.
  2. 1-src/web.oauth2.resources.owin: asp.net owin.
  3. 1-src/web.oauth2.resources.nodejs: node.js.
  4. 1-src/web.oauth2.resources.java: java (spring boot 2.2.1).

OAuth2 Middleware

  1. 1-src/oauth2.github.aspnetcore: asp.net core 3.1.
  2. 1-src/oauth2.qqconnect.aspnetcore: asp.net core 3.1.
  3. 1-src/oauth2.qqconnect.owin: asp.net owin.

Global Config

If you want use QQ Connect or Github, please replace ClientId and ClientSercet in 1-src/_shared/GlobalConfig.cs file.

public static class GlobalConfig
{
    public static class QQConnect
    {
        public static readonly string ClientId = "You App Id";
        public static readonly string ClientSecret = "You App Secret";
    }

    public static class Github
    {
        public static readonly string ClientId = "You App Id";
        public static readonly string ClientSecret = "You App Secret";
    }
}

Blog

Authentication and Authorization: http://www.cnblogs.com/linianhui/category/929878.html

OIDC in Action: http://www.cnblogs.com/linianhui/category/1121078.html

Old version(ids3 and owin)

  1. ids3: https://github.com/linianhui/oidc.example/tree/ids3
  2. ids4 and owin: https://github.com/linianhui/oidc.example/tree/owin
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].