代码之家  ›  专栏  ›  技术社区  ›  Max Schmeling

如何生成自定义SID?

  •  4
  • Max Schmeling  · 技术社区  · 14 年前

    我需要在我的Web应用程序中为用户生成自定义的SID,以便与Microsoft Azman一起使用。最好的方法是什么?在做这个之前我需要知道什么?

    这就是我的想法,但我不确定我是否遗漏了什么:

    S-1-9-1234-用户ID+1000_

    S-第一次修订-资源管理器权限-域(特定应用程序的唯一编号)-用户的唯一ID

    更新: 由于David Crawford的博客条目,更改为资源管理器权限: http://blogs.msdn.com/dc995/archive/2006/08/23/715021.aspx

    1 回复  |  直到 14 年前
        1
  •  4
  •   Regent    14 年前

    就像我从MSDN上找到的 Developing Applications Using Windows Authorization Manager 文章:

    创建自定义SID时,必须为应用程序建立一个SID设计。例如,您可能 S1-9- 应用程序实例guid用户guid ,其中9是资源管理器子权限,并且 附加标识 用户向导 每一个都被分为四个部门。你也可以 使用S1-9- AppInstanceGuid用户ID 在哪里 用户名 是应用程序实例范围内用户的唯一编号。如果要使用自定义组,可以使用这些技术之一为每个组创建一个SID。有关生成guid的示例代码,请参阅Microsoft Windows软件开发工具包(SDK)。

    因此,看起来azman允许您以最适合您需要的方式生成sid。 唯一需要做的就是确保为语义不同的用户生成的sid是唯一的。(即使在不同的机器上生成。)