JavaTM 2 Platform
Standard Ed. 5.0

org.ietf.jgss
Ŭ·¡½º GSSManager

java.lang.Object 
  »óÀ§¸¦ È®Àå org.ietf.jgss.GSSManager

public abstract class GSSManager
extends Object

ÀÌ Å¬·¡½º´Â ´Ù¸¥ Áß¿äÇÑ GSS-API Ŭ·¡½ºÀÇ ÆÑÅ丮·Î¼­ ±â´ÉÇØ, Áö¿ø µÇ°í ÀÖ´Â µµ±¸¿¡ °üÇÑ Á¤º¸µµ Á¦°øÇÕ´Ï´Ù. ¶ÇÇÑ, GSSName, GSSCredential, GSSContext ¶ó°í ÇÏ´Â 3°³ÀÇ GSS-API ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϴ Ŭ·¡½ºÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. °Ô´Ù°¡ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µµ±¸ ÀÇ À϶÷ ¹× °¢ µµ±¸°¡ Áö¿ø ÇÏ°í ÀÖ´Â À̸§ÇüÀ» Á¶È¸Çϱâ À§ÇÑ ¸Þ¼­µåµµ »ðÀԵǾî ÀÖ½À´Ï´Ù.

µðÆúÆ®ÀÇ GSSManager ¼­ºê Ŭ·¡½º´Â static ¸Þ¼­µå getInstance¸¦ »ç¿ëÇØ ÀνºÅϽºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. µðÆúÆ® ÀÌ¿ÜÀÇ GSSManager ¼­ºê Ŭ·¡½º´Â ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ ÀÓÀÇ¿¡ ÀνºÅϽºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù. µðÆúÆ®ÀÇ GSSManagerÀνºÅϽº¿¡¼­´Â Kerberos v5 µî, ¸ðµç GSS-API µµ±¸°¡ Áö¿ø µË´Ï´Ù. Kerberos v5 µµ±¸´Â OID ¡¸1.2. 840.113554. 1.2. 2¡¹(À¸)·Î¼­ ½Äº°µÇ¾î RFC 1964¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù.

GSSManager Ãß»ó Ŭ·¡½ºÀÇ È®ÀåÀ¸·Î¼­ ÀÛ¼ºÇÑ ¼­ºê Ŭ·¡½º´Â ±âÁ¸ÀÇ ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ »ç¾çÀ» ÀÌ¿ëÇÏ´Â ¸ðµâÈ­µÈ ÇÁ·Î¹ÙÀÌ´õ º£À̽ºÃþÀ¸·Î¼­ ±¸ÇöµË´Ï´Ù. GSSManager API¸¦ »ç¿ëÇϸé, ÀÌ·¯ÇÑ ¼­ºê Ŭ·¡½ºÀÇ ±¸Çö¿¡ ´ëÇؼ­ ÇÁ·Î¹ÙÀÌ´õÀÇ ¿ì¼± ¼øÀ§¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÁ·Î¹ÙÀÌ´õ º£À̽ºÀÇ ±¸¼ºÀÌ Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â ¸íÈ®ÇÏ°Ô Á¤ÀÇµÈ ¿¹¿Ü°¡ ¹ß»ý µË´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀ» À̽ÄÇÒ °¡´É¼ºÀÌ ÀÖ´Â °æ¿ì´Â ÀÌ°ÍÀ» ÀνÄÇØ, ¿¹¿Ü¸¦ ijġ ÇÏ´Â °Í¿¡ÀÇÇØ ÀûÀýÈ÷ ȸº¹ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÇÁ·Î¹ÙÀÌ´õÀÇ »ç¿ë ¹æ¹ýÀ¸·Î¼­ ´ÙÀ½ÀÇ 3°³ÀÇ ¹æ¹ýÀ» »óÁ¤ÇÏ°í ÀÖ½À´Ï´Ù.

  1. ¾îÇø®ÄÉÀ̼ÇÀº »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦ °í·ÁÇÏÁö ¾Ê´Â´Ù (µðÆúÆ®)
  2. ¾îÇø®ÄÉÀ̼ÇÀº ƯÁ¤ÀÇ ¶Ç´Â ÀÓÀÇÀÇ µµ±¸¸¦ »ç¿ëÇÒ °æ¿ì¿¡ ¿ì¼±ÀûÀ¸·Î »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦ ¿ä±¸ÇÑ´Ù
  3. ¾îÇø®ÄÉÀ̼ÇÀº ·ÎÄà ±¸¼ºµÈ ÇÁ·Î¹ÙÀÌ´õ¸¦ °¡´ÉÇÑ ÇÑ »ç¿ëÇÑ´Ù. ´Ù¸¸, ¸î°³ÀÇ µµ±¸°¡ Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â ±× ¾îÇø®ÄÉÀÌ¼Ç ÀÚ½ÅÀÇ ÇÁ·Î¹ÙÀÌ´õ¸¦ »ç¿ëÇÑ´Ù

GSSManager Ŭ·¡½º¿¡´Â ÀÌ·¯ÇÑ »ç¿ë ¸ðµå¸¦ À¯È¿ÇÏ°Ô Çϱâ À§Çؼ­ addProviderAtFront ¸Þ¼­µå¿Í addProviderAtEnd ¸Þ¼­µåÀÇ 2°³°¡ ÁغñµÇ¾î ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¸Þ¼­µå¸¦ ½ÇÇàÇϸé, <ÇÁ·Î¹ÙÀÌ´õ, OID> ¶ó°í ÇÏ´Â Æä¾îÀÇ ¼ø¼­ ÷ºÎ ¸®½ºÆ®°¡ ÀÛ¼ºµË´Ï´Ù. °¢ Æä¾î´Â ƯÁ¤ÀÇ OID¿¡ ¿ì¼±ÀûÀ¸·Î »ç¿ëµÇ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦ ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

GSSManager¿¡ ÀÇÇØ ÀÛ¼ºµÈ GSS-API °´Ã¼°£À¸·Î´Â ´ëÈ­¸¦ ÇÕ´Ï´Ù. ÀÌ ¶§, ƯÁ¤ÀÇ µµ±¸¿¡ »ç¿ëµÇ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦, ¸ðµç °´Ã¼·Î »ç¿ëÇØ¾ß ÇÏ´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¾î´À GSSCredential °¡ µµ±¸ m¿¡ »ç¿ëµÇ´Â ÇÁ·Î¹ÙÀÌ´õ p ÀÚ°Ý ¿ä¼Ò·Î ±¸¼ºµÇ¾î ÀÖ´Ù°í ÇÕ´Ï´Ù. ÀÌ ÀÚ°ÝÀº º¸Åë, ÀÌ ÇÁ·Î¹ÙÀÌ´õ p¸¦ »ç¿ëÇÏ´Â GSSContext¿¡ °Ç³×ÁÙ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. À̽ļºÀ» ÃÖ´ëÈ­ÇÏ·Á¸é, ´Ù¸¥ GSSManager ·Î ÀÛ¼ºÇÑ °´Ã¼¸¦ È¥Àç½ÃÅ°Áö ¾Ê´Â °ÍÀ» ÃßõÇÕ´Ï´Ù. °´Ã¼¸¦ ÀÌ¹Ì ÀÛ¼ºÇÑ GSSManager »ó¿¡¼­ addProviderAtFront ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °æ¿ì´Â ÇÒ ¼ö ÀÖ´Â ÇÑ ´Ù¸¥ GSSManager ÀνºÅϽº¸¦ ÀÛ¼ºÇØ ÁÖ¼¼¿ä.

´ÙÀ½ÀÇ Äڵ忹´Â GSSManager »ç¿ë ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.


     GSSManager manager = GSSManager.getInstance();

     Oid krb5Mechanism = new Oid("1.2. 840.113554. 1.2. 2");
     Oid krb5PrincipalNameType = new Oid("1.2. 840.113554. 1.2. 2.1");

     // Identify who the client wishes to be
     GSSName userName = manager.createName("duke", GSSName.NT_USER_NAME);

     // Identify the name of the server.  This uses a Kerberos specific
     // name format.
     GSSName serverName = manager.createName("nfs/foo.sun.com", 
                                             krb5PrincipalNameType);

     // Acquire credentials for the user
     GSSCredential userCreds = manager.createCredential(userName,
                                             GSSCredential.DEFAULT_LIFETIME,
                                             krb5Mechanism,
                                             GSSCredential.INITIATE_ONLY);

     // Instantiate and initialize a security context that will be
     // established with the server
     GSSContext context = manager.createContext(serverName,
                                                krb5Mechanism,
                                                userCreds,
                                                GSSContext.DEFAULT_LIFETIME);
 

¼­¹öÃø¿¡¼­´Â ´ÙÀ½ÀÇ ¼Ò½º°¡ »ç¿ëµË´Ï´Ù.


     // Acquire credentials for the server
     GSSCredential serverCreds = manager.createCredential(serverName, 
                                             GSSCredential.DEFAULT_LIFETIME, 
                                             krb5Mechanism, 
                                             GSSCredential.ACCEPT_ONLY); 
 
     // Instantiate and initialize a security context that will
     // wait for an establishment request token from the client
     GSSContext context = manager.createContext(serverCreds);
 

µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
GSSName, GSSCredential, GSSContext

»ý¼ºÀÚ °³¿ä
GSSManager ()
           
 
¸Þ¼­µå °³¿ä
abstract  void addProviderAtEnd (Provider  p, Oid  mech)
          ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ µµ±¸¸¦ Áö¿øÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ°¡ ¹ß°ßµÇÁö ¾ÊÀ» ¶§¿¡ »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦, GSSManager ·Î ¼³Á¤ÇÕ´Ï´Ù.
abstract  void addProviderAtFront (Provider  p, Oid  mech)
          ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ, Áö¿ø°¡ ÇÊ¿äÇÑ µµ±¸¿¡ ´ëÇؼ­ ƯÁ¤ÀÇ ÇÁ·Î¹ÙÀÌ´õ¸¦ ¿ì¼±ÇØ »ç¿ëÇÏ´Â °ÍÀ» GSSManager ·Î ¼³Á¤ÇÕ´Ï´Ù.
abstract  GSSContext createContext (byte[] interProcessToken)
          ÀÌÀü¿¡ export µÈ ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSContext createContext (GSSCredential  myCred)
          ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·Î ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSContext createContext (GSSName  peer, Oid  mech, GSSCredential  myCred, int lifetime)
          ½ÃÀÛÃø¿¡¼­ ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSCredential createCredential (GSSName  name, int lifetime, Oid [] mechs, int usage)
          º¹¼öÀÇ µµ±¸¿¡ ´ëÇؼ­ ÀÚ°ÝÀ» ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSCredential createCredential (GSSName  name, int lifetime, Oid  mech, int usage)
          µµ±¸ ÀÇ ÀÚ°ÝÀ» 1°³ ¸¸ ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSCredential createCredential (int usage)
          µðÆúÆ®ÀÇ ÀÚ°ÝÀ» ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSName createName (byte[] name, Oid  nameType)
          ÁöÁ¤µÈ À̸§ °ø°£ÀÇ byte ¹è¿­À» GSSName °´Ã¼·Î º¯È¯ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSName createName (byte[] name, Oid  nameType, Oid  mech)
          ÁöÁ¤µÈ À̸§ °ø°£ÀÇ À̸§À» Æ÷ÇÔÇÑ byte ¹è¿­À» GSSName °´Ã¼·Î º¯È¯ÇØ, ±×°ÍÀ» µµ±¸¿¡ ´ëÇؼ­ Ç¥ÁØÈ­ ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSName createName (String  nameStr, Oid  nameType)
          ÁöÁ¤µÈ À̸§ °ø°£ÀÇ Ä³¸¯ÅÍ ¶óÀθíÀ» GSSName °´Ã¼·Î º¯È¯ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
abstract  GSSName createName (String  nameStr, Oid  nameType, Oid  mech)
          ÁöÁ¤µÈ À̸§ °ø°£ÀÇ Ä³¸¯ÅÍ ¶óÀθíÀ» GSSName °´Ã¼·Î º¯È¯ÇØ, ±×°ÍÀ» µµ±¸¿¡ ´ëÇؼ­ Ç¥ÁØÈ­ ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.
static GSSManager getInstance ()
          µðÆúÆ®ÀÇ GSSManager ±¸ÇöÀ» ¸®ÅÏÇÕ´Ï´Ù.
abstract  Oid [] getMechs ()
          ÀÌ GSSManager¸¦ ÅëÇØ GSS-API È£ÃâÃøÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µµ±¸ ÀÇ ¸®½ºÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
abstract  Oid [] getMechsForName (Oid  nameType)
          ÁöÁ¤µÈ À̸§ÇüÀ» Áö¿ø ÇÏ°í ÀÖ´Â µµ±¸ ÀÇ ¸®½ºÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
abstract  Oid [] getNamesForMech (Oid  mech)
          ÁöÁ¤µÈ µµ±¸°¡ Áö¿ø ÇÏ°í ÀÖ´Â À̸§ÇüÀ» ¸®ÅÏÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

GSSManager

public GSSManager()
¸Þ¼­µåÀÇ »ó¼¼

getInstance

public static GSSManager  getInstance()
µðÆúÆ®ÀÇ GSSManager ±¸ÇöÀ» ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
GSSManager ±¸Çö

getMechs

public abstract Oid [] getMechs()
ÀÌ GSSManager¸¦ ÅëÇØ GSS-API È£ÃâÃøÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µµ±¸ ÀÇ ¸®½ºÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. getInstance() ¸Þ¼­µå·ÎºÎÅÍ ¸®ÅÏµÈ µðÆúÆ®ÀÇ GSSManager ¸®½ºÆ®¿¡´Â OID ¡¸1.2. 840.113554. 1.2. 2¡¹°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ÀÌ OID´Â RFC 1964¿¡ Á¤Àǵǰí ÀÖ´Â Kerberos v5 GSS-API µµ±¸ ÀÇ ½Äº° ID ÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µµ±¸¿¡ ´ëÀÀÇÏ´Â Oid °´Ã¼ÀÇ ¹è¿­. ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µµ±¸°¡ ¾ø´Â °æ¿ì (¿¹¸¦ µé¾î µµ±¸°¡ µ¿ÀûÀ¸·Î ±¸¼ºµÇ±â ¶§¹®¿¡ ±× ½ÃÁ¡¿¡¼­´Â ÀνºÅçµÇ¾î ÀÖÁö ¾ÊÀº µî)´Â null°ªÀÌ ¸®ÅϵȴÙ

getNamesForMech

public abstract Oid [] getNamesForMech(Oid  mech)
                               throws GSSException 
ÁöÁ¤µÈ µµ±¸°¡ Áö¿ø ÇÏ°í ÀÖ´Â À̸§ÇüÀ» ¸®ÅÏÇÕ´Ï´Ù.

µðÆúÆ®ÀÇ GSSManager ÀνºÅϽº¿¡¼­´Â Kerberos v5 µµ±¸°¡ Áö¿ø µË´Ï´Ù. ÀÌ µµ±¸ ( ¡¸1.2. 840.113554. 1.2. 2¡¹)À» ÁöÁ¤ÇßÀ» °æ¿ì´Â Àû¾îµµ GSSName.NT_HOSTBASED_SERVICE, GSSName.NT_EXPORT_NAME ¹× Kerberos v5 °íÀ¯ÀÇ OID ¡¸1.2. 840.113554. 1.2. 2.1¡¹À» Æ÷ÇÔÇÑ À̸§Çü ¸®½ºÆ®°¡ ¸®Åϵ˴ϴ٠. OID ¡¸1.2. 840.113554. 1.2. 2.1¡¹ÀÇ À̸§ °ø°£Àº RFC 1964 ·Î Á¤Àǵǰí ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
mech - Á¶È¸ÇÏ´Â µµ±¸ ÀÇ OID
¹Ýȯ°ª:
ÀÌ µµ±¸°¡ Áö¿ø ÇÏ°í ÀÖ´Â À̸§Çü¿¡ ´ëÀÀÇÏ´Â Oid °´Ã¼ÀÇ ¹è¿­
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_MECH ¹× GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getMechsForName(Oid)

getMechsForName

public abstract Oid [] getMechsForName(Oid  nameType)
ÁöÁ¤µÈ À̸§ÇüÀ» Áö¿ø ÇÏ°í ÀÖ´Â µµ±¸ ÀÇ ¸®½ºÆ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÁöÁ¤µÈ À̸§ÇüÀÌ GSSName.NT_HOSTBASED_SERVICE, GSSName.NT_EXPORT_NAME, ¶Ç´Â ¡¸1.2. 840.113554. 1.2. 2.1¡¹ÀÇ ¸î°³ÀÇ °æ¿ì, ÀÌ ¸®½ºÆ®¿¡´Â Ç×»ó Kerberos v5 µµ±¸ ( ¡¸1.2. 840.113554. 1.2. 2¡¹)ÀÌ Æ÷ÇԵ˴ϴÙ.

ÆĶó¹ÌÅÍ:
nameType - °Ë»ö ´ë»óÀÇ À̸§ÇüÀÇ OID
¹Ýȯ°ª:
ÁöÁ¤µÈ À̸§ÇüÀ» Áö¿ø ÇÏ°í ÀÖ´Â µµ±¸¿¡ ´ëÀÀÇÏ´Â Oid °´Ã¼ÀÇ ¹è¿­. ÁöÁ¤µÈ À̸§ÇüÀ» Áö¿ø ÇÏ°í ÀÖ´Â µµ±¸°¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì´Â nullÀÌ ¸®ÅϵÈ
°ü·Ã Ç׸ñ:
getNamesForMech(Oid)

createName

public abstract GSSName  createName(String  nameStr,
                                   Oid  nameType)
                            throws GSSException 
ÁöÁ¤µÈ À̸§ °ø°£ÀÇ Ä³¸¯ÅÍ ¶óÀθíÀ» GSSName °´Ã¼·Î º¯È¯ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÀÛ¼ºµÈ GSSName °´Ã¼¿¡´Â º¸Åë, º¹¼öÀÇ À̸§ Ç¥Çö (Áö¿ø µÇ°í ÀÖ´Â µµ±¸ ¸¶´Ù 1°³ ¾¿)ÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ´Ù¸¸, À̸§ °ø°£ÀÇ ÇüÅ ÆĶó¹ÌÅÍ¿¡ NT_EXPORT_NAME°¡ ÁöÁ¤µÇ°í ÀÖÀ» ¶§, ¶Ç´Â ÀÌ GSS-API ±¸ÇöÀÌ º¹¼ö µµ±¸°¡ ¾Æ´Ñ °æ¿ì µîÀº ¿¹¿ÜÀÔ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â NT_EXPORT_NAME Çü¿¡´Â »ç¿ëÇÏÁö ¸»¾Æ ÁÖ¼¼¿ä. ÀÌÀü¿¡ export µÈ À̸§ÀÌ ÀÓÀÇÀÇ ¹ÙÀÌÆ®·Î ±¸¼ºµÇ´Â °æ¿ì, ±× À̸§À» String ·Î¼­ Ç¥ÇöÇϸé, ¹®ÀÚ ÀÎÄÚµù ¹æ½ÄÀÇ ¹®Á¦°¡ ¹ß»ýÇÏ´Â °ÍÀÌ Àֱ⠶§¹®¿¡ÀÔ´Ï´Ù. ÀÌ·¯ÇÑ À̸§À» º¯È¯ÇÏ´Â °æ¿ì´Â ÀÌ ¸Þ¼­µå¸¦ overload ÇÑ createName¿¡ ±×·¯ÇÑ ¹ÙÀÌÆ®¸¦ Á÷Á¢ °Ç³×ÁÖ´Â °ÍÀ» ÃßõÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
nameStr - ÀÛ¼ºÇÏ´Â À̸§ÀÇ ÇÁ¸°Æ® °¡´É Çü½ÄÀ» ³ªÅ¸³»´Â ij¸¯ÅÍ ¶óÀÎ
nameType - ÁöÁ¤µÈ ÇÁ¸°Æ® °¡´É¸íÀÇ À̸§ °ø°£À» ÁöÁ¤ÇÏ´Â OID. nameStr¸¦ °Ë»çÇÒ °æ¿ì¿¡ °¢ µµ±¸ °íÀ¯ÀÇ µðÆúÆ®ÀÇ ÇÁ¸°Æ® °¡´É ±¸¹®À» »ç¿ëÇÏ´Â °æ¿ì´Â nullÀ» ÁöÁ¤ÇÑ´Ù. À̸§Çü NT_EXPORT_NAME´Â °¡´ÉÇÑ ÇÑ »ç¿ëÇÏÁö ¾Ê´Â´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ ÁÖü¸¦ ³ªÅ¸³»´Â GSSName
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSName, GSSName.NT_EXPORT_NAME

createName

public abstract GSSName  createName(byte[] name,
                                   Oid  nameType)
                            throws GSSException 
ÁöÁ¤µÈ À̸§ °ø°£ÀÇ byte ¹è¿­À» GSSName °´Ã¼·Î º¯È¯ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÀÛ¼ºµÈ GSSName °´Ã¼¿¡´Â º¸Åë, º¹¼öÀÇ À̸§ Ç¥Çö (Áö¿ø µÇ°í ÀÖ´Â µµ±¸ ¸¶´Ù 1°³ ¾¿)ÀÌ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ´Ù¸¸, À̸§ °ø°£ÀÇ ÇüÅ ÆĶó¹ÌÅÍ¿¡ NT_EXPORT_NAME°¡ ÁöÁ¤µÇ°í ÀÖÀ» ¶§, ¶Ç´Â ÀÌ GSS-API ±¸ÇöÀÌ º¹¼ö µµ±¸°¡ ¾Æ´Ñ °æ¿ì µîÀº ¿¹¿ÜÀÔ´Ï´Ù. °Ç³×¹Þ´Â ¹ÙÀÌÆ®´Â ÁöÁ¤µÈ À̸§Çü¿¡ ¼±Åõǰí ÀÖ´Â ÀÎÄÚµù ¹æ½ÄÀ¸·Î ÀÀÇØ, ºÎÇÏÀÇ °¢ µµ±¸¿¡ ÀÇÇØ Çؼ®µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - ÀÛ¼ºÇÏ´Â À̸§À» Æ÷ÇÔÇÑ byte ¹è¿­
nameType - byte ¹è¿­·Î ÁöÁ¤µÈ À̸§ÀÇ À̸§ °ø°£À» ³ªÅ¸³»´Â OID. byte ¹è¿­À» °Ë»çÇÒ °æ¿ì¿¡ °¢ µµ±¸ °íÀ¯ÀÇ µðÆúÆ®ÀÇ ±¸¹®ÀÌ »ç¿ëÇÏ´Â °æ¿ì´Â nullÀ» ÁöÁ¤ÇÑ´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ ÁÖü¸¦ ³ªÅ¸³»´Â GSSName
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSName, GSSName.NT_EXPORT_NAME

createName

public abstract GSSName  createName(String  nameStr,
                                   Oid  nameType,
                                   Oid  mech)
                            throws GSSException 
ÁöÁ¤µÈ À̸§ °ø°£ÀÇ Ä³¸¯ÅÍ ¶óÀθíÀ» GSSName °´Ã¼·Î º¯È¯ÇØ, ±×°ÍÀ» µµ±¸¿¡ ´ëÇؼ­ Ç¥ÁØÈ­ ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. Áï, ÀÌ ¸Þ¼­µå´Â createName ¸Þ¼­µå¸¦ È£ÃâÇÏ°í ³ª¼­ GSSName.canonicalize ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °æ¿ì¿Í °°Àº 󸮸¦ ½ÇÇàÇÏ´Â À¯Æ¿¸®Æ¼ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
nameStr - ÀÛ¼ºÇÏ´Â À̸§ÀÇ ÇÁ¸°Æ® °¡´É Çü½ÄÀ» ³ªÅ¸³»´Â ij¸¯ÅÍ ¶óÀÎ
nameType - ÁöÁ¤µÈ ÇÁ¸°Æ® °¡´É¸íÀÇ À̸§ °ø°£À» ÁöÁ¤ÇÏ´Â OID. nameStr¸¦ °Ë»çÇÒ °æ¿ì¿¡ °¢ µµ±¸ °íÀ¯ÀÇ µðÆúÆ®ÀÇ ÇÁ¸°Æ® °¡´É ±¸¹®À» »ç¿ëÇÏ´Â °æ¿ì´Â nullÀ» ÁöÁ¤ÇÑ´Ù. À̸§Çü NT_EXPORT_NAME´Â °¡´ÉÇÑ ÇÑ »ç¿ëÇÏÁö ¾Ê´Â
mech - µµ±¸¸¦ ³ªÅ¸³»´Â OID. ÀÌ µµ±¸¿¡ ´ëÇؼ­ À̸§ÀÌ Ç¥ÁØÈ­ µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ ÁÖü¸¦ ³ªÅ¸³»´Â GSSName
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSName.canonicalize(Oid), GSSName.NT_EXPORT_NAME

createName

public abstract GSSName  createName(byte[] name,
                                   Oid  nameType,
                                   Oid  mech)
                            throws GSSException 
ÁöÁ¤µÈ À̸§ °ø°£ÀÇ À̸§À» Æ÷ÇÔÇÑ byte ¹è¿­À» GSSName °´Ã¼·Î º¯È¯ÇØ, ±×°ÍÀ» µµ±¸¿¡ ´ëÇؼ­ Ç¥ÁØÈ­ ÇÏ´Â ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. Áï, ÀÌ ¸Þ¼­µå´Â createName ¸Þ¼­µå¸¦ È£ÃâÇÏ°í ³ª¼­ GSSName.canonicalize ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °æ¿ì¿Í °°Àº 󸮸¦ ½ÇÇàÇÏ´Â À¯Æ¿¸®Æ¼ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - ÀÛ¼ºÇÏ´Â À̸§À» Æ÷ÇÔÇÑ byte ¹è¿­
nameType - byte ¹è¿­·Î ÁöÁ¤µÈ À̸§ÀÇ À̸§ °ø°£À» ³ªÅ¸³»´Â OID. byte ¹è¿­À» °Ë»çÇÒ °æ¿ì¿¡ °¢ µµ±¸ °íÀ¯ÀÇ µðÆúÆ®ÀÇ ±¸¹®ÀÌ »ç¿ëÇÏ´Â °æ¿ì´Â nullÀ» ÁöÁ¤ÇÏ´Â
mech - µµ±¸¸¦ ³ªÅ¸³»´Â OID. ÀÌ µµ±¸¿¡ ´ëÇؼ­ À̸§ÀÌ Ç¥ÁØÈ­ µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ ÁÖü¸¦ ³ªÅ¸³»´Â GSSName
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSName.canonicalize(Oid), GSSName.NT_EXPORT_NAME

createCredential

public abstract GSSCredential  createCredential(int usage)
                                        throws GSSException 
µðÆúÆ®ÀÇ ÀÚ°ÝÀ» ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇϸé, µµ±¸, À̸§ ¹× ¼ö¸íÀÇ Æí¼º¿¡ ´ëÇؼ­ ½Ã½ºÅÛ °íÀ¯ÀÇ µðÆúÆ®°¡ »ç¿ëµË´Ï´Ù.

GSS-API µµ±¸ ÇÁ·Î¹ÙÀÌ´õ´Â È£Ãâ Ãø¿¡ ·ÎÄà ¾×¼¼½º Á¦¾î Á¤Ã¥¸¦ Àû¿ëÇÏ´Â °ÍÀ¸·Î½á, ±ÇÇÑÀÌ ¾ø´Â È£ÃâÃøÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº ÀÚ°ÝÀ» ¾ò´Â °ÍÀ» ¹æÁöÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. °¢ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ°¡ ÇÊ¿ä·Î ÇÏ´Â Á¢±Ù ±ÇÇÑÀÇ Á¾·ù´Â µµ±¸ ¸¶´Ù ¹®¼­¿¡ Á¤¸®ÇÏ°í ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇϸé, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

ÆĶó¹ÌÅÍ:
usage - ÀÌ ÀÚ°Ý °´Ã¼ÀÇ »ç¿ë ¸ñÀû. ÀÌ ÆĶó¹ÌÅÍÀÇ °ªÀº, GSSCredential.INITIATE_AND_ACCEPT, GSSCredential.ACCEPT_ONLY, GSSCredential.INITIATE_ONLY ¾ðÁ¨°¡°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
¿ä±¸µÈ ÇüÅÂÀÇ GSSCredential
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.CREDENTIALS_EXPIRED, GSSException.NO_CRED, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSCredential

createCredential

public abstract GSSCredential  createCredential(GSSName  name,
                                               int lifetime,
                                               Oid  mech,
                                               int usage)
                                        throws GSSException 
µµ±¸ ÀÇ ÀÚ°ÝÀ» 1°³ ¸¸ ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù.

GSS-API µµ±¸ ÇÁ·Î¹ÙÀÌ´õ´Â È£Ãâ Ãø¿¡ ·ÎÄà ¾×¼¼½º Á¦¾î Á¤Ã¥¸¦ Àû¿ëÇÏ´Â °ÍÀ¸·Î½á, ±ÇÇÑÀÌ ¾ø´Â È£ÃâÃøÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº ÀÚ°ÝÀ» ¾ò´Â °ÍÀ» ¹æÁöÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. °¢ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ°¡ ÇÊ¿ä·Î ÇÏ´Â Á¢±Ù ±ÇÇÑÀÇ Á¾·ù´Â µµ±¸ ¸¶´Ù ¹®¼­¿¡ Á¤¸®ÇÏ°í ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇϸé, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

µðÆúÆ® ÀÌ¿ÜÀÇ lifetime Ä¡´Â ºÎÇÏÀÇ µµ±¸ ·Î ¹Þ¾ÆµéÀÏ ¼ö ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì, ¾îÇø®ÄÉÀ̼ÇÀº ¸®ÅÏµÈ ÀÚ°Ý¿¡ ´ëÇؼ­ getRemainingLifetime¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - ÀÌ ÀÚ°ÝÀ» ¾ò´Â ÁÖüÀÇ À̸§. µðÆúÆ®ÀÇ ÁÖü¸¦ ÁöÁ¤ÇÏ´Â °æ¿ì´Â nullÀ» »ç¿ëÇÏ´Â
lifetime - ÀÚ°ÝÀÇ ³ª¸ÓÁöÀÇ ¼ö¸í (ÃÊ´ÜÀ§). ÀÚ°ÝÀÇ ¼ö¸íÀ» ¼³Á¤ °¡´ÉÇÑ ÃÖ´ë ±âÇÑÀ¸·Î ÇÏ´Â °ÍÀ» ¿ä±¸ÇÏ·Á¸é, GSSCredential.INDEFINITE_LIFETIME¸¦ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ ¼ö¸íÀ» ¿ä±¸ÇÏ·Á¸é, GSSCredential.DEFAULT_LIFETIME¸¦ »ç¿ëÇÏ´Â
mech - ¸ñÀûÀÇ µµ±¸ ÀÇ OID. µðÆúÆ®ÀÇ µµ±¸¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â (Oid) null ¸¦ »ç¿ëÇÏ´Â
usage - ÀÌ ÀÚ°Ý °´Ã¼ÀÇ »ç¿ë ¸ñÀû. ÀÌ ÆĶó¹ÌÅÍÀÇ °ªÀº, GSSCredential.INITIATE_AND_ACCEPT, GSSCredential.ACCEPT_ONLY, GSSCredential.INITIATE_ONLY ¾ðÁ¨°¡°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
¿ä±¸µÈ ÇüÅÂÀÇ GSSCredential
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.CREDENTIALS_EXPIRED, GSSException.NO_CRED, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSCredential

createCredential

public abstract GSSCredential  createCredential(GSSName  name,
                                               int lifetime,
                                               Oid [] mechs,
                                               int usage)
                                        throws GSSException 
º¹¼öÀÇ µµ±¸¿¡ ´ëÇؼ­ ÀÚ°ÝÀ» ÃëµæÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â ¹è¿­ mechs ·Î ÁöÁ¤µÈ µµ±¸ ¸¶´Ù ÀÚ°ÝÀ» ÃëµæÇÏ·Á°í ÇÕ´Ï´Ù. ÀÚ°ÝÀÇ Ãëµæ¿¡ ¼º°øÇÑ µµ±¸¸¦ È®ÀÎÇÏ·Á¸é, È£ÃâÃø¿¡¼­ GSSCredential.getMechs ¸Þ¼­µå¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

GSS-API µµ±¸ ÇÁ·Î¹ÙÀÌ´õ´Â È£Ãâ Ãø¿¡ ·ÎÄà ¾×¼¼½º Á¦¾î Á¤Ã¥¸¦ Àû¿ëÇÏ´Â °ÍÀ¸·Î½á, ±ÇÇÑÀÌ ¾ø´Â È£ÃâÃøÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº ÀÚ°ÝÀ» ¾ò´Â °ÍÀ» ¹æÁöÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. °¢ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ°¡ ÇÊ¿ä·Î ÇÏ´Â Á¢±Ù ±ÇÇÑÀÇ Á¾·ù´Â µµ±¸ ¸¶´Ù ¹®¼­¿¡ Á¤¸®ÇÏ°í ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇϸé, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

µðÆúÆ® ÀÌ¿ÜÀÇ lifetime Ä¡´Â ºÎÇÏÀÇ µµ±¸ ·Î ¹Þ¾ÆµéÀÏ ¼ö ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì, ¾îÇø®ÄÉÀ̼ÇÀº ¸®ÅÏµÈ ÀÚ°Ý¿¡ ´ëÇؼ­ getRemainingLifetime¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - ÀÌ ÀÚ°ÝÀ» ¾ò´Â ÁÖüÀÇ À̸§. µðÆúÆ®ÀÇ ÁÖü¸¦ ÁöÁ¤ÇÏ´Â °æ¿ì´Â nullÀ» »ç¿ëÇÏ´Â
lifetime - ÀÚ°ÝÀÇ ³ª¸ÓÁöÀÇ ¼ö¸í (ÃÊ´ÜÀ§). ÀÚ°ÝÀÇ ¼ö¸íÀ» ¼³Á¤ °¡´ÉÇÑ ÃÖ´ë ±âÇÑÀ¸·Î ÇÏ´Â °ÍÀ» ¿ä±¸ÇÏ·Á¸é, GSSCredential.INDEFINITE_LIFETIME¸¦ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ ¼ö¸íÀ» ¿ä±¸ÇÏ·Á¸é, GSSCredential.DEFAULT_LIFETIME¸¦ »ç¿ëÇÏ´Â
mechs - ÀÌ ÀÚ°ÝÀ» ¾ò´Â µµ±¸¸¦ ³ªÅ¸³»´Â OID ¹è¿­. ½Ã½ºÅÛ °íÀ¯ÀÇ µðÆúÆ®ÀÇ µµ±¸¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â (Oid[]) nullÀ» »ç¿ëÇÏ´Â
usage - ÀÌ ÀÚ°Ý °´Ã¼ÀÇ »ç¿ë ¸ñÀû. ÀÌ ÆĶó¹ÌÅÍÀÇ °ªÀº, GSSCredential.INITIATE_AND_ACCEPT, GSSCredential.ACCEPT_ONLY, GSSCredential.INITIATE_ONLY ¾ðÁ¨°¡°¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
¿ä±¸µÈ ÇüÅÂÀÇ GSSCredential
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.CREDENTIALS_EXPIRED, GSSException.NO_CRED, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSCredential

createContext

public abstract GSSContext  createContext(GSSName  peer,
                                         Oid  mech,
                                         GSSCredential  myCred,
                                         int lifetime)
                                  throws GSSException 
½ÃÀÛÃø¿¡¼­ ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÀϺÎÀÇ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ÄÁÅؽºÆ®¸¦ ½ÃÀÛÇÏ´Â Á¢±Ù ±ÇÇÑÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

µðÆúÆ® ÀÌ¿ÜÀÇ lifetime Ä¡´Â ºÎÇÏÀÇ µµ±¸ ·Î ¹Þ¾ÆµéÀÏ ¼ö ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì, ¾îÇø®ÄÉÀ̼ÇÀº ¸®ÅÏµÈ ÄÁÅؽºÆ®¿¡ ´ëÇؼ­ getLifetime¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
peer - Ÿ°Ù ÇǾîÀÇ À̸§
mech - ¸ñÀûÀÇ µµ±¸ ÀÇ OID. µðÆúÆ®ÀÇ µµ±¸¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â nullÀ» »ç¿ëÇÏ´Â
myCred - ½ÃÀÛÃøÀÇ ÀÚ°Ý. µðÆúÆ®ÀÇ ½ÃÀÛÃø ÁÖü·Î¼­ ±â´É½ÃÅ°´Â °æ¿ì´Â nullÀ» »ç¿ëÇÏ´Â
lifetime - ÄÁÅؽºÆ®¿¡ ¿ä±¸ÇÏ´Â ¼ö¸í (ÃÊ´ÜÀ§). ÄÁÅؽºÆ® ÀÇ ¼ö¸íÀ» ¼³Á¤ °¡´ÉÇÑ ÃÖ´ë ±â°£À¸·Î ÇÏ´Â °ÍÀ» ¿ä±¸ÇÏ´Â °æ¿ì´Â GSSContext.INDEFINITE_LIFETIME¸¦ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ ¼ö¸íÀ» ¿ä±¸ÇÏ´Â °æ¿ì´Â GSSContext.DEFAULT_LIFETIME¸¦ »ç¿ëÇÑ´Ù
¹Ýȯ°ª:
È®¸³µÇ¾î ÀÖÁö ¾ÊÀº GSSContext
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.NO_CRED, GSSException.CREDENTIALS_EXPIRED, GSSException.BAD_NAMETYPE, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSContext

createContext

public abstract GSSContext  createContext(GSSCredential  myCred)
                                  throws GSSException 
¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·Î ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÄÁÅؽºÆ® ÀÇ ÇÁ·ÎÆÛƼ´Â ¼ö¶ô ¸Þ¼­µå·Î ÁöÁ¤µÈ ÀÔ·Â ÅäÅ«¿¡ ÀÇÇØ Á¤ÇØÁý´Ï´Ù. ÀϺÎÀÇ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ÄÁÅؽºÆ®¸¦ ¹Þ¾ÆµéÀÌ´Â Á¢±Ù ±ÇÇÑÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

ÆĶó¹ÌÅÍ:
myCred - ¹Þ¾Æ µéÀÌ´Â ÂÊÀÇ ÀÚ°Ý. µðÆúÆ®ÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ ÁÖü·Î¼­ ±â´É½ÃÅ°´Â °æ¿ì´Â nullÀ» »ç¿ëÇÑ´Ù
¹Ýȯ°ª:
È®¸³µÇ¾î ÀÖÁö ¾ÊÀº GSSContext
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.NO_CRED, GSSException.CREDENTIALS_EXPIRED, GSSException.BAD_MECH, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSContext

createContext

public abstract GSSContext  createContext(byte[] interProcessToken)
                                  throws GSSException 
ÀÌÀü¿¡ export µÈ ÄÁÅؽºÆ®¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÆÑÅ丮 ¸Þ¼­µåÀÔ´Ï´Ù. ÄÁÅؽºÆ® ÀÇ ÇÁ·ÎÆÛƼ´Â ÀÔ·Â ÅäÅ«¿¡ ÀÇÇØ Á¤ÇØÁý´Ï´Ù. set ¸Þ¼­µå¸¦ »ç¿ëÇØ º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù.

½ÃÅ¥·¯Æ¼ ÄÁÅؽºÆ® ÀÇ ÇÁ·Î¼¼½º°£ Àü¼ÛÀ» ±¸ÇöÀÌ Áö¿øÇÏ´Â °ÍÀº Çʼö°¡ ¾Æ´Õ´Ï´Ù. ÄÁÅؽºÆ®¸¦ export Çϱâ Àü¿¡ GSSContext.isTransferable¸¦ È£ÃâÇϸé, ÄÁÅؽºÆ®¸¦ Àü¼Û °¡´ÉÇÑ°¡ ¾î¶²°¡¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù. ÄÁÅؽºÆ® ÀÇ Àü¼ÛÀ» Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â ±¸ÇöÀ¸·Î ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇϸé, ¿¡·¯ ÄÚµå GSSException.UNAVAILABLE °¡ ¼³Á¤µÈ GSSException°¡ ¹ß»ý µË´Ï´Ù. ÀϺÎÀÇ µµ±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ÄÁÅؽºÆ®¸¦ ½ÃÀÛ ¶Ç´Â ¹Þ¾ÆµéÀÌ´Â Á¢±Ù ±ÇÇÑÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. Á¢±Ù ±ÇÇÑÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼­µå·ÎºÎÅÍ SecurityExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

ÆĶó¹ÌÅÍ:
interProcessToken - ÀÌÀü¿¡ export ¸Þ¼­µå·ÎºÎÅÍ »ý¼ºµÈ ÅäÅ«
¹Ýȯ°ª:
ÀÌÀü¿¡ È®¸³µÈ GSSContext
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.NO_CONTEXT, GSSException.DEFECTIVE_TOKEN, GSSException.UNAVAILABLE, GSSException.UNAUTHORIZED, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSContext

addProviderAtFront

public abstract void addProviderAtFront(Provider  p,
                                        Oid  mech)
                                 throws GSSException 
ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ, Áö¿ø°¡ ÇÊ¿äÇÑ µµ±¸¿¡ ´ëÇؼ­ ƯÁ¤ÀÇ ÇÁ·Î¹ÙÀÌ´õ¸¦ ¿ì¼±ÇØ »ç¿ëÇÏ´Â °ÍÀ» GSSManager ·Î ¼³Á¤ÇÕ´Ï´Ù. Oid´Â ¾Æ´Ï°í null Ä¡¸¦ »ç¿ëÇßÀ» ¶§´Â »ç¿ëÇÏ´Â µµ±¸¿¡ °ü°è¾øÀÌ, ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ°¡ ¿ì¼±ÇØ »ç¿ëµË´Ï´Ù. ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ°¡ ÇÊ¿äÇÑ µµ±¸¸¦ Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì¿¡¸¸, ´Ù¸¥ ÇÁ·Î¹ÙÀÌ´õ°¡ »ç¿ëµË´Ï´Ù.

ÀÌ ¸Þ¼­µå¸¦ ¹Ýº¹ÇØ È£ÃâÇصµ, ÀÌÀüÀÇ ¼³Á¤Àº º¸°ü À¯ÁöµË´Ï´Ù. ´Ù¸¸, ±×·¯ÇÑ ¿ì¼± ¼øÀ§°¡ ³·¾ÆÁ®, ÀÛ¼ºµÈ ÇÁ·Î¹ÙÀÌ´õ¿Í Oid Æä¾îÀÇ ¼ø¼­ ÷ºÎ ¸®½ºÆ®°¡ ÃÖ¿ì¼± µË´Ï´Ù.

Oid¿¡ nullÀ» ÁöÁ¤ÇØ addProviderAtFront¸¦ È£ÃâÇϸé, GSSManager ÀνºÅϽº·Î ÀÌ ÇÁ·Î¹ÙÀÌ´õ·Î ¼³Á¤µÈ ÀÌÀüÀÇ ¿ì¼± ¼øÀ§°¡ ¸ðµÎ »èÁ¦µË´Ï´Ù. Oid¿¡ null ÀÌ¿ÜÀÇ °ªÀ» ÁöÁ¤ÇØ addProviderAtFrontÀ» È£ÃâÇϸé, ÀÌ µµ±¸¿Í ÀÌ ÇÁ·Î¹ÙÀÌ´õ¸¦ »ç¿ëÇØ ¼³Á¤µÈ ÀÌÀüÀÇ ¿ì¼± ¼øÀ§°¡ ¸ðµÎ »èÁ¦µË´Ï´Ù.

GSSManager ±¸ÇöÀÌ Ç÷¯±× ÀÎ °¡´ÉÇÑ ÇÁ·Î¹ÙÀÌ´õ ¾ÆÅ°ÅØÃĸ¦ °®Ãá SPI¸¦ Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì´Â »óÅ ÄÚµå GSSException.UNAVAILABLE°¡ ¼³Á¤µÈ GSSException°¡ Throw µÇ¾î ÀÌ Á¶ÀÛÀ» ÀÌ¿ëÇÒ ¼ö ¾ø´Â °ÍÀÌ ³ªÅ¸³³´Ï´Ù.

¿¹¸¦ µé¾î µµ±¸°¡ ÇÊ¿äÇÑ ¶§´Â ÇÁ·Î¹ÙÀÌ´õ A¸¦ ÃÖÃÊ·Î È®ÀÎÇϵµ·Ï ¼³Á¤ÇÏ·Á¸é, ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÕ´Ï´Ù.


         GSSManager mgr = GSSManager.getInstance();
         // mgr may at this point have its own pre-configured list
         // of provider preferences.  The following will prepend to
         // any such list:

         mgr.addProviderAtFront(A, null);
 
ÀÌÀüÀ¸·Î ¼³Á¤µÈ A¸¦ È®ÀÎÇϱâ Àü¿¡ OID°¡ m1 ÀÎ µµ±¸¸¦ ÇÁ·Î¹ÙÀÌ´õ B ·ÎºÎÅÍ ¾ò´ÂÀÎ °æ¿ì´Â ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÕ´Ï´Ù.


         mgr.addProviderAtFront(B, m1);
 
GSSManager´Â m1°¡ ÇÊ¿äÇÑ °æ¿ì, ¿ì¼± B¸¦ È®ÀÎÇÕ´Ï´Ù. B°¡ m1¸¦ Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì´Â ´ÙÀ½¿¡ A¸¦ È®ÀÎÇÕ´Ï´Ù. µµ±¸ m2°¡ ÇÊ¿äÇØ, m2°¡ m1¿Í ´Ù¸¥ °æ¿ì´Â B¸¦ »ý·«ÀÇÇØ Á÷Á¢ A¸¦ È®ÀÎÇÕ´Ï´Ù.

¿¹¸¦ µé¾î °°Àº GSSManager ÀνºÅϽº¿¡ ´ëÇؼ­ ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÑ´Ù°í ÇÕ´Ï´Ù.


         mgr.addProviderAtFront(B, null)
 
Æä¾î (B, m1)ÀÇ ÀÌÀüÀÇ ¼³Á¤ÀÌ ÀÌ ¼³Á¤¿¡ Æ÷ÇÔ µÇ¾î, »èÁ¦µË´Ï´Ù. ÀÌ °á°ú, ¿ì¼± ¼øÀ§ÀÇ ¸®½ºÆ®´Â {(B, null), (A, null), ... //ÀÌÀüÀ¸·Î ¼³Á¤µÈ ¸®½ºÆ®}°¡ µË´Ï´Ù.

´Ù¸¸, ´ÙÀ½ÀÇ È£Ãâ¿¡´Â ÁÖÀÇÇØ ÁÖ¼¼¿ä.


         mgr.addProviderAtFront(A, m3)
 
ÀÌ È£ÃâÀ» ½ÇÇàÇصµ, ÀÌÀüÀÇ ¼³Á¤ (A, null)À» Æ÷ÇÔ ÇÏÁö ¾Ê°í, ¸®½ºÆ®´Â {(A, m3), (B, null), (A, null), ...} (ÀÌ)°¡ µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
p - mech ·Î ÁöÁ¤ÇÑ µµ±¸ ÀÇ Áö¿ø°¡ ÇÊ¿äÇÑ ¶§¿¡ »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õÀÇ ÀνºÅϽº
mech - ÀÌ ÇÁ·Î¹ÙÀÌ´õ°¡ ¼³Á¤µÇ¾î ÀÖ´Â µµ±¸
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.UNAVAILABLE, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ´Ù

addProviderAtEnd

public abstract void addProviderAtEnd(Provider  p,
                                      Oid  mech)
                               throws GSSException 
ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ µµ±¸¸¦ Áö¿øÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ°¡ ¹ß°ßµÇÁö ¾ÊÀ» ¶§¿¡ »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õ¸¦, GSSManager ·Î ¼³Á¤ÇÕ´Ï´Ù. Oid´Â ¾Æ´Ï°í null °ªÀÌ »ç¿ëÇßÀ» ¶§´Â ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ°¡ ¸ðµç µµ±¸¿¡ »ç¿ëµË´Ï´Ù.

ÀÌ ¸Þ¼­µå¸¦ ¹Ýº¹ÇØ È£ÃâÇصµ, ÀÌÀüÀÇ ¼³Á¤Àº º¸°ü À¯ÁöµË´Ï´Ù. ´Ù¸¸, ±×·¯ÇÑ ¿ì¼± ¼øÀ§´Â »õ·Î¿î ¼³Á¤º¸´Ù ³ô¾ÆÁ®, ÀÛ¼ºµÈ ÇÁ·Î¹ÙÀÌ´õ¿Í Oid Æä¾îÀÇ ¼ø¼­ ÷ºÎ ¸®½ºÆ®ÀÇ ¿ì¼± ¼øÀ§°¡ °¡Àå ³·¾ÆÁý´Ï´Ù. Áï, ÀÌ ¸®½ºÆ®°¡ »ç¿ëµÇ±â Àü¿¡ ¿ì¼± ÀÌÀüÀÇ ÇÁ·Î¹ÙÀÌ´õ ¼³Á¤ÀÌ »ç¿ëµË´Ï´Ù.

ÀÌÀüÀ¸·Î ¼³Á¤ÇÑ ±âÁ¸ÀÇ ¿ì¼± ¼øÀ§¾È¿¡ ¿©±â¼­ ¼³Á¤ÇÏ´Â ¿ì¼± ¼øÀ§¿Í °æÇÕ ÇÏ´Â °ÍÀÌ ÀÖ´Â °æ¿ì, ÀÌ ¿ä±¸´Â ¹«½ÃµË´Ï´Ù.

GSSManager ±¸ÇöÀÌ Ç÷¯±× ÀÎ °¡´ÉÇÑ ÇÁ·Î¹ÙÀÌ´õ ¾ÆÅ°ÅØÃĸ¦ °®Ãá SPI¸¦ Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì´Â »óÅ ÄÚµå GSSException.UNAVAILABLE°¡ ¼³Á¤µÈ GSSException°¡ Throw µÇ¾î ÀÌ Á¶ÀÛÀ» ÀÌ¿ëÇÒ ¼ö ¾ø´Â °ÍÀÌ ³ªÅ¸³³´Ï´Ù.

¿¹¸¦ µé¾î OID°¡ m1 ÀÎ µµ±¸°¡ ÇÊ¿äÇÑ ¶§´Â ½Ã½ºÅÛÀÇ µðÆúÆ® ÇÁ·Î¹ÙÀÌ´õ¸¦ ÃÖÃÊ·Î È®ÀÎÇØ, m1°¡ Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀ» ¶§¿¡¸¸ ÇÁ·Î¹ÙÀÌ´õ A¸¦ È®ÀÎÇÏ´Â °æ¿ì´Â ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÕ´Ï´Ù.


         GSSManager mgr = GSSManager.getInstance();
         mgr.addProviderAtEnd(A, m1);
 
¼³Á¤ÇÑ ÇÁ·Î¹ÙÀÌ´õ¸¦ ¸ðµÎ È®ÀÎÇÏ°í ³ª¼­, ¸ðµç µµ±¸¿¡ ´ëÇØ ÇÁ·Î¹ÙÀÌ´õ B¸¦ È®ÀÎÇÏ´Â °æ¿ì´Â ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÕ´Ï´Ù.


         mgr.addProviderAtEnd(B, null);
 
¿ì¼± ¼øÀ§ÀÇ ¸®½ºÆ®°¡{..., (A, m1), (B, null)}°¡ µË´Ï´Ù.

¿¹¸¦ µé¾î °°Àº GSSManager ÀνºÅϽº¿¡ ´ëÇؼ­ ´ÙÀ½ÀÇ È£ÃâÀ» ½Ç½ÃÇÑ´Ù°í ÇÕ´Ï´Ù.


         mgr.addProviderAtEnd(B, m2)
 
Æä¾î (B, null)ÀÇ ÀÌÀüÀÇ ¼³Á¤ÀÌ ÀÌ ¼³Á¤À» Æ÷ÇÔ ÇØ, ÀÌ ¿ä±¸´Â ¹«½ÃµË´Ï´Ù. ±âÁ¸ÀÇ Æä¾î (A, m1) ¶Ç´Â (B, null)¿¡ ´ëÇؼ­ ¿ä±¸ÇßÀ» °æ¿ìµµ °°Àº °á°ú°¡ µË´Ï´Ù.

´Ù¸¸, ´ÙÀ½ÀÇ È£Ãâ¿¡´Â ÁÖÀÇÇØ ÁÖ¼¼¿ä.


         mgr.addProviderAtEnd(A, null)
 
ÀÌ È£ÃâÀ» ½ÇÇàÇصµ, ÀÌÀüÀÇ ¼³Á¤ (A, m1)¿¡ ÀÇÇØ Æ÷ÇÔ µÇÁö ¾Ê°í, ¸®½ºÆ®´Â {..., (A, m1), (B, null), (A, null)}°¡ µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
p - mech ·Î ÁöÁ¤ÇÑ µµ±¸ ÀÇ Áö¿ø°¡ ÇÊ¿äÇÑ ¶§¿¡ »ç¿ëÇÏ´Â ÇÁ·Î¹ÙÀÌ´õÀÇ ÀνºÅϽº
mech - ÀÌ ÇÁ·Î¹ÙÀÌ´õ°¡ ¼³Á¤µÇ¾î ÀÖ´Â µµ±¸
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.UNAVAILABLE, GSSException.FAILURE¸¦ Æ÷ÇÔÇÑ´Ù

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.