pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

如何在桌面應用程序中從 Azure AD 2.0/MSAL 注銷?

How to sign out from Azure AD 2.0/MSAL in a desktop application?(如何在桌面應用程序中從 Azure AD 2.0/MSAL 注銷?)
本文介紹了如何在桌面應用程序中從 Azure AD 2.0/MSAL 注銷?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

我在 WPF 桌面應用程序中使用 MSAL,該應用程序需要允許用戶登錄和注銷 Azure AD v2.0.Microsoft 的 Graph 訪問示例 和其他大多數示例我請參閱使用 PublicClientApplication.Remove(IUser) 注銷,例如 在這個函數中:

I'm using MSAL in a WPF desktop application that needs to allow users to sign in and out against Azure AD v2.0. Microsoft's Graph access sample and most of the other examples I see use PublicClientApplication.Remove(IUser) to log out, like in this function:

//(from Microsoft's example)

/// <summary>
/// Sign out the current user
/// </summary>
private void SignOutButton_Click(object sender, RoutedEventArgs e)
{
    if (App.PublicClientApp.Users.Any())
    {
        try
        {
            App.PublicClientApp.Remove(App.PublicClientApp.Users.FirstOrDefault());
            this.ResultText.Text = "User has signed-out";
            this.CallGraphButton.Visibility = Visibility.Visible;
            this.SignOutButton.Visibility = Visibility.Collapsed;
        }
        catch (MsalException ex)
        {
            ResultText.Text = $"Error signing-out user: {ex.Message}";
        }
    }
}

據我所知,Remove(IUser) 似乎刪除了該用戶及其令牌的 MSAL 緩存,但它似乎并未真正將用戶注銷.如果我嘗試再次登錄我的應用程序,我以前的用戶將顯示為已登錄",單擊將使我以該用戶身份登錄,而無需再次提供憑據.使用 Microsoft 身份驗證庫 (MSAL) 時無法注銷 考慮到 MSAL 的當前狀態,我覺得我需要手動注銷.

From what I can see, it looks like Remove(IUser) deletes MSAL's cache of that user and their tokens, but it doesn't seem like it's actually signing the user out. If I try to log in to my app again, my previous user will show up as "signed in" and clicking will log me in as that user without having to provide credentials again. Logout does not work when using Microsoft Authentication Library (MSAL) makes me think I will need to log out manually, given the current state of MSAL.

我發現了很多網絡應用教程,例如 this Microsoft one 說退出應該涉及刪除應用程序的本地記錄(看起來像 Remove(IUser) 正在做),并且還重定向到

I've found a lot of web-app tutorials like this Microsoft one that say a sign-out should involve deleting the app's local record (what it looks like Remove(IUser) is doing), and also redirecting to some variant of

GET https://login.microsoftonline.com/common/oauth2/v2.0/logout?post_logout_redirect_uri=http%3A%2F%2Flocalhost%2Fmyapp%2F

但我的應用不在網絡瀏覽器中,所以我不確定如何處理該請求.在使用 MSAL 時如何真正注銷?

But my app isn't in a web browser, so I'm not sure what to do with that request. How do I really log out while using MSAL?

推薦答案

你是對的,Remove(IUser) 方法只是將用戶從緩存中移除.我們還沒有實現一個 Signout 方法,正如您所寫的那樣,它將利用注銷端點.這是我們希望在未來提供的東西.請注意,有兩種退出方式:從應用程序退出和從設備退出.

You are right, the Remove(IUser) method only removes the user from the cache. We have not yet implemented a Signout method, which would, as your write, leverage the logout endpoint. This is something we want to provide in the future. Note that there are two forms of sign-out: sign-out from the app, and signout from the device.

要回答您的最后一個問題,您的 WPF 應用確實不是 Web 瀏覽器,但它包含一個嵌入式 Web 瀏覽器,該瀏覽器保留一個會話 cookie,需要通過向 azure AD 發送注銷請求來清除它.

To answer your last question, your WPF app is not a web browser indeed, but it contains an embedded web browser, which keeps a session cookie, that needs to be cleared by sending azure AD a logout request.

這篇關于如何在桌面應用程序中從 Azure AD 2.0/MSAL 注銷?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

ASP.NET Core authenticating with Azure Active Directory and persisting custom Claims across requests(ASP.NET Core 使用 Azure Active Directory 進行身份驗證并跨請求保留自定義聲明)
ASP.NET Core 2.0 Web API Azure Ad v2 Token Authorization not working(ASP.NET Core 2.0 Web API Azure Ad v2 令牌授權不起作用)
How do I get Azure AD OAuth2 Access Token and Refresh token for Daemon or Server to C# ASP.NET Web API(如何獲取守護進程或服務器到 C# ASP.NET Web API 的 Azure AD OAuth2 訪問令牌和刷新令牌) - IT屋-程序員軟件開發技
Azure KeyVault Active Directory AcquireTokenAsync timeout when called asynchronously(異步調用時 Azure KeyVault Active Directory AcquireTokenAsync 超時)
Getting access token using email address and app password from oauth2/token(使用電子郵件地址和應用程序密碼從 oauth2/token 獲取訪問令牌)
New Azure AD application doesn#39;t work until updated through management portal(新的 Azure AD 應用程序在通過管理門戶更新之前無法運行)
主站蜘蛛池模板: 洛阳防爆合格证办理-洛阳防爆认证机构-洛阳申请国家防爆合格证-洛阳本安防爆认证代办-洛阳沪南抚防爆电气技术服务有限公司 | 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 中医治疗皮肤病_潍坊银康医院「山东」重症皮肤病救治平台 | 硫酸钡厂家_高光沉淀硫酸钡价格-河南钡丰化工有限公司 | 专业甜品培训学校_广东糖水培训_奶茶培训_特色小吃培训_广州烘趣甜品培训机构 | 不锈钢水箱生产厂家_消防水箱生产厂家-河南联固供水设备有限公司 | 汽车水泵_汽车水泵厂家-瑞安市骏迪汽车配件有限公司 | 地脚螺栓_材质_标准-永年县德联地脚螺栓厂家 | 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | 江苏皓越真空设备有限公司 | 无机纤维喷涂棉-喷涂棉施工工程-山东华泉建筑工程有限公司▲ | 荣事达手推洗地机_洗地机厂家_驾驶式扫地机_工业清洁设备 | 塑料托盘厂家直销-吹塑托盘生产厂家-力库塑业【官网】 | 不锈钢监控杆_监控立杆厂家-廊坊耀星光电科技有限公司 | 体坛网_体坛+_体坛周报新闻客户端 | 定制/定做冲锋衣厂家/公司-订做/订制冲锋衣价格/费用-北京圣达信 | 流量卡中心-流量卡套餐查询系统_移动电信联通流量卡套餐大全 | 对照品_中药对照品_标准品_对照药材_「格利普」高纯中药标准品厂家-成都格利普生物科技有限公司 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 银川美容培训-美睫美甲培训-彩妆纹绣培训-新娘化妆-学化妆-宁夏倍莱妮职业技能培训学校有限公司 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 智慧旅游_智慧景区_微景通-智慧旅游景区解决方案提供商 | 电动垃圾车,垃圾清运车-江苏速利达机车有限公司 | 颚式破碎机,圆锥破碎机,制砂机-新乡市德诚机电制造有限公司 | 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 烟气换热器_GGH烟气换热器_空气预热器_高温气气换热器-青岛康景辉 | 分轨 | 上传文件,即刻分离人声和伴奏 | 电动葫芦|防爆钢丝绳电动葫芦|手拉葫芦-保定大力起重葫芦有限公司 | 冷却塔改造厂家_不锈钢冷却塔_玻璃钢冷却塔改造维修-广东特菱节能空调设备有限公司 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | 佛山市钱丰金属不锈钢蜂窝板定制厂家|不锈钢装饰线条|不锈钢屏风| 电梯装饰板|不锈钢蜂窝板不锈钢工艺板材厂家佛山市钱丰金属制品有限公司 | 英语词典_成语词典_日语词典_法语词典_在线词典网 | 天一线缆邯郸有限公司_煤矿用电缆厂家_矿用光缆厂家_矿用控制电缆_矿用通信电缆-天一线缆邯郸有限公司 | 电销卡 防封电销卡 不封号电销卡 电话销售卡 白名单电销卡 电销系统 外呼系统 | 头条搜索极速版下载安装免费新版,头条搜索极速版邀请码怎么填写? - 欧远全 | 硫酸钡厂家_高光沉淀硫酸钡价格-河南钡丰化工有限公司 | 泰安塞纳春天装饰公司【网站】 | 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | Trimos测长机_测高仪_TESA_mahr,WYLER水平仪,PWB对刀仪-德瑞华测量技术(苏州)有限公司 | 仿清水混凝土_清水混凝土装修_施工_修饰_保护剂_修补_清水混凝土修复-德州忠岭建筑装饰工程 | 东莞市天进机械有限公司-钉箱机-粘箱机-糊箱机-打钉机认准东莞天进机械-厂家直供更放心! | 废旧物资回收公司_广州废旧设备回收_报废设备物资回收-益美工厂设备回收公司 |