授权管理器(AzMan)是 Windows Server (2000、2003、Longhorn Server…)中自带的、能够和AD紧密集成的、供应用程序使用的授权检查引擎,它实现了完整的基于角色的授权管理框架,利用它,可以在应用程序中大大简化与授权有关的代码编写与实现。
在目前版本中,授权策略信息有两种存储方式:
- XML
- 目录(如活动目录-AD或ADAM)
上述两类三种存储方式的适用场景分别如下:
- 简单的小型应用可以直接使用XML,在这种方式中,不用设置/扩展 AD/ADAM 的 Schema,非常方便
- 如果基础域环境不好(如应用程序不便访问DC、存在多个Domain)等情况时,可以使用 ADAM
- 如果基础域环境较好,且应用程序的身份完全与AD集成,最好使用AD
在 Vista 中,AzMan 又增加了一种存储方式:SQL Server,这样对于应用程序来说,又多了一种更实用的选择,而且即然能存在 SQL Server中,估计通过一些手段,这些信息也能存储到其他类型的数据库中,如Access、Oracle等,现在 ASP.NET 2.0中的一些 Provider 不也是公开源代码了,并且实现了其他数据库类型的 Provider 了嘛。
不过,AD/ADAM 具有复制功能,可以方便地实现多个实例之间的目录同步,而SQL Server 不具有此功能,另外 AD/ADAM 在查询方面具有性能优势(AzMan的绝大多数请求是查询),所以到底要使用哪一种存储方式,还是要综合评估。
关于 AzMan 的更多信息,可以参考 AzMan MSDN Blog。
Longhor should be Longhorn
已更正,Thanks 开心
学习中..:)
很详细,谢谢啊
请教博主,XP下授权用的是什么服务?提供了API吗?我们可以编写程序调用其API作出基于其策略的授权决定吗?或者可以编写程序作出类似Linux下的sudo那样效果的程序吗?
有相关的文档链接可以提供给我的吗?谢谢博主!