JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.security.auth
Ŭ·¡½º Subject

java.lang.Object 
  |
  +--javax.security.auth.Subject
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
Serializable

public final class Subject
extends Object
implements Serializable

Subject ´Â °³ÀεîÀÇ ´ÜÀÏ ¿£Æ¼Æ¼¿¡ °üÇÑ °ü·Ã Á¤º¸¸¦ ±×·ìÈ­ ÇÑ °ÍÀÔ´Ï´Ù. ÀÌ·± Á¾·ùÀÇ Á¤º¸¿¡´Â Subject ÀÇ ½Äº° Á¤º¸³ª, ½ÃÅ¥·¯Æ¼ °ü·ÃÀÇ ¼Ó¼º (ÆÐ½º¿öµå³ª ¾Ïȣȭ¿­¼èµî)ÀÌ Æ÷ÇԵ˴ϴÙ.

Subject ¿¡´Â ÀáÀçÀûÀ¸·Î º¹¼öÀÇ ½Äº° Á¤º¸°¡ ÀÖ½À´Ï´Ù. °¢°¢ÀÇ ½Äº° Á¤º¸´Â Subject ³»ÀÇ Principal ·Î ³ªÅ¸³»Áý´Ï´Ù. Principal ´Â ´ÜÁö À̸§À» Subject ¿¡ ¹ÙÀεå Çϰí ÀÖÀ» »ÓÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Alice ¶ó°í ÇÏ´Â °³ÀÎÀÇ Subject ¿¡´Â Alice ÀÇ ¿îÀü ¸éÇãÁõÀÇ À̸§ ¡¸Alice Bar¡¹°¡ Subject ¿¡ ¹ÙÀεå Çϰí ÀÖ´Â Principal ¿Í Çлý ¹øÈ£ ¡¸999-99-9999¡¹ÀÌ Subject ¿¡ ¹ÙÀεå Çϰí ÀÖ´Â Principal ÀÇ 2 °³°¡ ÀÖ½À´Ï´Ù. ¾î´À ÂÊÀÇ Principal µµ, ´Ù¸¥ À̸§À̾ °°Àº Subject ¸¦ ÂüÁ¶Çϰí ÀÖ½À´Ï´Ù.

¶Ç,Subject ¿¡´Â ÀÚ°ÝÀ¸·Î¼­ ÂüÁ¶µÇ´Â ½ÃÅ¥·¯Æ¼ °ü·ÃÀÇ ¼Ó¼ºµµ ÀÖ½À´Ï´Ù. ºñ°ø°³ÀÇ ¾Ïȣȭ¿­¼è µî, Ưº°ÇÑ º¸È£¸¦ ÇÊ¿ä·Î ÇÏ´Â Áß¿äÇÑ ÀÚ°ÝÀº ºñ°ø°³ ÀÚ°Ý Set ³»¿¡ ÀúÀåµË´Ï´Ù. °ø°³¿­¼è Áõ¸í¼­³ª Kerberos ¼­¹ö ƼÄÏÀÌ °ø°³ ÀÚ°Ý Set ¿¡ ÀúÀåµÇµµ·Ï(µíÀÌ), ÀÚ°ÝÀº °øÀ¯µÇ´Â °ÍÀ» ¸ñÀûÀ¸·Î Çϰí ÀÖ½À´Ï´Ù. ´Ù¸¥ ÀÚ°Ý Set ¿¡ ¾×¼¼½º ÇØ º¯°æÇÏ·Á¸é , ´Ù¸¥ ¾×¼¼½º±ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù.

Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ´ø ¸ðµç Principal ¸¦ ÃëµæÇÏ·Á¸é ,getPrincipals ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. Subject ¿¡ ¼ÓÇÏ´Â °ø°³ ¶Ç´Â ºñ°ø°³ÀÇ ÀÚ°ÝÀ» ¸ðµÎ ÃëµæÇÏ·Á¸é ,getPublicCredentials ¸Þ¼Òµå³ª getPrivateCredentials ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. µ¹·ÁÁÖ¾îÁø Principal ¿Í ÀÚ°ÝÀÇ Set ¸¦ º¯°æÇÏ·Á¸é ,Set Ŭ·¡½º¿¡¼­ Á¤Àǵǰí ÀÖ´Â ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.

	Subject subject;
	Principal principal;
	Object credential;

	// add a Principal and credential to the Subject
	subject.getPrincipals(). add(principal);
	subject.getPublicCredentials(). add(credential);
 

ÀÌ Subject Ŭ·¡½º´Â Serializable ¸¦ ±¸ÇöÇÕ´Ï´Ù. Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ´Â Á÷·ÄÈ­ µË´Ï´Ù¸¸,Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø ÀÚ°ÝÀº Á÷·ÄÈ­ µÇÁö ¾Ê½À´Ï´Ù. java.security.Principal Ŭ·¡½º´Â Serializable ¸¦ ±¸ÇöÇϰí ÀÖ½À´Ï´Ù. ±× ¶§¹®¿¡, Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ´ø ±¸Ã¼ÀûÀÎ Principal ±¸ÇöÀº ¸ðµÎ,Serializable ¸¦ ±¸ÇöÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

°ü·Ã Ç׸ñ:
Principal , DomainCombiner , Á÷·ÄÈ­ µÈ Çü½Ä

»ý¼ºÀÚÀÇ °³¿ä
Subject ()
          Principal ÀÇ ÇÏ´ÃÀÇ Set ¿Í °ø°³ ÀÚ°Ý ¹× ºñ°ø°³ ÀÚ°ÝÀÇ ÇÏ´ÃÀÇ Set ·Î, Subject ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
Subject (boolean readOnly, Set  principals, Set  pubCredentials, Set  privCredentials)
          Principal ÀÇ ÁöÁ¤ÇÑ Set ¿Í ÀÚ°ÝÀ¸·Î,Subject ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 
¸Þ¼ÒµåÀÇ °³¿ä
static Object doAs (Subject  subject, PrivilegedAction  action)
          Æ¯Á¤ÀÇ Subject ·Î¼­ µ¿ÀÛÇÕ´Ï´Ù.
static Object doAs (Subject  subject, PrivilegedExceptionAction  action)
          Æ¯Á¤ÀÇ Subject ·Î¼­ µ¿ÀÛÇÕ´Ï´Ù.
static Object doAsPrivileged (Subject  subject, PrivilegedAction  action, AccessControlContext  acc)
          Æ¯Á¤ÀÇ Subject ·Î¼­ Ư±Ç ÷ºÎ·Î µ¿ÀÛÇÕ´Ï´Ù.
static Object doAsPrivileged (Subject  subject, PrivilegedExceptionAction  action, AccessControlContext  acc)
          Æ¯Á¤ÀÇ Subject ·Î¼­ Ư±Ç ÷ºÎ·Î µ¿ÀÛÇÕ´Ï´Ù.
 boolean equals (Object  o)
          ÁöÁ¤ÇÑ Object °÷ÀÇ Subject °¡ µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ºñ±³ÇÕ´Ï´Ù.
 Set getPrincipals ()
          ÀÌ Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 Set getPrincipals (Class  c)
          ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ, ÀÌ Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 Set getPrivateCredentials ()
          ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â ºñ°ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 Set getPrivateCredentials (Class  c)
          ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ ÀÌ Subject ¿¡ °ü·ÃÇÑ ºñ°ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 Set getPublicCredentials ()
          ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â °ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 Set getPublicCredentials (Class  c)
          ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ ÀÌ Subject ¿¡ °ü·ÃÇÑ °ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.
static Subject getSubject (AccessControlContext  acc)
          ÁöÁ¤ÇÑ AccessControlContext ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Subject ¸¦ ÃëµæÇÕ´Ï´Ù.
 int hashCode ()
          ÀÌ Subject ÀÇ ÇØ½Ã Äڵ带 µ¹·ÁÁÝ´Ï´Ù.
 boolean isReadOnly ()
          ÀÌ Subject °¡ Àоîµé¿© Àü¿ëÀÏÁö ¾î¶³Áö¸¦ ¹®ÀÇÇÕ´Ï´Ù.
 void setReadOnly ()
          ÀÌ Subject ¸¦ Àоîµé¿© Àü¿ëÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.
 String toString ()
          ÀÌ Subject ÀÇ String Ç¥ÇöÀ» µ¹·ÁÁÝ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

»ý¼ºÀÚÀÇ »ó¼¼

Subject

public Subject()
Principal ÀÇ ÇÏ´ÃÀÇ Set ¿Í °ø°³ ÀÚ°Ý ¹× ºñ°ø°³ ÀÚ°ÝÀÇ ÇÏ´ÃÀÇ Set ·Î, Subject ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

»õ·Ó°Ô ±¸ÃàÇÑ Set ¿¡¼­´Â ÀÌÈÄÀÇ º¯°æÀ» Çã°¡Çϱâ Àü¿¡, ÀÌ Subject °¡ Àоîµé¿© Àü¿ëÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´ÂÁö¸¦ È®ÀÎÇÕ´Ï´Ù. »õ·Ó°Ô ÀÛ¼ºÇÑ Set ´Â È£Ãâ Ãø¿¡ ÃæºÐÇÑ ¾×¼¼½º±Ç (¿¹¸¦ µé¾î Principal ÀÇ Set ¸¦ º¯°æÇϱâ À§Çؼ­´Â È£Ãâ Ãø¿¡ AuthPermission("modifyPrincipals") °¡ ¾øÀ¸¸é ¾È µÈ´Ù)°¡ ÀÖ´Â °ÍÀ» ÇÁ·ÎÅØ¼ÇÇÏ´Â °ÍÀ¸·Î, ºÎÁ¤ÇÑ º¯°æÀ¸·ÎºÎÅÍ º¸È£Çϰí ÀÖ½À´Ï´Ù.


Subject

public Subject(boolean readOnly,
               Set  principals,
               Set  pubCredentials,
               Set  privCredentials)
Principal ÀÇ ÁöÁ¤ÇÑ Set ¿Í ÀÚ°ÝÀ¸·Î,Subject ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

ÁöÁ¤ÇÑ Set ¿¡¼­´Â ÀÌÈÄÀÇ º¯°æÀ» Çã°¡Çϱâ Àü¿¡, ÀÌ Subject °¡ Àоîµé¿© Àü¿ëÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´Â °ÍÀ» È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÁöÁ¤ÇÑ Set ´Â È£Ãâ Ãø¿¡ ÃæºÐÇÑ ¾×¼¼½º±ÇÀÌ ÀÖ´Â °ÍÀ» ÇÁ·ÎÅØ¼ÇÇÏ´Â °ÍÀ¸·Î, ºÎÁ¤ÇÑ º¯°æÀ¸·ÎºÎÅÍ º¸È£ÇÏ´Â Àϵµ ÇÊ¿äÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
readOnly - Subject °¡ Àоîµé¿© Àü¿ëÀÇ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

principals - ÀÌ Subject ¿¡ °ü·ÃÁþ´Â Principal ÀÇ Set

pubCredentials - ÀÌ Subject ¿¡ °ü·ÃÁþ´Â °ø°³ ÀÚ°ÝÀÇ Set

privCredentials - ÀÌ Subject ¿¡ °ü·ÃÁþ´Â ºñ°ø°³ ÀÚ°ÝÀÇ Set
¿¹¿Ü:
NullPointerException - ÁöÁ¤ÇÑ principals,pubCredentials,privCredentials ÀÇ ¾î¶² °ÍÀΰ¡°¡ null ÀÇ °æ¿ì
¸Þ¼ÒµåÀÇ »ó¼¼

setReadOnly

public void setReadOnly()
ÀÌ Subject ¸¦ Àоîµé¿© Àü¿ëÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù.

ÀÌ Subject ÀÇ Principal ÀÇ Set ³ª ÀÚ°Ý Set ¿¡ ´ëÇÑ º¯°æ (Ãß°¡³ª »èÁ¦)Àº Çã°¡µÇÁö ¾Ê½À´Ï´Ù. ÀÌ Subject ÀÇ ÀÚ°Ý¿¡ ´ëÇÑ destroy Á¶ÀÛ¸¸ÀÌ Çã°¡µË´Ï´Ù.

±× ÈÄ, Subject ÀÇ Principal ³ª ÀÚ°ÝÀÇ Set ¸¦ º¯°æÇÏ·Á°í Çϸé(ÀÚ),IllegalStateException °¡ ½½·Î¿ì µË´Ï´Ù. ¶Ç,Subject ¸¦ Àоîµé¿© Àü¿ëÀ¸·Î ÇÑ ´ÙÀ½¿¡, Çѹø ´õ ±âÀÔÇÒ ¼ö ÀÖ°Ô ¸®¼ÂÆ® ÇÒ ¼ö ¾ø½À´Ï´Ù.

¿¹¿Ü:
SecurityException - È£Ãâ Ãø¿¡, ÀÌ Subject ¸¦ Àоîµé¿© Àü¿ëÀ¸·Î ¼³Á¤ÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

isReadOnly

public boolean isReadOnly()
ÀÌ Subject °¡ Àоîµé¿© Àü¿ëÀÏÁö ¾î¶³Áö¸¦ ¹®ÀÇÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Subject °¡ Àоîµé¿© Àü¿ëÀÎ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

getSubject

public static Subject  getSubject(AccessControlContext  acc)
ÁöÁ¤ÇÑ AccessControlContext ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Subject ¸¦ ÃëµæÇÕ´Ï´Ù.

AccessControlContext ¿¡, ¸¹Àº Subject °¡ Æ÷ÇԵǴ °æ¿ì°¡ ÀÖ½À´Ï´Ù (³×½ºÆ® µÈ doAs È£Ãâ¿¡ ÀÇÇÑ´Ù). ÀÌ °æ¿ì,AccessControlContext ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø ÃÖ½ÅÀÇ Subject °¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
acc - Subject ¸¦ ÃëµæÇÏ´Â AccessControlContext
¹Ýȯ°ª:
ÀÌ AccessControlContext ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Subject. ÀÌ AccessControlContext ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Subject °¡ ¾ø´Â °æ¿ì´Â null
¿¹¿Ü:
SecurityException - È£Ãâ Ãø¿¡, ÀÌ Subject ¸¦ ÃëµæÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

NullPointerException - ÁöÁ¤ÇÑ AccessControlContext °¡ null ÀÇ °æ¿ì

doAs

public static Object  doAs(Subject  subject,
                          PrivilegedAction  action)
ƯÁ¤ÀÇ Subject ·Î¼­ µ¿ÀÛÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¿¡¼­´Â ÃÖÃÊ·Î ÇöÀçÀÇ Thread ÀÇ AccessControlContext ¸¦ AccessController.getContext ·Î ÃëµæÇØ, ÃëµæÇÑ ¹®¸Æ°ú (ÁöÁ¤ÇÑ Subject ·Î ±¸ÃàÇÑ) »õ·Î¿î SubjectDomainCombiner ¸¦ »ç¿ëÇØ »õ·Î¿î AccessControlContext ¸¦ ÀνºÅϽºÈ­ÇÕ´Ï´Ù. ¸¶Áö¸·À¸·Î,AccessController.doPrivileged ¸¦ È£ÃâÇØ, ÁöÁ¤ÇÑ PrivilegedAction °ú »õ·Ó°Ô ±¸ÃàÇÑ AccessControlContext ¸¦ °Ç³×ÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
subject - ÁöÁ¤ÇÑ action °¡ ½ÇÇàµÉ ¶§ÀÇ Subject. null µµ °¡´É

action - ÁöÁ¤ÇÑ Subject ·Î¼­ ½ÇÇàµÇ´Â ÄÚµå

¹Ýȯ°ª:
PrivilegedAction ÀÇ run ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö´Â Object
¿¹¿Ü:
NullPointerException - PrivilegedAction °¡ null ÀÇ °æ¿ì

SecurityException - È£Ãâ Ãø¿¡, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

doAs

public static Object  doAs(Subject  subject,
                          PrivilegedExceptionAction  action)
                   throws PrivilegedActionException 
ƯÁ¤ÀÇ Subject ·Î¼­ µ¿ÀÛÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå¿¡¼­´Â ÃÖÃÊ·Î ÇöÀçÀÇ Thread ÀÇ AccessControlContext ¸¦ AccessController.getContext ·Î ÃëµæÇØ, ÃëµæÇÑ ¹®¸Æ°ú (ÁöÁ¤ÇÑ Subject ·Î ±¸ÃàÇÑ) »õ·Î¿î SubjectDomainCombiner ¸¦ »ç¿ëÇØ »õ·Î¿î AccessControlContext ¸¦ ÀνºÅϽºÈ­ÇÕ´Ï´Ù. ¸¶Áö¸·À¸·Î,AccessController.doPrivileged ¸¦ È£ÃâÇØ, ÁöÁ¤ÇÑ PrivilegedExceptionAction ¿Í »õ·Ó°Ô ±¸ÃàÇÑ AccessControlContext ¸¦ °Ç³×ÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
subject - ÁöÁ¤ÇÑ action °¡ ½ÇÇàµÉ ¶§ÀÇ Subject. null µµ °¡´É

action - ÁöÁ¤ÇÑ Subject ·Î¼­ ½ÇÇàµÇ´Â ÄÚµå

¹Ýȯ°ª:
PrivilegedExceptionAction ÀÇ run ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö´Â Object
¿¹¿Ü:
PrivilegedActionException - PrivilegedExceptionAction.run °¡ üũ ¿¹¿Ü¸¦ ½½·Î¿ì ÇßÀ» °æ¿ì

NullPointerException - ÁöÁ¤ÇÑ PrivilegedExceptionAction °¡ null ÀÇ °æ¿ì

SecurityException - È£Ãâ Ãø¿¡, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

doAsPrivileged

public static Object  doAsPrivileged(Subject  subject,
                                    PrivilegedAction  action,
                                    AccessControlContext  acc)
ƯÁ¤ÀÇ Subject ·Î¼­ Ư±Ç ÷ºÎ·Î µ¿ÀÛÇÕ´Ï´Ù.

ÀÌ ¸Þ¼ÒµåÀÇ µ¿ÀÛÀº ÇöÀçÀÇ Thread ÀÇ AccessControlContext ¸¦ ÃëµæÇÏ´Â ´ë½Å¿¡, ÁöÁ¤ÇÑ AccessControlContext ¸¦ »ç¿ëÇÏ´Â Á¡À» Á¦¿ÜÇØ,Subject.doAs ¿Í °°½À´Ï´Ù. ÁöÁ¤ÇÑ AccessControlContext °¡ null ÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â »õ·Î¿î AccessControlContext ¸¦ ProtectionDomain ÀÇ ÇÏ´ÃÀÇ ÄÝ·º¼ÇÀ¸·Î ÀνºÅϽºÈ­ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
subject - ÁöÁ¤ÇÑ action °¡ ½ÇÇàµÉ ¶§ÀÇ Subject. null µµ °¡´É

action - ÁöÁ¤ÇÑ Subject ·Î¼­ ½ÇÇàµÇ´Â ÄÚµå

acc - ÁöÁ¤ÇÑ subject ¿Í action ¸¦ ¹­À» ¼ö ÀÖ°í ÀÖ´Â AccessControlContext

¹Ýȯ°ª:
PrivilegedAction ÀÇ run ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö´Â Object
¿¹¿Ü:
NullPointerException - PrivilegedAction °¡ null ÀÇ °æ¿ì

SecurityException - È£Ãâ Ãø¿¡, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

doAsPrivileged

public static Object  doAsPrivileged(Subject  subject,
                                    PrivilegedExceptionAction  action,
                                    AccessControlContext  acc)
                             throws PrivilegedActionException 
ƯÁ¤ÀÇ Subject ·Î¼­ Ư±Ç ÷ºÎ·Î µ¿ÀÛÇÕ´Ï´Ù.

ÀÌ ¸Þ¼ÒµåÀÇ µ¿ÀÛÀº ÇöÀçÀÇ Thread ÀÇ AccessControlContext ¸¦ ÃëµæÇÏ´Â ´ë½Å¿¡, ÁöÁ¤ÇÑ AccessControlContext À» »ç¿ëÇÏ´Â Á¡À» Á¦¿ÜÇØ,Subject.doAs ¿Í °°°Ô µË´Ï´Ù. ÁöÁ¤ÇÑ AccessControlContext °¡ null ÀÇ °æ¿ì, ÀÌ ¸Þ¼Òµå´Â »õ·Î¿î AccessControlContext ¸¦ ProtectionDomain ÀÇ ÇÏ´ÃÀÇ ÄÝ·º¼ÇÀ¸·Î ÀνºÅϽºÈ­ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
subject - ÁöÁ¤ÇÑ action °¡ ½ÇÇàµÉ ¶§ÀÇ Subject. null µµ °¡´É

action - ÁöÁ¤ÇÑ Subject ·Î¼­ ½ÇÇàµÇ´Â ÄÚµå

acc - ÁöÁ¤ÇÑ subject ¿Í action ¸¦ ¹­À» ¼ö ÀÖ°í ÀÖ´Â AccessControlContext

¹Ýȯ°ª:
PrivilegedExceptionAction ÀÇ run ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö´Â Object
¿¹¿Ü:
PrivilegedActionException - PrivilegedExceptionAction.run °¡ üũ ¿¹¿Ü¸¦ ½½·Î¿ì ÇßÀ» °æ¿ì

NullPointerException - ÁöÁ¤ÇÑ PrivilegedExceptionAction °¡ null ÀÇ °æ¿ì

SecurityException - È£Ãâ Ãø¿¡, ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì

getPrincipals

public Set  getPrincipals()
ÀÌ Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù. °¢ Principal ´Â ÀÌ Subject ÀÇ ½Äº° Á¤º¸¸¦ ³ªÅ¸³À´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ Principal ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀÇ Principal ÀÇ Set ¿¡µµ ¿µÇâÀ» ÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ÀÇ Set

getPrincipals

public Set  getPrincipals(Class  c)
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ, ÀÌ Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ Principal ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö°í ÀÖÁö ¾Ê½À´Ï´Ù. ¸Þ¼Òµå È£ÃâÇÒ °Í¿¡, »õ·Î¿î Set °¡ ÀÛ¼ºµÇ¾î µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀûÀÎ Principal ÀÇ Set ¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
c - µ¹·ÁÁÖ¾îÁö´Â Principal ÀÇ Set ´Â ¸ðµÎ ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº°¡ µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽºÀÎ Principal ÀÇ Set
¿¹¿Ü:
NullPointerException - ÁöÁ¤ÇÑ Class °¡ null ÀÇ °æ¿ì

getPublicCredentials

public Set  getPublicCredentials()
ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â °ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ °ø°³ Credential ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀûÀÎ °ø°³ Credential ÀÇ Set ¿¡µµ ¿µÇâÀ» ÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â °ø°³ ÀÚ°ÝÀÇ Set

getPrivateCredentials

public Set  getPrivateCredentials()
ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â ºñ°ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ ºñ°ø°³ Credential ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀûÀÎ ºñ°ø°³ Credential ÀÇ Set ¿¡µµ ¿µÇâÀ» ÁÝ´Ï´Ù.

È£ÃâÃø¿¡¼­´Â µ¹·ÁÁÖ¾îÁö´Â Set ÀÇ Credential ¿¡ ¾×¼¼½ºÇϱâ À§ÇÑ ±ÇÇÑ, ¶Ç´Â Set ÀÚü¸¦ º¯°æÇϱâ À§ÇÑ ¾×¼¼½º±ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù. È£Ãâ Ãø¿¡ ÀûÀýÇÑ ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì´Â SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

Set ¸¦ ¹Ýº¹ ó¸® ÇÒ ¶§, È£Ãâ Ãø¿¡ ƯÁ¤ÀÇ Credential ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì´Â SecurityException °¡ ½½·Î¿ì µË´Ï´Ù. ±× °æ¿ì¿¡¼­µµ,Iterator ´Â Set ÀÇ ´ÙÀ½ÀÇ ¿ä¼Ò¿¡ 󸮸¦ ÁøÇà½Ãŵ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Subject °¡ º¸°ü À¯ÁöÇÏ´Â ºñ°ø°³ ÀÚ°ÝÀÇ Set

getPublicCredentials

public Set  getPublicCredentials(Class  c)
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ ÀÌ Subject ¿¡ °ü·ÃÇÑ °ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ °ø°³ Credential ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁöÁö ¾Ê½À´Ï´Ù. °¢ ¸Þ¼ÒµåÀÇ È£Ãâ¿¡ ´ëÇØ¼­, »õ·Î¿î Set °¡ ÀÛ¼ºµÇ¾î µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀûÀÎ °ø°³ Credential ÀÇ Set ¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
c - µ¹·ÁÁÖ¾îÁö´Â °ø°³ ÀÚ°ÝÀÇ Set ´Â ¸ðµÎ ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº°¡ µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽºÀÎ °ø°³ ÀÚ°ÝÀÇ Set
¿¹¿Ü:
NullPointerException - ÁöÁ¤ÇÑ Class °¡ null ÀÇ °æ¿ì

getPrivateCredentials

public Set  getPrivateCredentials(Class  c)
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽº ¶Ç´Â ¼­ºê Ŭ·¡½ºÀÎ ÀÌ Subject ¿¡ °ü·ÃÇÑ ºñ°ø°³ ÀÚ°ÝÀÇ Set ¸¦ µ¹·ÁÁÝ´Ï´Ù.

È£Ãâ Ãø¿¡´Â ¿ä±¸ÇÑ Credential ¸ðµÎ¿¡ ´ëÇÑ ¾×¼¼½º±ÇÀÌ ¾øÀ¸¸é ¾ÈµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

µ¹·ÁÁÖ¾îÁö´Â Set ´Â ÀÌ Subject ÀÇ ³»ºÎÀûÀÎ ºñ°ø°³ Credential ÀÇ Set ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁöÁö ¾Ê½À´Ï´Ù. °¢ ¸Þ¼ÒµåÀÇ È£Ãâ¿¡ ´ëÇØ¼­, »õ·Î¿î Set °¡ ÀÛ¼ºµÇ¾î µ¹·ÁÁÖ¾îÁý´Ï´Ù. µ¹·ÁÁÖ¾îÁø Set ¿¡ ´ëÇÑ º¯°æÀº ³»ºÎÀûÀÎ ºñ°ø°³ Credential ÀÇ Set ¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
c - µ¹·ÁÁÖ¾îÁö´Â ºñ°ø°³ Credential ÀÇ Set ´Â ¸ðµÎ ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽº°¡ µÈ´Ù
¹Ýȯ°ª:
ÁöÁ¤ÇÑ Class ÀÇ ÀνºÅϽºÀÎ ºñ°ø°³ ÀÚ°ÝÀÇ Set
¿¹¿Ü:
NullPointerException - ÁöÁ¤ÇÑ Class °¡ null ÀÇ °æ¿ì

equals

public boolean equals(Object  o)
ÁöÁ¤ÇÑ Object °÷ÀÇ Subject °¡ µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ºñ±³ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ ¿ÀºêÁ§Æ®°¡ Subject À̸ç, 2 °³ÀÇ Subject ÀνºÅϽº°¡ µî°¡ÀÎ °æ¿ì¿¡ true ¸¦ µ¹·ÁÁÝ´Ï´Ù. º¸´Ù Á¤È®ÇϰԴ Principal ÀÇ Set ¿Í Credential ÀÇ Set °¡ µ¿ÀÏÇÑ °æ¿ì¿¡, 2 °³ÀÇ Subject ÀνºÅϽº´Â µ¿ÀÏÇØÁý´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ equals
ÆÄ¶ó¹ÌÅÍ:
o - ÀÌ Subject ¿Í µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ºñ±³ÇÏ´Â Object
¹Ýȯ°ª:
ÁöÁ¤µÈ Object °¡ ÀÌ Subject ¿Í µ¿ÀÏÇÑ °æ¿ì´Â true
¿¹¿Ü:
SecurityException - È£Ãâ Ãø¿¡ ÀÌ Subject ÀÇ ºñ°ø°³ ÀÚ°Ý¿¡ÀÇ ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì, ȤÀº È£Ãâ Ãø¿¡ ÁöÁ¤ÇÑ Subject ÀÇ ºñ°ø°³ ÀÚ°Ý¿¡ÀÇ ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì
°ü·Ã Ç׸ñ:
Object.hashCode() , Hashtable

toString

public String  toString()
ÀÌ Subject ÀÇ String Ç¥ÇöÀ» µ¹·ÁÁÝ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ Subject ÀÇ String Ç¥Çö

hashCode

public int hashCode()
ÀÌ Subject ÀÇ ÇØ½Ã Äڵ带 µ¹·ÁÁÝ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ hashCode
¹Ýȯ°ª:
ÀÌ Subject ÀÇ ÇØ½Ã ÄÚµå
¿¹¿Ü:
SecurityException - È£Ãâ Ãø¿¡ ÀÌ Subject ÀÇ ºñ°ø°³ ÀÚ°Ý¿¡ÀÇ ¾×¼¼½º±ÇÀÌ ¾ø´Â °æ¿ì
°ü·Ã Ç׸ñ:
Object.equals(java.lang.Object) , Hashtable

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ À־ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.