小编Nat*_*tan的帖子

Azure AD OIDC 更改首选用户名格式

我已经为 OIDC 设置了一个注册应用程序,并将其配置为在 Azure AD 上用于各种用途。

我集成的应用程序preferred_username在 ID 令牌中用于各种用途。Azure ADusername@company.com向此字段分配 ,也称为 UPN。我希望它分配username哪个可能是旧的 SamAccountName 或以某种方式转换的 UPN。有什么办法可以做到这一点吗?

这对于 SAML 来说似乎是可能的(在我看来,NameId这在某种程度上相当于OIDC),但我找不到与 OIDC 相关的任何内容。https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-saml-claims-customization#editing-nameidpreferred_hostname

我尝试过通过一些有根据的猜测来更改应用程序中的清单文件,但没有成功实现这一点。我在清单文档中找不到任何相关内容。

azure azure-active-directory openid-connect

5
推荐指数
1
解决办法
6456
查看次数

HK2 等效的 FactoryModuleBuilder 辅助注射

由于迁移到 jersey 2,我需要从 guice 迁移到 HK2。我有一个针对我的一些依赖项的辅助注入方法,但我无法在 HK2 中实现它。看起来应该通过自定义注入解析器来解决,但我真的不知道如何解决。这些例子对我来说还不够清楚..

Guice 上的外观如下:

public interface MyFactory {
    public MyClass createMyClass(@Assisted String dynamicParameter);
    public HisClass createHisClass(@Assisted String dynamicParameter);
    ...
}

binder.install(new FactoryModuleBuilder().build(MyFactory.class));

public class MyClass {
   ...
   @Inject
   public MyClass(@Assisted String dynamicParameter, SomeService someOtherServiceInjectedAutomatically){
      ...
   }
}
Run Code Online (Sandbox Code Playgroud)

我如何在 HK2 上实施此操作?

java dependency-injection jersey-2.0 hk2

4
推荐指数
1
解决办法
777
查看次数

如何使用 Microsoft.Management.Infrastructure (MMI) 而不是 System.Management 进行本地 WMI 查询

我有这个使用 WMIC 获取 Windows 版本的代码段

(from x in new ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem").Get().OfType<ManagementObject>()
                    select x.GetPropertyValue("Version")).FirstOrDefault().ToString();
Run Code Online (Sandbox Code Playgroud)

由于 WMI 现在被认为是遗留系统,并且System.Configuration 的 .NET Core 实现需要最新的 .NET Framework,因此似乎需要使用 MMI 检索此信息。

令人惊讶的是,每个需要 WMI 访问权限的 Windows 问题都有类似上面的代码片段。看起来 MMI 的采用率还没有那么高,而且要找到一个好的 MMI 示例并不容易。

我如何使用Microsoft.Management.Infrastructure来完成上面的代码?

c# windows system.configuration .net-core

4
推荐指数
1
解决办法
1017
查看次数

ModelMapper 处理 java 8 可选 &lt;MyObjectDto&gt; 字段到可选 &lt;MyObject&gt;

我一直在应用程序周围使用 modelmapper 和 java 8Options,它们工作得很好,因为它们是原始类型;直到我将模型对象的字段之一更改为可选类型。然后一切都崩溃了。事实证明,许多库不能很好地处理泛型。

这是结构

public class MyObjectDto
{
   private Optional<MySubObjectDto> mySubObject;
}

public MyObject
{
   privae Optional<MySubjObject> mySubObject;
}
Run Code Online (Sandbox Code Playgroud)

当我尝试映射MyObjectDto到时MyObject, modelmapper 调用

public void setMySubObject(Optional<MySubObject> mySubObject){
   this.mySubObject = mySubObject;
}
Run Code Online (Sandbox Code Playgroud)

with Optional<MySubObjectDto>,我不明白这怎么可能(它们之间没有继承)。当然,崩溃得很快。现在我已经改变了我的设置器以接受 Dto 类型只是为了度过这一天,但这从长远来看是行不通的。有没有更好的方法来解决这个问题,或者我应该创建一个问题?

java java-8 modelmapper option-type

2
推荐指数
1
解决办法
5200
查看次数