声明和拒绝访问资源

Windows Communication Foundation (WCF) 支持基于声明的授权机制。 在基于是否存在声明来允许访问资源的同时,系统通常也基于是否存在声明来拒绝访问资源。 这样的系统应该在查找导致允许访问的声明之前先检查 AuthorizationContext 是否存在导致拒绝访问的声明。

例如,系统可能会拒绝允许任何具有Age类型声明、PossessProperty权限和Under 21资源值的标识访问该资源,除非该标识还具有Name类型声明、Identity权限和Mallory资源值。 另一种方法是,系统拒绝访问年龄低于 21 岁的任何人,并在名称为 Mallory 时授予访问权限。 若要正确实现此语义,请务必先查找 Age 声明,并确定年龄是否低于 21 岁。 否则,如果 Mallory 未满 21 岁,则仅可根据 Name 主张授予资源访问权限。

另请参阅