首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我的IAuthorizationPolicy不使用我的CustomPrincipal设置Thread.CurrentPrincipal?

这个问题涉及到了.NET框架中的身份验证和授权机制,其中包括了IAuthorizationPolicyCustomPrincipalThread.CurrentPrincipal用于存储当前线程的主体,而CustomPrincipal是一个自定义的主体类,可以用于存储用户的额外信息。

当你在使用IAuthorizationPolicy进行授权时,如果发现Thread.CurrentPrincipal没有使用你的CustomPrincipal设置,可能是因为以下原因:

  1. 在创建CustomPrincipal时,需要确保已经正确地设置了所有需要的属性和信息。
  2. 在创建IAuthorizationPolicy时,需要确保已经正确地设置了CustomPrincipal作为当前线程的主体。
  3. 在进行授权时,需要确保已经正确地设置了Thread.CurrentPrincipal,并且在整个授权过程中都保持不变。

为了解决这个问题,你可以尝试以下方法:

  1. 确保在创建CustomPrincipal时,已经正确地设置了所有需要的属性和信息。
  2. 在创建IAuthorizationPolicy时,确保已经正确地设置了CustomPrincipal作为当前线程的主体。
  3. 在进行授权时,确保已经正确地设置了Thread.CurrentPrincipal,并且在整个授权过程中都保持不变。

如果你需要进一步的帮助,可以参考以下资源:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

为什么建议使用框架默认 DefaultMeterObservationHandler

为什么建议使用框架默认 DefaultMeterObservationHandler 背景知识 最近,我们升级了 SpringBoot 3.x,并且,升级后,我们全面改造了原来 Sleuth 以及...全面使用 Observation 遇到了内存溢出以及 CPU 飙高(非不断 GC 导致) 但是,我们在全面使用 Observation 时候,发现了一个问题,就是内存溢出以及 CPU 飙高(非不断 GC...为何会出现内存溢出 我们通过增加如下启动参数启动并且在退出时候 dump JFR: -XX:StartFlightRecording=disk=true,dumponexit=true 或者使用下面的参数在内存溢出时候...} log.info("cost {} ms", System.currentTimeMillis() - start); } } } 在电脑上...我们将全局 ObservationHandler 改为什么都不做,对比下: package com.github.hashjang.wwsmbjysymrdo; import io.micrometer.common.KeyValue

9900

为什么建议你使用Python3.7.3?

作者: Lateautumn4lin 来源:云爬虫技术研究笔记 ---- 之前使用Python环境一直是Python3.7.3,一直使用很正常,没有什么毛病,直到最近做一个图片下载器时候发现了问题...https去验证SSL证书,不过这里问题是使用是Aiohttp库,并没有Verify这个参数,所以我们并不能使用这个去忽略这个问题。...解决一下 Goole了一下,发现其实不止一个人出现了这个问题,已经有老哥在AiohttpIssue里面提了相关问题了,可以参考https://github.com/aio-libs/aiohttp...可惜环境之前是3.7.3 我们知道了问题解决办法,我们再去看看为什么会有这个问题?...最后小建议 最后建议大家能够使用3.7.4时候尽量不使用3.7.3版本,虽然3.8也可以避免这个问题,但是3.8还是刚推出,BUG问题还是很多,所以目前这个阶段大家还是尽量使用3.7.4。

2.1K30
  • 为什么自动化流程执行

    很多人经常会有这个问题,为什么自动化流程执行。...如果你设置好了自动化流程,但是自动化流程却没有执行,请按照如下顺序检查你流程配置:第一步:请检查自动化流程有没有发布和上线来到【操作后台】- 【流程】,上线流程会如图显示【上线】;没有上线流程会显示灰色...流程第二步:请检查自动化流程是否有执行请来到后台【流程日志】,如果运行成功流程就会显示【执行成功】并有一个【运行id】。...自动化流程执行失败第三步:确认流程是上线状态,但是流程没有执行,为什么?如果流程确认是上线状态,需要确定你流程是否符合你设定触发条件,如果没有达到对应条件,是不会触发。...,被判断了没有执行【流程执行过程中修改】:在有【延迟执行】流程上线后,进行修改,会导致后续流程执行

    1.5K30

    为什么建议你使用Java序列化

    作为一名Java开发,为什么建议你在开发中避免使用Java序列化?...而目前主流框架却很少使用到Java序列化,如SpringCloud使用Json序列化,Dubbo虽然兼容了Java序列化,但是默认还是使用Hessian序列化。...,使用Java序列化,则无法实现两个应用服务之间传输对象序列化和反序列化。...总结 Java 默认序列化是通过 Serializable 接口实现,只要类实现了该接口,同时生成一个默认版本号,我们无需手动设置,该类就会自动实现序列化与反序列化。...Java 默认序列化虽然实现方便,但却存在安全漏洞、跨语言以及性能差等缺陷,所以我强烈建议你避免使用 Java 序列化。

    1.9K20

    利用WCF自定义授权模式提供当前Principal

    在《通过扩展自行实现服务授权》一文中,通过自定义CallContextInitializer方式在操作方法之前之前根据认证用户设置了当前线程安全主体,从而实现授权目的。...,我们只需要通过实现IAuthorizationPolicy接口创建自定义AuthorizationPolicy,并在Evaluate方法中将创建安全主体对象添加到EvaluationContext...Properties[“Principal”] = customPrincipal; 8: return true; 9: } 10: } 那么自定义AuthorizationPolicy...被设置成Custom情况下,被设置的当前安全主体实际上是通过当前服务安全上下文(ServiceSecurityContext)获取。...而在ServiceAuthorizationBehavior配置节中,ServiceAuthorizationManager对应配置属性为serviceAuthorizationManager,你可以通过该配置属性将设置自定义

    46290

    Python环境设置

    网上看到一篇博文,突然也想写一下自己正在使用Python环境设置,以及对应工具链。众众众所周知,Python环境管理是个很大很大坑,坑里面有无数新人or老司机尸体。...而Python环境管理工具又五花八门,所以可能每个人设置都不尽相同。列出使用工具链,至少最大地满足了自己需求,但不一定满足所有人需求。...需求 照例列一下需求: 平时在三种不同环境中使用Python,除了公司项目规定使用Python 3.6以外,个人项目都是尽可能用最新版: Python 3.6.8 + Linux(公司...这样做可以最大可能地保证你机器上所有虚拟环境、命令行程序都是可用,但我会嫌python版本太多了,毕竟99.99%情况下,Python 3.7.4都可以平滑替换为Python 3.7.5而造成任何损失...指向python升级则环境变成broken状态 而Python 3自带venv能解决这些问题,不明白为什么virtualenv还不支持venv,只能fork一下使得virtualenv尽可能使用python3

    1.1K10

    世界如何TP坐标_世界设置坐标

    大家好,又见面了,是你们朋友全栈君。 世界游戏中,/tp 玩家id,开启了作弊模式与朋友联机时可以使用,作用是传送到该玩家身边。...单机tp指令有: /tp 玩家id (开启了作弊模式与朋友联机时可以使用,作用是传送到该玩家身边)。 /tp 玩家id (将该玩家传送到x,y,z这个坐标处,需要有作弊模式权限)。.../give 玩家id 137 (1.8以下获得命令方块方式,给该名玩家命令方块)。 在命令方块输入指令,需要开启创造模式:/gamemode 1 (只要开启了作弊模式就可以使用该指令)。...《世界》是一款3D第一人称沙盘游戏,所呈现世界并不是华丽画面与特效,而是注重在游戏性上面。...本站仅提供信息存储空间服务,拥有所有权,承担相关法律责任。如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    3.5K30

    完蛋,事务怎么生效?

    ,居然生效,后来排查了一下,复习了一下各种事务失效场景,想着不如来一个总结,这样下次排查问题,就能有恃无恐了。...那一列,也就是事务支持,只有InnoDB,那就是只有InnoDB支持事务,所以要是引擎设置成其他事务会无效。...Bean注解信息,然后利用基于动态代理技术AOP来封装了整个事务,理论上想调用private方法也是没有问题,在方法级别使用method.setAccessible(true);就可以,但是可能...注意合理使用事务嵌套 首先事务是有传播机制: REQUIRED(默认):支持使用当前事务,如果当前事务不存在,创建一个新事务,如果有直接使用当前事务。...,但是保证所写均经过实践或者查找资料。

    67820

    完蛋,事务怎么生效?

    前言 事务大家平时应该都有写,之前写事务时候遇到一点坑,居然生效,后来排查了一下,复习了一下各种事务失效场景,想着不如来一个总结,这样下次排查问题,就能有恃无恐了。...那一列,也就是事务支持,只有InnoDB,那就是只有InnoDB支持事务,所以要是引擎设置成其他事务会无效。...中主要是用放射获取Bean注解信息,然后利用基于动态代理技术AOP来封装了整个事务,理论上想调用private方法也是没有问题,在方法级别使用method.setAccessible(true)...注意合理使用事务嵌套 首先事务是有传播机制: REQUIRED(默认):支持使用当前事务,如果当前事务不存在,创建一个新事务,如果有直接使用当前事务。...,但是保证所写均经过实践或者查找资料。

    1.3K20

    为什么推荐你使用vue-cli创建脚手架?

    最近在知乎看到一个问题,原问题如下: “ 很奇怪,为什么现在能找到自己手动创建vue脚手架文章非常少,而且大家似乎对webpack4热情并不高,对于想基于vue2.0+webpack4搭建一个脚手架来说资料真是少得可怜...难道现在一般做法就是直接从vue-cli开始然后改成自己需要模样吗?难道就没有人从零开始搭建一个渐进增强脚手架?这一点很疑惑,希望大牛给点指导。”...这个问题之前在公司也曾想过,当初入门vue项目也是从一个 npm install vue-cli -g 命令行开始,觉得官方提供vue-cli脚手架很友好,不用想vue+webpack工作流怎么搭建...当然,如果你直接使用了vue-cli,你领导要求你将webpack版本从3升级到最新大版本4,你会不会一脸懵逼呢?...所以,平时你们可以在公司里看看你们leader在忙些什么。 这就是为什么推荐你使用vue-cli创建脚手架原因(此文受众是想要进阶中级初级前端人员)。

    2.4K140

    为什么BERT不行?

    当然了,bad case分析这块也聊了很多,多分析能发现其中端倪,知道模型需要什么,该怎么处理,再放一遍在这里,希望能好好阅读。...模型、代码层问题 检查有没有bug,代码整体流程是否有问题,无论是训练还是推理,这个就得自己检查和使用了,这个没法解,只能自己debug,找问题然后解决。...类似的思路其实在这两篇文章里其实都有谈过: 心法利器[44] | 样本不均衡之我见 所以,很多时候你需要可能是更多地挖掘数据,从日志,从更多渠道去找,这个可能比增强本身要好。...这里背后逻辑可以参考这篇文章: 心法利器[45] | 模型需要信息提供够了吗 训练问题 针对训练问题,其实也就是一个经验问题了,多弄其实问题就会小很多,大家可以多去看各个论文使用超参,一般调差不多基本都不会有的...而文章本身输出并非是按照这个思路走,而是从一些大家经常问点深入来讨论,希望能从角度和风格来思考和回答问题。

    1.2K20

    为什么把 Run 出来 Apk 发给老板,却装上!

    Run Apk 2.1 testOnly 属性 我们知道,AS Run 起来 Apk,会使用 Debug 签名进行签名,不过安装上,并不是签名问题。...当你使用 adb install 安装 android:testOnly="true" 包时,输出错误信息,明确标记了无法安装一个 TEST_ONLY 包。...只有 AS 3.0+ IDE 上,Run 出来 APK,才会默认带上 testOnly 属性,这将阻止你使用正常方式安装。...这就是为什么你无法安装 Run 出来 Debug.apk。 2.2 为什么要这么设计? 这个问题,对于大多数开发者来说,基本上不是问题。...小结时刻 AS Run 出来 Apk,之所以无法安装,是因为其携带了 FLAG_TEST_ONLY 这个 Flag,它会阻止我们使用正常方式安装。

    2.6K00

    为什么把 Run 出来 Apk 发给老板,却装上!

    Run Apk 2.1 textOnly 属性 我们知道,AS Run 起来 Apk,会使用 Debug 签名进行签名,不过安装上,并不是签名问题。...这就是为什么你无法安装 Run 出来 Debug.apk。 2.2 为什么要这么设计? 这个问题,对于大多数开发者来说,基本上不是问题。...如果你觉得那里值得改进,请给我留言。一定会认真查询,修正不足。谢谢。 希望读到这您能转发分享和关注一下,以后还会更新技术干货,谢谢您支持!...毕业3年,是如何从年薪10W拖拽工程师成为30W资深Android开发者! 腾讯T3大牛带你了解 2019 Android开发趋势及必备技术点!...八年Android开发,从码农到架构师分享技术成长之路,共勉! 最后祝大家生活愉快~

    2.7K30

    996程序员们,为什么建议你买保险?

    为此,邀请了好朋友资深保险规划师杨震,请他从客观中立角度给大家开一次讲座,全面解读保险里陷阱,避免大家日后被坑。讲座开始前,先上一波干货,给大家分析一下日常买保险常见各种不正确姿势。...而那些花高价买万能险、返还险等,认为包括了“教育金”和“养老金”,不但有保障,还可以理财,很划算。但其实,这种保险价格比纯保障型贵好几倍,同样价格,保额也严重不足。...但很多人不知道,国家早已对各大保险公司疾病进行了统一,前25种重疾病种各家保险公司定义都是相同。 所以,我们看重数量应该是,重疾条款中附加轻症和中症项目。...要不然,我们花再多钱也是白搭,更得不到风险防御效果。 买保险4个正确打开方式 买保险各种不正确姿势,每天都在我们身边上演,这么深水,怎么才能避免被坑钱呢?...其实多花很多冤枉钱 有的朋友在代理人说服下很容易就买了一份“返还险”,认为到期了生病还可以返还保费,像是捡了一个大便宜。 但其实,这类保险是两全型保险,在寿险基础上附加一款重疾险。

    2.8K20

    为什么使用不了了?

    错误情况1 在同一项目中使用“TestClass2”这个类时出现错误。  ...【分析】:这个错误比较明显,图中将“TestClass2”写在了 “TestClass1”中,类在使用中是不允许出现嵌套,否则就是我们常说“类中类”,必须杜绝这样编程失误。...错误情况2 在同一项目中使用“TestClass2”这个类时出现错误。 【分析】:“TestClass1”中只有一个方法,没有其他类,所以不存在“类中类”情况。...仔细观察,发现Program 命名空间为 “thinger.com” ,而“TestClass1”命名空间为 “thinger.com.cn”,两者命名空间不一致。...错误情况3 在同一项目中使用“TestClass1”这个类时出现错误。 【分析】:类名称为 “TestClass1”,而使用时却将类名称写成了“TestClass11”。

    70930

    世界设置坐标指令_世界坐标开启指令

    首先,如果一开始就是创建生存模式,那么是不能直接使用代 … 标签: 世界死亡不掉落指令 世界死亡不掉落指令用法 发布时间:2016-07-14 世界死亡不掉落指令怎么开启 死亡怎么不掉东西...注册账号/register 密码 登陆账号/login 密码 查看金钱/money 设置 … 标签: 世界 游戏攻略 游戏秘籍 发布时间:2015-11-03 世界联机怎么开作弊 世界作弊怎样开启...,但是世界BOSS坐标是恒定,下面我们将为玩家们带来世界BOSS坐标位置图文攻略,希望对哦玩友们有帮助....世界故事模式字幕开启方法: 首先在主菜单能看到“设置”选项,点击进入. … 标签: 世界:故事模式 世界故事模式玩法 世界故事模式攻略 发布时间:2016-03-15 世界三大模式中创造模式需要很多指令才能很好进行游戏...指令大全: Hcharge … 标签: 世界指令大全 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,拥有所有权,承担相关法律责任。

    1.4K10

    为什么要写自己框架?

    觉得编程框架应该分为:直接用->抛弃->重拾 框架(framework)是一个基本概念上结构,用于去解决或者处理复杂问题。这个广泛定义使用十分流行,尤其在软件概念。框架也能用于机械结构。...其实说白了框架就是使用别人造好轮子。在软件开发里面就是command+C/command+V。 先自我介绍一下,是一名信管专业大学生,从专业可以看出就是以后大家嘴里程序员。...运行时候不是这边有问题就是那边出现了错误。原来在以前只想着如何使用它,如何整合别人代码,却忘了一个最最本真的东西:创造!几乎失去了编程能力,变成了电脑面前代码复制员。...结局可想而知,作为cssbootstrap还可以理解,但是其他大型框架代码几乎就是一座不可逾越大山,让人望尘莫及。难道就这样放弃,继续用下去,触碰那个永远神秘盒子了吗?...于是马上投入了工作,大量Google之后发现行不通,怎么办!聪明马上想到我编写整个框架,那我写部分功能也是可以呀,于是就有了第一个框架扩展:DbFactory.php文件。 ? ?

    1.3K20

    为什么Redis这么“慢”?

    noeviction:淘汰任何 Key,满容后再写入直接报错。 allkeys-lfu:不管 Key 是否设置了过期,淘汰访问频率最低 Key(4.0+支持)。...但在使用 Redis 时,我们建议这么干,原因如下。 绑定 CPU Redis,在进行数据持久化时,Fork 出子进程,子进程会继承父进程 CPU 使用偏好。...下面就针对这两块,分享一下认为比较合理 Redis 使用和运维方法,不一定最全面,也可能与你使用 Redis 方法不同,但以下这些方法都是在踩坑之后总结实际经验,供你参考。...建议设置过期时间,把 Redis 当做缓存使用,尤其在数量很大时,设置过期时间会导致内存无限增长。...总结 以上就是使用 Redis 和开发 Redis 相关中间件时,总结出来 Redis 推荐实践方法,以上提出这些方面,都或多或少在实际使用中遇到过。

    3.6K10

    为什么数据按顺序排序原来如此 | Java Debug 笔记

    接口返回数据顺序总是固定问题描述====在开发突发奇想。将表头信息也给查出来一并返回给前端了。但是正因为这一举动却带来嘲讽。...说接口顺序不对问题定位====首先说明下这个问题是刚入行时遇到。当时很是困惑,当然啦现在看来真的是贻笑大方了。刚入行那会一直都是使用Mybatis 框架实现数据获取。...决定一探究竟为什么LinkedHashMap 可以实现按照写入顺序排序。通过结构图我们清楚看到他是HashMap子类。所以他存储结构和HashMap基本上是一样。...因为这里是Bug解析所以关于LinkedHashMap源码东西就不深入研究了。最终追踪到了是其内部linkNodeLast这个方法使其具有写入顺序特性。...总结==对待技术我们要持有严谨态度。因为代码是死。但是人是活,在设计代码时候开发者肯定会考虑到尽可能多情况。我们使用java就是站在巨人肩膀上。我们只有理解其内部原理才能用得心应手。

    23910
    领券