Class DelegationPermission

  • 实现的所有接口
    SerializableGuard

    public final class DelegationPermission
    extends BasicPermission
    implements Serializable
    此类用于限制Kerberos委派模型的使用,即:可转发和可代理票证。

    Permission的目标名称指定了一对kerberos服务主体。 第一个是委托使用TGT的下属服务主体。 第二个服务主体指定下级服务主体代表发起KerberosPrincipal进行交互的目标服务。 后一服务主体被指定用于限制可代理票证的使用。

    例如,要指定可转发TGT的“主机”服务使用,目标权限指定如下:

      DelegationPermission("\"host/foo.example.com@EXAMPLE.COM\" \"krbtgt/EXAMPLE.COM@EXAMPLE.COM\""); 

    要为“备份”服务提供可代理的nfs服务票证,可以指定目标权限:

      DelegationPermission("\"backup/bar.example.com@EXAMPLE.COM\" \"nfs/home.EXAMPLE.COM@EXAMPLE.COM\""); 
    从以下版本开始:
    1.4
    另请参见:
    Serialized Form
    • 构造方法详细信息

      • DelegationPermission

        public DelegationPermission​(String principals)
        使用指定的从属和目标主体创建新的 DelegationPermission
        参数
        principals - 从属和目标主体的名称
        异常
        NullPointerException - 如果 principalsnull
        IllegalArgumentException - 如果 principals为空。
      • DelegationPermission

        public DelegationPermission​(String principals,
                                    String actions)
        使用指定的从属和目标主体创建新的 DelegationPermission
        参数
        principals - 从属和目标主体的名称
        actions - 应为null。
        异常
        NullPointerException - 如果 principalsnull
        IllegalArgumentException - 如果 principals为空。
    • 方法详细信息

      • implies

        public boolean implies​(Permission p)
        检查此Kerberos委派权限对象是否“隐含”指定的权限。

        如果此DelegationPermission等于p ,则此方法返回true,否则返回false。

        重写:
        implies在类 BasicPermission
        参数
        p - 要检查的权限。
        结果
        如果此对象隐含指定的权限,则返回true,否则返回false。
      • equals

        public boolean equals​(Object obj)
        检查两个DelegationPermission对象是否相等。
        重写:
        equalsBasicPermission
        参数
        obj - 要测试与此对象是否相等的对象。
        结果
        如果 obj是DelegationPermission,并且具有与此DelegationPermission对象相同的从属和服务主体, obj true。
        另请参见:
        Object.hashCode()HashMap
      • newPermissionCollection

        public PermissionCollection newPermissionCollection()
        返回用于存储DelegationPermission对象的PermissionCollection对象。
        DelegationPermission对象必须以允许它们以任何顺序插入集合的方式存储,但这也使PermissionCollection的方法能够以有效(和一致)的方式实现。
        重写:
        newPermissionCollection在类 BasicPermission
        结果
        适用于存储DelegationPermissions的新PermissionCollection对象。