BlazorOIDC身份验证弹出窗口
创始人
2024-12-21 12:30:27
0
  1. 配置 OIDC 客户端:打开 Startup.cs 文件并添加以下代码:

    services.AddAuthentication(options => { options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme; options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme; }).AddCookie(options => { options.Cookie.SameSite = SameSiteMode.None; }).AddOpenIdConnect(options => { options.Authority = "https://localhost:5001"; options.ClientId = "blazor_oidc"; options.ClientSecret = "blazor_oidc_secret"; options.ResponseType = "code"; options.Scope.Add("openid"); options.Scope.Add("profile"); options.SaveTokens = true; });

  2. 在 Index.razor 页面中添加以下代码:

    @page "/" @using Microsoft.AspNetCore.Components.WebAssembly.Authentication @inject SignOutSessionStateManager SignOutManager @implements IDisposable

    Hello, @context.User.Identity.Name!

    @code { private IDisposable stateChanged;

    protected override void OnInitialized()
    {
        stateChanged = SignOutManager.SubscribeToSignOutState((state) =>
        {
            if (state) // logout completion
            {
                // refresh the page to ensure a completely new circuit
                NavigationManager.NavigateTo("/authentication/logout");
            }
        });
    
        base.OnInitialized();
    }
    
    public void Dispose()
    {
        stateChanged.Dispose();
    }
    
    private async Task StartAuthentication()
    {
        var returnUrl = NavigationManager.ToAbsoluteUri(NavigationManager.Uri).ToString();
    
        var options = new AuthenticationOptions
        {
            AuthenticationPaths = new AuthenticationPaths
            {
                Login = "/authentication/login",
                Logout = "/authentication/logout",
                LogInFailed = "/authentication/login-failed"
            },
            ProviderOptions = new List
            {
                new OpenIdConnectOptions
                {
                    SignInScheme = "Cookies",
                    Authority
    

相关内容

热门资讯

外挂绝活!uupoker透视,... 外挂绝活!uupoker透视,扑克之星辅助-总是是真的有辅助教程(哔哩哔哩)1、点击下载安装,扑克之...
外挂妙计!智星菠萝可以辅助吗,... 外挂妙计!智星菠萝可以辅助吗,佛手在线大菠萝为什么都输-一贯真的是有辅助方法(哔哩哔哩)1、下载好佛...
外挂攻略!来玩app 德州 辅... 外挂攻略!来玩app 德州 辅助,约局吧如何查看是否有挂-果然一直总是有辅助方法(哔哩哔哩)1、每一...
外挂烘培!sohoo辅助,po... 外挂烘培!sohoo辅助,pokeplus脚本-真是有辅助教程(哔哩哔哩)一、pokeplus脚本可...
外挂大纲!大菠萝免费辅助,哈糖... 外挂大纲!大菠萝免费辅助,哈糖大菠萝软件下载-切实存在有辅助工具(哔哩哔哩)1、哈糖大菠萝软件下载透...
外挂教程书!聚星ai辅助工具激... 外挂教程书!聚星ai辅助工具激活码,德普之星透视辅助软件激活码-原来有辅助技巧(哔哩哔哩)1、很好的...
外挂资料!佛手大菠萝有挂吗,拱... 外挂资料!佛手大菠萝有挂吗,拱趴大菠萝万能挂-竟然一直总是有辅助脚本(哔哩哔哩)1、超多福利:超高返...
外挂攻略!aa poker辅助... 外挂攻略!aa poker辅助,德州局透视-原来是真的有辅助教程(哔哩哔哩)1、许多玩家不知道德州局...
外挂手筋!德州局脚本,poke... 外挂手筋!德州局脚本,pokemomo辅助工具-原来是有辅助脚本(哔哩哔哩)1、玩家可以在pokem...
外挂办法!pokermaste... 外挂办法!pokermaster辅助器,pokerworld修改器-好像是真的有辅助方法(哔哩哔哩)...