gpt4 book ai didi

c# - NTAccount.Translate 方法因错误而失败 无法翻译部分或所有身份引用

转载 作者:太空狗 更新时间:2023-10-30 00:43:20 26 4
gpt4 key购买 nike

PipeAccessRule par = new PipeAccessRule("Everyone", PipeAccessRights.ReadWrite, System.Security.AccessControl.AccessControlType.Allow);

此代码因错误而失败:

Some or all identity references could not be translated.

我想这是因为我在非英语本地启动我的应用程序时使用了“Everyone”。在英文系统上一切正常。

如何避免这种情况?是否有一些枚举描述了一般用户组?

堆栈跟踪:

at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)    
at System.Security.Principal.NTAccount.Translate(Type targetType)
at System.Security.AccessControl.CommonObjectSecurity.ModifyAccess(AccessControlModification modification, AccessRule rule, Boolean& modified)
at System.Security.AccessControl.CommonObjectSecurity.AddAccessRule(AccessRule rule)
at System.IO.Pipes.PipeSecurity.AddAccessRule(PipeAccessRule rule)

最佳答案

通过使用 PipeAccessRule 和 SecurityIdentifier 的第二个构造函数而不是字符串来解决:

System.Security.Principal.SecurityIdentifier sid = new System.Security.Principal.SecurityIdentifier(System.Security.Principal.WellKnownSidType.BuiltinUsersSid, null);
PipeAccessRule par = new PipeAccessRule(sid, PipeAccessRights.ReadWrite, System.Security.AccessControl.AccessControlType.Allow);

关于c# - NTAccount.Translate 方法因错误而失败 无法翻译部分或所有身份引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11521129/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com