下面就來做一個例子:IdentityServer3服務端的配置
VS2015創建一個MVC項目 IdrOAuth 用來授權的認證的站點
項目建立好了
這里需要添加幾個Nuget包,右鍵我們的項目
添加相關Nuget包
IdentityServer3;
Microsoft.Owin.Host.SystemWeb;
添加 Startup 文件 如我的: LYMStartup在 IAppBuilder 中配置identityserver3
如:
app.Map("/lym", lymapp => { var factory = new IdentityServerServiceFactory() .UseInMemoryClients(Clients.Get()) .UseInMemoryScopes(Scopes.Get()) .UserInMemoryUsers(Users.Get()) ; lymapp.UseIdentityServer(new IdentityServer3.Core.Configuration.IdentityServerOptions { SiteName = "SSO授權驗證站點", //EnableWelcomePage = true, SigningCertificate = Certificate.Get(), Factory = factory, RequireSsl = false }); });
配置好了路由地址,設置IdentityServer配置,這里我是關閉了SSL,一般是開啟啟用 使用https訪問
這里沒配置項很多,每個的意思不做特別說明
上述代碼中所有的Users Scopes Clients 都是放到緩存中 但是實際業務我們不會這么放,這個后面的文章會一步一步介紹
.UseInMemoryClients(Clients.Get()) .UseInMemoryScopes(Scopes.Get()) .UserInMemoryUsers(Users.Get()) ;
這些配置好相關數據,實際可以參考官方文檔,基礎的就不多糾結了
還需要在webconfig設置 <modules runAllManagedModulesForAllRequests="true">不然 identityserver3資源文件不能加載
這樣一個簡單的IdrServer就配置好了 訪問 調試或者部署 訪問網站/lym 就可以看到界面了 如何可以瀏覽,那么第一步就算成功了
后面的文章繼續一步一步介紹 各種模式 openid +cookies 客戶端模式 密碼模式 授權碼模式 以及 自定義登陸界面,自定義用戶服務調用自己的數據庫中的用戶名密碼授權,以及EF數據對idrserver的數據持久化 以及授權api 等等再實際項目中的運用