JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.security
Ŭ·¡½º Permission

java.lang.Object 
  |
  +--java.security.Permission
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
Guard , Serializable
Á÷°èÀÇ ±âÁ¸ÀÇ ¼­ºê Ŭ·¡½º:
AllPermission , BasicPermission , FilePermission , PrivateCredentialPermission , ServicePermission , SocketPermission , UnresolvedPermission

public abstract class Permission
extends Object
implements Guard , Serializable

system resource¿¡ÀÇ ¾×¼¼½º¸¦ Ç¥ÇöÇÏ´Â Ãß»ó Ŭ·¡½ºÀÔ´Ï´Ù. ¸ðµç ¾×¼¼½º±ÇÀº ƯÁ¤ÀÇ Permission ¼­ºê Ŭ·¡½ºÀÇ ½Ã¸àƽ½º¸¦ Á¤ÀÇÇϱâ À§ÇÑ Ãß»ó ±â´ÉÀ» °¡Áö´Â °Í ¿Ü¿¡ ±¸ÇöÀ» ¼­ºê Ŭ·¡½º¿¡ ÀÇÁ¸ÇÏ´Â À̸§À» °¡Áý´Ï´Ù.

´ëºÎºÐÀÇ Permission ¿ÀºêÁ§Æ®´Â ¶Ç, ¿ÀºêÁ§Æ®¿¡ Çã°¡µÇ°í ÀÖ´Â ¾×¼ÇÀ» ÅëÁöÇÏ´Â ¾×¼Ç ¸®½ºÆ®¸¦ Æ÷ÇÔÇÕ´Ï´Ù. ¿¹¸¦ µé¾î java.io.FilePermission ¿ÀºêÁ§Æ®¿¡¼­´Â ¾×¼¼½º±ÇÀÇ À̸§Àº ÆÄÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ ÆÐ½º¸íÀ¸·Î, ¾×¼Ç ¸®½ºÆ® (Àоîµé¿©, ±âÀÔµî)´Â ÁöÁ¤µÈ ÆÄÀÏ, ¶Ç´Â µð·ºÅ丮³»ÀÇ ÆÄÀÏ¿¡ ¾î´À ¾×¼ÇÀÌ Çã°¡µÇ°í ÀÖ´ÂÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¾×¼Ç ¸®½ºÆ®´Â ±×·¯ÇÑ ¸®½ºÆ®¸¦ ÇÊ¿ä·Î ÇÏÁö ¾Ê´Â java.lang.RuntimePermission µîÀÇ Permission ¿ÀºêÁ§Æ®¿¡¼­´Â ¿É¼ÇÀÔ´Ï´Ù. À¯Àú´Â À̸§ ÷ºÎÀÇ ¾×¼¼½º±Ç (system.exit µî)À» °¡Áö´Â °æ¿ì¿Í °¡ÁöÁö ¾Ê´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.

°¢ ¼­ºê Ŭ·¡½º¿¡ ÀÇÇØ ±¸ÇöÇØ¾ß ÇÒ Áß¿äÇÑ ¸Þ¼Òµå´Â Permissions ¸¦ ºñ±³ÇÏ´Â implies ¸Þ¼ÒµåÀÔ´Ï´Ù. ±âº»ÀûÀ¸·Î, ¡¸permission p1 ´Â permission p2 ¸¦ Æ÷ÇÔ ÇÑ´Ù¡¹¶õ, permission p1 °¡ Çã°¡µÇ¾úÀ» °æ¿ì¿¡´Â permission p2 µµ ´ç¿¬È÷ Çã°¡µÈ´Ù°í ÇÏ´Â °ÍÀÔ´Ï´Ù. µû¶ó¼­, À̰ÍÀº Àû¼º Å×½ºÆ®´Â ¾Æ´Ï°í, ºÎºÐÁýÇÕ Å×½ºÆ®ÀÔ´Ï´Ù.

Permission ¿ÀºêÁ§Æ®´Â ÇÑ ¹ø ÀÛ¼ºÇϸé(ÀÚ) ºÒº¯ÀÌ µÈ´Ù°í ÇÏ´Â Á¡¿¡¼­´Â String ¿ÀºêÁ§Æ®¿Í ´à¾Æ ÀÖ½À´Ï´Ù. ¼­ºê Ŭ·¡½º´Â ÇÑ ¹ø ÀÛ¼ºµÈ ¾×¼¼½º±Ç »óŸ¦ º¯°æÇÒ ¼ö ÀÖ´Â ¸Þ¼Òµå¸¦ Á¦°øÇÒ ¼ö ¾ø½À´Ï´Ù.

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

»ý¼ºÀÚÀÇ °³¿ä
Permission (String  name)
          ÁöÁ¤µÈ À̸§À¸·Î ¾×¼¼½º±ÇÀ» ±¸ÃàÇÕ´Ï´Ù.
 
¸Þ¼ÒµåÀÇ °³¿ä
 void checkGuard (Object  object)
          ¾×¼¼½º±ÇÀÇ °¡À̵å ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÕ´Ï´Ù.
abstract  boolean equals (Object  obj)
          2 °³ÀÇ Permission ¿ÀºêÁ§Æ®°¡ µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
abstract  String getActions ()
          ¾×¼ÇÀ» String ·Î µ¹·ÁÁÝ´Ï´Ù.
 String getName ()
          Permission ÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù.
abstract  int hashCode ()
          Permission ¿ÀºêÁ§Æ®ÀÇ ÇØ½Ã ÄÚµåÄ¡¸¦ µ¹·ÁÁÝ´Ï´Ù.
abstract  boolean implies (Permission  permission)
          ÀÌ ¿ÀºêÁ§Æ®ÀÇ ¾×¼Ç¿¡ ÀÇÇØ, ÁöÁ¤µÈ ¾×¼¼½º±ÇÀÇ ¾×¼ÇÀÌ Æ÷ÇÔ µÉÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 PermissionCollection newPermissionCollection ()
          ÁöÁ¤µÈ Permission ¿ÀºêÁ§Æ®ÀÇ ÇÏ´ÃÀÇ PermissionCollection ¸¦ µ¹·ÁÁÝ´Ï´Ù.
 String toString ()
          Permission ¸¦ ±â¼úÇϴ ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

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

Permission

public Permission(String  name)
ÁöÁ¤µÈ À̸§À¸·Î ¾×¼¼½º±ÇÀ» ±¸ÃàÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
name - ÀÛ¼ºÇÏ´Â Permission ¿ÀºêÁ§Æ®ÀÇ À̸§
¸Þ¼ÒµåÀÇ »ó¼¼

checkGuard

public void checkGuard(Object  object)
                throws SecurityException 
¾×¼¼½º±ÇÀÇ °¡À̵å ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÕ´Ï´Ù. SecurityManager.checkPermission ¸Þ¼Òµå°¡ ºÒ·Á °¡ ÀÌ ¾×¼¼½º±Ç ¿ÀºêÁ§Æ®¸¦ °Ë»ç ´ë»óÀ¸·Î ÇØ °Ç³×ÁÝ´Ï´Ù. ¾×¼¼½º°¡ Çã°¡µÇ¸é(ÀÚ), ¾Æ¹«°Íµµ ½Ç½ÃÇÏÁö ¾Ê°í º¹±ÍÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â SecurityException ¸¦ ½½·Î¿ì ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Guard ³»ÀÇ checkGuard
ÆÄ¶ó¹ÌÅÍ:
object - °¡À̵尡 ÀÖ´Â ¿ÀºêÁ§Æ® (ÇöÀç´Â ¹«½Ã)
¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì¿¡, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkPermission ¸Þ¼Òµå°¡ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾ÊÀ» ¶§
°ü·Ã Ç׸ñ:
Guard , GuardedObject , SecurityManager.checkPermission(java.security.Permission)

implies

public abstract boolean implies(Permission  permission)
ÀÌ ¿ÀºêÁ§Æ®ÀÇ ¾×¼Ç¿¡ ÀÇÇØ, ÁöÁ¤µÈ ¾×¼¼½º±ÇÀÇ ¾×¼ÇÀÌ Æ÷ÇÔ µÉÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.

Permission ¿ÀºêÁ§Æ®¿¡ ½Ã¸àƽ½º¸¦ ºÎ°úÇÒ ¼ö°¡ ÀÖ´Â °ÍÀº Permission ÀÇ ¼­ºê Ŭ·¡½º »ÓÀ̹ǷÎ, ÀÌ ¸Þ¼Òµå´Â ±×·¯ÇÑ ¼­ºê Ŭ·¡½º¿¡ ÀÇÇØ ±¸ÇöµÇÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.

implies ¸Þ¼Òµå´Â AccessController ¿¡ ÀÇÇØ »ç¿ëµË´Ï´Ù. ÇöÀç ½ÇÇàÁßÀÇ ¹®¸ÆÀ¸·Î À¯È¿ÇÏ´Ù¶ó°í ÇÏ´Â °ÍÀÌ ¾Ë°í ÀÖ´Â ´Ù¸¥ ¾×¼¼½º±Ç¿¡ ÀÇÇØ, ¿ä±¸µÈ ¾×¼¼½º±ÇÀÌ Æ÷ÇÔ µÇ°í ÀÖ´ÂÁö ¾î¶²Áö¸¦, ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇØ Á¶»çÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
permission - üũ ´ë»óÀÇ ¾×¼¼½º±Ç
¹Ýȯ°ª:
ÁöÁ¤µÈ ¾×¼¼½º±ÇÀÌ ÀÌ ¿ÀºêÁ§Æ®¿¡ Æ÷ÇԵǴ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

equals

public abstract boolean equals(Object  obj)
2 °³ÀÇ Permission ¿ÀºêÁ§Æ®°¡ µ¿ÀÏÇÑÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.

¾×¼¼½º Á¦¾î¸¦ °áÁ¤Çϴµ¥ equals ¸Þ¼Òµå´Â »ç¿ëÇÏÁö ¸»¾Æ ÁÖ¼¼¿ä. ´ë½Å¿¡ implies ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ equals
ÆÄ¶ó¹ÌÅÍ:
obj - ÀÌ ¿ÀºêÁ§Æ®¿Í µ¿ÀÏÇÑÁö ¾î¶²Áö°¡ ÆÇÁ¤µÇ´Â ¿ÀºêÁ§Æ®
¹Ýȯ°ª:
2 °³ÀÇ Permission ¿ÀºêÁ§Æ®°¡ µ¿ÀÏÇÑ °æ¿ì´Â true
°ü·Ã Ç׸ñ:
Object.hashCode() , Hashtable

hashCode

public abstract int hashCode()
Permission ¿ÀºêÁ§Æ®ÀÇ ÇØ½Ã ÄÚµåÄ¡¸¦ µ¹·ÁÁÝ´Ï´Ù.

ÀÌÇÏ¿¡, Permission ¿ÀºêÁ§Æ®ÀÇ ÇÊ¿äÇÑ hashCode µ¿ÀÛÀ» ³ªÅ¸³À´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ hashCode
¹Ýȯ°ª:
ÀÌ ¿ÀºêÁ§Æ®ÀÇ ÇØ½Ã ÄÚµåÄ¡
°ü·Ã Ç׸ñ:
Object.equals(java.lang.Object) , Hashtable

getName

public final String  getName()
Permission ÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù. ¿¹¸¦ µé¾î java.io.FilePermission ÀÇ °æ¿ì´Â À̸§Àº ÆÐ½º¸íÀÌ µË´Ï´Ù.

¹Ýȯ°ª:
Permission ÀÇ À̸§

getActions

public abstract String  getActions()
¾×¼ÇÀ» String ·Î µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº abstract ¸Þ¼ÒµåÀ̹ǷÎ, Çʿ伺ÀÌ »ý±æ ¶§±îÁö ¼­ºê Ŭ·¡½º´Â String Ç¥ÇöÀÇ ÀÛ¼ºÀ» Áö¿¬ ½Ãų ¼ö°¡ ÀÖ½À´Ï´Ù. ¼­ºê Ŭ·¡½º´Â Ç×»ó, Ç¥ÁØ Çü½ÄÀ̶ó°í º¸´Â Çü½Ä¿¡¼­ ¾×¼ÇÀ» µ¹·ÁÁÖÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ¿¹¸¦ µé¾î, 2 °³ÀÇ FilePermission ¿ÀºêÁ§Æ®´Â ÀÌÇÏÀÇ ¹æ¹ýÀ¸·Î ÀÛ¼ºµË´Ï´Ù.
   perm1 = new FilePermission(p1,"read, write");
   perm2 = new FilePermission(p2,"write, read"); 
 
getActions ¸Þ¼Òµå°¡ ºÒ·Á °¡¸é(ÀÚ), ¾î´ÀÂÊÀ̳ª "read, write" ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
Permission ÀÇ ¾×¼Ç

newPermissionCollection

public PermissionCollection  newPermissionCollection()
ÁöÁ¤µÈ Permission ¿ÀºêÁ§Æ®ÀÇ ÇÏ´ÃÀÇ PermissionCollection ¸¦ µ¹·ÁÁÝ´Ï´Ù. ´Ù¸¸, Á¤ÀÇ ³¡³­ °ÍÀÌ ¾ø´Â °æ¿ì´Â null ¸¦ µ¹·ÁÁÝ´Ï´Ù. PermissionCollection.implies ¸Þ¼Òµå°¡ ºÒ·Á °¬À» ¶§¿¡, ¿Ã¹Ù¸¥ ½Ã¸àƽ½º¸¦ Á¦°øÇϱâ À§Çؼ­, ƯÁ¤ÀÇ PermissionCollection ¿ÀºêÁ§Æ®¿¡ ±× ¾×¼¼½º±ÇÀ» ÀúÀåÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì, Permission Ŭ·¡½ºÀÇ ¼­ºê Ŭ·¡½º´Â ÀÌ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇÕ´Ï´Ù. null °¡ µ¹·ÁÁÖ¾îÁ³À» °æ¿ì, ÀÌ ¸Þ¼ÒµåÀÇ È£ÃâÃøÀº ÀÌ Á¾·ùÀÇ ¾×¼¼½º±ÇÀ», ¼±ÅÃÇÏ´Â ¾î´À PermissionCollection ¿¡ ´ëÇØ¼­µµ ÀÚÀ¯·Ó°Ô ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù (Hashtable ¸¦ »ç¿ëÇÏ´Â °Í, Vector ¸¦ »ç¿ëÇÏ´Â °Í µî).

¹Ýȯ°ª:
ÀÌ Á¾·ùÀÇ Permission ÀÇ ½Å±Ô PermissionCollection ¿ÀºêÁ§Æ®. Á¤ÀÇ ³¡³­ °ÍÀÌ ¾ø´Â °æ¿ì´Â null

toString

public String  toString()
Permission ¸¦ ±â¼úÇϴ ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. ±Ô¾à¿¡¼­´Â Ŭ·¡½º¸í, ¾×¼¼½º±ÇÀÇ À̸§, ¾×¼ÇÀ», '("ClassName" "name" "actions")'¶ó°í ÇÏ´Â Çü½Ä¿¡¼­ ÁöÁ¤ÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ Permission ¿¡ ´ëÇÑ Á¤º¸

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.