-  
       - All Superinterfaces:
-  
         Cloneable
 - All Known Subinterfaces:
-  
         ExtendedGSSCredential
 
 public interface GSSCredential extends Cloneable 此接口封装实体的GSS-API凭据。 凭证包含所有必要的加密信息,以便能够代表其所代表的实体创建上下文。 它可能包含多个不同的机制特定凭证元素,每个元素包含特定安全机制的信息,但都指向同一个实体。 凭证可用于执行上下文启动,接受或两者。使用 GSSManager类中的createCredential方法之一实例化凭据。 创建GSS-API凭证不是为了提供“登录到网络”功能,因为这样的功能将涉及创建新凭证而不仅仅是获取现有凭证的句柄。 包级别描述中的section on credential acquisition描述了如何在Java平台中获取现有凭证。 GSS-API实现必须对呼叫者施加本地访问控制策略,以防止未经授权的呼叫者获取他们无权获得的凭证。应用程序将创建传递所需参数的凭证对象。 然后,应用程序可以使用查询方法来获取有关实例化凭证对象的特定信息。 当不再需要凭证时,应用程序应调用 dispose方法以释放凭证对象持有的任何资源并销毁任何加密敏感信息。此示例代码演示了为特定实体创建GSSCredential实现,查询其字段以及不再需要时的发布: GSSManager manager = GSSManager.getInstance(); // start by creating a name object for the entity GSSName name = manager.createName("myusername", GSSName.NT_USER_NAME); // now acquire credentials for the entity GSSCredential cred = manager.createCredential(name, GSSCredential.ACCEPT_ONLY); // display credential information - name, remaining lifetime, // and the mechanisms it has been acquired over System.out.println(cred.getName().toString()); System.out.println(cred.getRemainingLifetime()); Oid [] mechs = cred.getMechs(); if (mechs != null) { for (int i = 0; i< mechs.length; i++) System.out.println(mechs[i].toString()); } // release system resources held by the credential cred.dispose();
-  
        
       -  
             字段汇总字段 变量和类型 字段 描述 static intACCEPT_ONLY凭证使用标志,请求它仅可用于上下文接受。static intDEFAULT_LIFETIME表示默认凭据生存期的生命周期常量。static intINDEFINITE_LIFETIME表示无限凭证生命周期的生命周期常量。static intINITIATE_AND_ACCEPT凭证使用标志,请求它可用于上下文启动和接受。static intINITIATE_ONLY凭证使用标志,请求它仅可用于上下文启动。
 -  
             方法摘要所有方法 实例方法 抽象方法 变量和类型 方法 描述 voidadd(GSSName name, int initLifetime, int acceptLifetime, Oid mech, int usage)将机制特定凭证元素添加到现有凭证。voiddispose()释放GSSCredential对象可能包含的任何敏感信息。booleanequals(Object another)测试此GSSCredential是否与提供的对象断言相同的实体。Oid[]getMechs()返回此凭据支持的机制列表。GSSNamegetName()检索凭据断言的实体的名称。GSSNamegetName(Oid mech)检索凭证断言的实体的机制名称。intgetRemainingAcceptLifetime(Oid mech)返回凭证保持能够使用指定机制接受安全上下文的生命周期(以秒为单位)。intgetRemainingInitLifetime(Oid mech)返回凭证保持能够使用指定机制启动安全上下文的生命周期(以秒为单位)。intgetRemainingLifetime()返回凭证的剩余生命周期(以秒为单位)。intgetUsage()返回凭据使用模式。intgetUsage(Oid mech)返回特定机制的凭据使用模式。inthashCode()返回此GSSCredential的哈希码值。
 
-  
             
-  
        
       -  
             字段详细信息-  INITIATE_AND_ACCEPTstatic final int INITIATE_AND_ACCEPT 凭证使用标志,请求它可用于上下文启动和接受。- 另请参见:
- 常数字段值
 
 -  INITIATE_ONLYstatic final int INITIATE_ONLY 凭证使用标志,请求它仅可用于上下文启动。- 另请参见:
- 常数字段值
 
 -  ACCEPT_ONLYstatic final int ACCEPT_ONLY 凭证使用标志,请求它仅可用于上下文接受。- 另请参见:
- 常数字段值
 
 -  DEFAULT_LIFETIMEstatic final int DEFAULT_LIFETIME 表示默认凭据生存期的生命周期常量。 该值设置为0。- 另请参见:
- 常数字段值
 
 -  INDEFINITE_LIFETIMEstatic final int INDEFINITE_LIFETIME 表示无限凭证生命周期的生命周期常量。 此值必须设置为Java中的最大整数值 -Integer.MAX_VALUE。- 另请参见:
- 常数字段值
 
 
-  
 -  
             方法详细信息-  disposevoid dispose() throws GSSException释放GSSCredential对象可能包含的任何敏感信息。 应用程序应在不再需要凭据时立即调用此方法,以最大限度地减少维护任何敏感信息的时间。- 异常
-  
              GSSException- 包含以下主要错误代码:GSSException.FAILURE
 
 -  getNameGSSName getName() throws GSSException 检索凭据断言的实体的名称。- 结果
- 表示实体的GSSName
- 异常
-  
              GSSException- 包含以下主要错误代码:GSSException.FAILURE
 
 -  getNameGSSName getName(Oid mech) throws GSSException 检索凭证断言的实体的机制名称。 这等同于调用canonicalize通过的其他形式的返回值getName。- 参数
-  
              mech- 应返回机制名称的机制的Oid。
- 结果
- 表示为所需机制规范化的实体的GSSName
- 异常
-  
              GSSException-包含以下主要错误代码:GSSException.BAD_MECH,GSSException.FAILURE
 
 -  getRemainingLifetimeint getRemainingLifetime() throws GSSException返回凭证的剩余生命周期(以秒为单位)。 剩余生命周期是所有基础机制特定凭证元素中的最小生命周期。- 结果
-  
              此凭据的最小剩余生命周期(秒)。 
              返回值INDEFINITE_LIFETIME表示凭证未过期。 返回值0表示凭证已过期。
- 异常
-  
              GSSException- 包含以下主要错误代码:GSSException.FAILURE
- 另请参见:
-  
              getRemainingInitLifetime(Oid),getRemainingAcceptLifetime(Oid)
 
 -  getRemainingInitLifetimeint getRemainingInitLifetime(Oid mech) throws GSSException 返回凭证保持能够使用指定机制启动安全上下文的生命周期(以秒为单位)。 此方法查询属于指定机制的启动器凭据元素。- 参数
-  
              mech- 应查询其启动器凭据元素的机制的Oid。
- 结果
-  
              此凭证元素生命周期中剩余的秒数。 
              返回值INDEFINITE_LIFETIME表示凭证元素未过期。 返回值0表示凭证元素已过期。
- 异常
-  
              GSSException-包含以下主要错误代码:GSSException.BAD_MECH,GSSException.FAILURE
 
 -  getRemainingAcceptLifetimeint getRemainingAcceptLifetime(Oid mech) throws GSSException 返回凭证保持能够使用指定机制接受安全上下文的生命周期(以秒为单位)。 此方法查询属于指定机制的acceptor凭证元素。- 参数
-  
              mech- 应查询其受体凭证元素的机制的Oid。
- 结果
-  
              此凭证元素生命周期中剩余的秒数。 
              返回值INDEFINITE_LIFETIME表示凭证元素未过期。 返回值0表示凭证元素已过期。
- 异常
-  
              GSSException-包含以下主要错误代码:GSSException.BAD_MECH,GSSException.FAILURE
 
 -  getUsageint getUsage() throws GSSException返回凭据使用模式。 换句话说,它告诉我们该凭证是否可用于启动或接受安全上下文。 它没有告诉我们必须使用哪种机制才能这样做。 预计应用程序将允许GSS-API在调用此方法后选择默认机制。- 结果
- 
               返回值将是一个 
              INITIATE_ONLY,ACCEPT_ONLY和INITIATE_AND_ACCEPT。
- 异常
-  
              GSSException- 包含以下主要错误代码:GSSException.FAILURE
 
 -  getUsageint getUsage(Oid mech) throws GSSException 返回特定机制的凭据使用模式。 换句话说,它告诉我们这个凭证是否可以用于启动或接受具有给定底层机制的安全上下文。- 参数
-  
              mech- 要确定其凭据使用模式的机制的Oid。
- 结果
- 
               返回值将是一个 
              INITIATE_ONLY,ACCEPT_ONLY和INITIATE_AND_ACCEPT。
- 异常
-  
              GSSException-包含以下主要错误代码:GSSException.BAD_MECH,GSSException.FAILURE
 
 -  getMechsOid[] getMechs() throws GSSException - 结果
- 与支持的机制相对应的Oid数组。
- 异常
-  
              GSSException- 包含以下主要错误代码:GSSException.FAILURE
 
 -  addvoid add(GSSName name, int initLifetime, int acceptLifetime, Oid mech, int usage) throws GSSException 将机制特定凭证元素添加到现有凭证。 此方法允许构建凭证,一次一个机制。在创建接受者凭证期间,设想该例程主要由上下文接受者使用,该接受者凭证将与使用不同安全机制的各种客户端一起使用。 此例程将“就地”添加新的凭证元素。 要在新凭据中添加元素,请首先调用 clone以获取此凭据的副本,然后调用其add方法。与往常一样,GSS-API实现必须对呼叫者施加本地访问控制策略,以防止未经授权的呼叫者获取他们无权获得的凭证。 initLifetime和acceptLifetime的非默认值不能始终遵循基础机制,因此呼叫者应准备在凭证上调用 getRemainingInitLifetime和getRemainingAcceptLifetime。- 参数
-  
              name- 要获取此凭证的委托人的名称。 使用null指定默认主体。
-  
              initLifetime- 凭证元素在启动安全上下文时应保持有效的秒数。 使用GSSCredential.INDEFINITE_LIFETIME请求凭据具有此最大允许生命周期。 使用GSSCredential.DEFAULT_LIFETIME为此请求默认凭据生命周期。
-  
              acceptLifetime- 凭证元素在接受安全上下文时应保持有效的秒数。 使用GSSCredential.INDEFINITE_LIFETIME请求凭据具有此最大允许生命周期。 使用GSSCredential.DEFAULT_LIFETIME为此请求默认凭证生命周期。
-  
              mech- 获取凭证的机制。
-  
              usage- 此凭证元素应添加到凭证的使用模式。 此参数的值必须是一个:INITIATE_AND_ACCEPT,ACCEPT_ONLY和INITIATE_ONLY。
- 异常
-  
              GSSException-包含以下主要错误代码:GSSException.DUPLICATE_ELEMENT,GSSException.BAD_MECH,GSSException.BAD_NAMETYPE,GSSException.NO_CRED,GSSException.CREDENTIALS_EXPIRED,GSSException.FAILURE
 
 -  equalsboolean equals(Object another) 测试此GSSCredential是否与提供的对象断言相同的实体。 必须通过相同的机制获取这两个凭证,并且必须引用相同的主体。- 重写:
-  
              equals在类Object
- 参数
-  
              another- 与此相比较的另一个GSSCredential
- 结果
-  
              true如果两个GSSCredentials断言相同的实体; 否则为false。
- 另请参见:
-  
              Object.hashCode(),HashMap
 
 -  hashCodeint hashCode() 返回此GSSCredential的哈希码值。- 重写:
-  
              hashCode在类Object
- 结果
- hashCode值
- 另请参见:
-  
              Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
 
 
-  
 
-