首页 > 编程语言 >[MDP.AspNetCore] 實作OAuth協定SSO Server/Client專案範例

[MDP.AspNetCore] 實作OAuth協定SSO Server/Client專案範例

时间:2024-05-03 18:44:41浏览次数:25  
标签:頁面 協定 範例 AspNetCore 專案 Server SSO MDP

團隊負責的系統變多的時候,使用SSO Server提供統一身分驗證,讓團隊只需要維護一份用戶資料及一個身分驗證服務。除了減少團隊維護成本之外,也讓使用者不用記憶多個站台的帳號密碼,提供更好的使用者體驗。

本篇文章,介紹使用MDP.AspNetCore的NuGet套件,所建立的實作OAuth協定SSO Server/Client專案範例。為自己留個紀錄,也希望能幫助到有需要的開發人員。


特別說明:

本專案 SSO Server使用Password登入做範例。開發人員可依專案需求,在SSO Server掛載多種身分驗證:Facebook、Google、AzureAD、Line...。

驗證模組使用說明:https://mdpnetcore.github.io/MDP.AspNetCore/


專案下載:

https://github.com/MDPNetCore/MDP.AspNetCore/tree/main/samples/OAuthSSOSamples


專案執行:

1.使用Visual Studio開啟,下載的OAuthSSOSamples.sln

2.於方案總管上的OAuthSSOSamples.sln點擊右鍵選單,設定啟動專案。

3.選擇「多個啟動專案」,將OAuthSSOServer/OAuthSSOClient都設定為啟動。

4.回到Visual Studio主畫面,按下執行專案,就可以看到Clint端的Login頁面。

5.點擊Clint端的Login頁面「LoginByOAuthSSO」按鈕,會發動SSO流程,跳轉到Server端的Login頁面。

6.Server端的Login頁面,點擊「LoginByPassword」按鈕,會發動Server端的Password登入,並完成SSO流程,跳轉到Client的Home頁面。

7.Client端的Home頁面,可以看到目前登入的用戶資料。

 


程式源碼:

https://github.com/MDPNetCore/MDP.AspNetCore

标签:頁面,協定,範例,AspNetCore,專案,Server,SSO,MDP
From: https://www.cnblogs.com/clark159/p/18171489

相关文章

  • 使用 docker 部署 AspNetCore 应用:使用alpine镜像并加入健康检查和瘦身
    前言#使用docker部署AspNetCore应用已经是标配了,之前我一直使用mcr.microsoft.com/dotnet/aspnet:8.0这类镜像,简单粗暴,不过可以使用alpine进一步优化镜像大小。很多开源工具的docker都有健康检查,这次我顺便也给加上了。PS:本文的例子项目来自一个差点被砍掉的项目......
  • [转]AspNetCore容器化(Docker)部署(二) —— 多容器通信
    一.前言着上一篇 AspNetCore容器化(Docker)部署(一)——入门,在单个容器helloworld的基础上引入nginx反向代理服务器组成多容器应用。 二.配置反向代理转接配置转接头。详见:https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.2......
  • [转]AspNetCore容器化(Docker)部署(一) —— 入门
    一.docker注册安装WindowsDockerDesktop https://www.docker.com/products/docker-desktopLinuxDockerCE https://docs.docker.com/install/linux/docker-ce/ubuntu/本文使用Windows环境Linuxcontainer做演示,安装完后切换到Linuxcontainer,“SwitchtoLinuxcontainers......
  • [转]AspNetCore容器化(Docker)部署(四) —— Jenkins自动化部署
    一.前言                          (Jenkins、Docker、Git/Svn组建一套简单的自动化发布流程) 文章中用到的相关服务器角色角色环境功能开发机Win10、Docker(LinuxOS)编码、调试发布机(与开发机共享)Win10......
  • [转]AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排
    一.前言上一篇部署了一个最基础的helloworld应用,创建了两个容器和一个network,还算应付得过来。如果该应用继续引入mysql、redis、job等若干服务,到时候发布一次得工作量之大就可想而知了,这时候就需要用到DockerCompose。DockerCompose是一个用于定义和运行多容器Docker应用程......
  • Microsoft.AspNetCore 已被弃用
    <ProjectSdk="Microsoft.NET.Sdk"><PropertyGroup><TargetFramework>net8.0</TargetFramework><ImplicitUsings>enable</ImplicitUsings><Nullable>enable</Nullable></PropertyGroup&g......
  • Microsoft.AspNetCore.SignalR.Client中传送用户Token
    Microsoft.AspNetCore.SignalR.Client的.Net客户端传送Token的最佳方法!如下将Authorization标头添加到HubConnectionBuilder中,如下所示:对于不记名令牌->HubConnection=newHubConnectionBuilder().WithUrl($"https://10.0.2.2:5001/chatHub",(opts)=>......
  • AspNetCore8.0实战
    前言想变优秀的第N天。学习张老师的Blog.Core。1.创建Asp.NetCoreAPI1.1创建项目启用OpenAPI:sawgger不适用顶级语句:使用main函数使用控制器:controller1.2配置说明iisSettings:iis配置。http:kestrl启动配置。IISExpress:iis启动配置。2.仓储+服务创建以下公共类......
  • 解决问题:HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相
      缺少AspNetCoreModuleV2模块,下载安装即可。ps:.netframework是可以直接发布,IIS指定就能正常访问的。但aspnetcore项目略有不同,要额外安装一个模块,如果没有安装,会报HTTP错误500.19-InternalServerError的错。1、官方版本地址:https://dotnet.microsoft.com/down......
  • Autofac的Swashbuckle生成报错 Microsoft.AspNetCore.Mvc.ApiExplorer.EndpointMetada
    错误内容:AnexceptionwasthrownwhileactivatingSwashbuckle.AspNetCore.SwaggerGen.SwaggerGenerator->Microsoft.AspNetCore.Mvc.ApiExplorer.ApiDescriptionGroupCollectionProvider->λ:Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider[]->......