public interface GSSName 
      GSSManager类中存在的createName方法之一获取此接口的实现。 
       在概念上,GSSName包含实体或许多原始名称元素的许多表示,每个支持的底层机制一个。 
       在GSS术语中,仅包含一个机制的元素的GSSName称为机制名称(MN) 
        由于不同的身份验证机制可能会使用不同的命名空间来标识其主体,所以GSS-API的命名支持在多机制环境中(或者甚至在底层机制支持多个命名空间的某些单机制环境中)一定是复杂的。 不同的名称格式及其定义标有Oid's和一些标准的类型在这个接口中定义。 名称的格式可以基于其名称类型的唯一Oid派生。 
 下面是使用GSSName接口的代码示例。 下面的代码创建一个GSSName ,将其转换为MN,执行比较,获取名称的可打印表示,将其导出为字节数组,然后重新导入以获取新的GSSName 。 
  GSSManager manager = GSSManager.getInstance();
      // create a host based service name
      GSSName name = manager.createName("service@host",
                   GSSName.NT_HOSTBASED_SERVICE);
      Oid krb5 = new Oid("1.2.840.113554.1.2.2");
      GSSName mechName = name.canonicalize(krb5);
      // the above two steps are equivalent to the following
      GSSName mechName = manager.createName("service@host",
                      GSSName.NT_HOSTBASED_SERVICE, krb5);
      // perform name comparison
      if (name.equals(mechName))
              print("Names are equals.");
      // obtain textual representation of name and its printable
      // name type
      print(mechName.toString() +
                      mechName.getStringNameType().toString());
      // export and re-import the name
      byte [] exportName = mechName.export();
      // create a new name object from the exported buffer
      GSSName newName = manager.createName(exportName,
                      GSSName.NT_EXPORT_NAME);  
      | Modifier and Type | Field and Description | 
|---|---|
| static Oid | NT_ANONYMOUS
              用于表示匿名实体的名称类型。 
             | 
| static Oid | NT_EXPORT_NAME
              用于指示由导出方法生成的导出名称的名称类型。 
             | 
| static Oid | NT_HOSTBASED_SERVICE
              Oid表示基于主机的服务名称形式。 
             | 
| static Oid | NT_MACHINE_UID_NAME
              用于指示与本地系统上的用户对应的数字用户标识符的名称类型。 
             | 
| static Oid | NT_STRING_UID_NAME
              名称类型,用于指示表示本地系统上用户的数字用户标识符的数字字符串。 
             | 
| static Oid | NT_USER_NAME
              用于指示本地系统上的命名用户的名称类型。 
             | 
| Modifier and Type | Method and Description | 
|---|---|
| GSSName | canonicalize(Oid mech)
              创建一个为某种机制规范化的名称。 
             | 
| boolean | equals(GSSName another)
              比较两个 
              GSSName对象,以确定它们是否引用相同的实体。 | 
| boolean | equals(Object another)
              与此相比 
              GSSName对象的另一个对象可能是GSSName。 | 
| byte[] | export()
              返回机制名称(MN)的规范连续字节表示,适用于通过授权功能直接逐字节比较。 
             | 
| Oid | getStringNameType()
              返回可从 
              toString方法获得的该名称的可打印表示的名称类型。 | 
| int | hashCode()
              返回此GSSName的哈希码值。 
             | 
| boolean | isAnonymous()
              测试此名称对象是否表示匿名实体。 
             | 
| boolean | isMN()
              测试此名称对象是否表示机制名称(MN)。 
             | 
| String | toString()
              返回 
              GSSName对象的文本表示。 | 
static final Oid NT_HOSTBASED_SERVICE
 它代表以下Oid值: 
 { iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) service_name(4) } 
static final Oid NT_USER_NAME
 它代表以下Oid值: 
 { iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) user_name(1) } 
static final Oid NT_MACHINE_UID_NAME
 它代表以下Oid值: 
 { iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) machine_uid_name(2) } 
static final Oid NT_STRING_UID_NAME
 它代表以下Oid值: 
 { iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) string_uid_name(3) } 
static final Oid NT_ANONYMOUS
 它代表以下Oid值: 
 { 1(iso), 3(org), 6(dod), 1(internet), 5(security), 6(nametypes), 3(gss-anonymous-name) } 
static final Oid NT_EXPORT_NAME
 它代表以下Oid值: 
 { 1(iso), 3(org), 6(dod), 1(internet), 5(security), 6(nametypes), 4(gss-api-exported-name) } 
boolean equals(GSSName another) throws GSSException
GSSName对象,以确定它们是否引用同一个实体。 
          another - 
            GSSName比较这个名字 
           GSSException -当名称所不能比拟的,包含以下主要错误代码: 
            GSSException.BAD_NAMETYPE , 
            GSSException.FAILURE 
           boolean equals(Object another)
equals在 
            Object 
           another - 将该名称与之对比的对象 
           GSSName ,而这两个名字指的是同一个实体。 
           equals(GSSName) 
           int hashCode()
hashCode在 
            Object 
           Object.equals(java.lang.Object) , 
            System.identityHashCode(java.lang.Object) 
           GSSName canonicalize(Oid mech) throws GSSException
mech - 请求该名称的规范形式的机制的oid。 
           GSSName ,其中只包含一个表示该名称的原始元素,以规范化形式表示所需的机制。 
           GSSException -包含以下主要错误代码: 
            GSSException.BAD_MECH , 
            GSSException.BAD_NAMETYPE , 
            GSSException.BAD_NAME , 
            GSSException.FAILURE 
           byte[] export()
       throws GSSException 
           导出的名称在大型访问控制列表中使用时很有用,其中每个名称上创建GSSName对象的开销以及从ACL中的每个名称调用equals方法可能是禁止的。 
 可以使用字节数组工厂方法GSSManager.createName重新导入导出的名称,并将NT_EXPORT_NAME指定为名称类型对象标识符。 得到的GSSName名称也将是MN。 
GSSException -包含以下主要错误代码: 
            GSSException.BAD_NAME , 
            GSSException.BAD_NAMETYPE , 
            GSSException.FAILURE 
           String toString()
GSSName对象的文本表示。 
           要检索确定返回字符串语法的打印名称格式,请使用getStringNameType方法。 
          Oid getStringNameType() throws GSSException
toString方法获取的该名称的可打印表示的名称类型。 
          GSSException - 包含以下主要错误代码: 
            GSSException.FAILURE 
           boolean isAnonymous()
boolean isMN()
 Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.