JavaTM 2 Platform
Standard Ed. 5.0

java.security
Ŭ·¡½º SecureClassLoader

java.lang.Object 
  »óÀ§¸¦ È®Àå java.lang.ClassLoader 
      »óÀ§¸¦ È®Àå java.security.SecureClassLoader
¾Ë·ÁÁø Á÷°è ¼­ºê Ŭ·¡½º:
URLClassLoader

public class SecureClassLoader
extends ClassLoader

ÀÌ Å¬·¡½º´Â µðÆúÆ®·Î ½Ã½ºÅÛ Á¤Ã¥¿¡ ÀÇÇØ ÃßÃâµÇ´Â °ü·ÃÇÑ ÄÚµå ¼Ò½º¿Í Á¢±Ù ±ÇÇÑÀ» °¡Áö´Â Ŭ·¡½º¸¦ Á¤ÀÇÇϱâ À§ÇÑ Ãß°¡ Áö¿ø¸¦ »ç¿ëÇØ, ClassLoader¸¦ È®ÀåÇÕ´Ï´Ù.


»ý¼ºÀÚ °³¿ä
protected SecureClassLoader ()
          À§¾çÀ» À§Çؼ­ µðÆúÆ®ÀÇ Ä£Å¬·¡½º ·Î´õ¸¦ »ç¿ëÇØ, »õ·Î¿î SecureClassLoader¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
protected SecureClassLoader (ClassLoader  parent)
          À§¾çÀ» À§Çؼ­ ÁöÁ¤µÈ ģŬ·¡½º ·Î´õ¸¦ »ç¿ëÇØ, »õ·Î¿î SecureClassLoader¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
protected  Class <? > defineClass (String  name, byte[] b, int off, int len, CodeSource  cs)
          ¹ÙÀÌÆ®ÀÇ ¹è¿­À» ¿É¼ÇÀÇ CodeSource¸¦ »ç¿ëÇØ Class Ŭ·¡½ºÀÇ ÀνºÅϽº·Î º¯È¯ÇÕ´Ï´Ù.
protected  Class <? > defineClass (String  name, ByteBuffer  b, CodeSource  cs)
          ByteBuffer¸¦, ¿É¼ÇÀÇ CodeSource¸¦ »ç¿ëÇØ Class Ŭ·¡½ºÀÇ ÀνºÅϽº·Î º¯È¯ÇÕ´Ï´Ù.
protected  PermissionCollection getPermissions (CodeSource  codesource)
          ÁöÁ¤µÈ CodeSource °´Ã¼ÀÇ Á¢±Ù ±ÇÇÑÀ» ¸®ÅÏÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. ClassLoader ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

SecureClassLoader

protected SecureClassLoader(ClassLoader  parent)
À§¾çÀ» À§Çؼ­ ÁöÁ¤µÈ ģŬ·¡½º ·Î´õ¸¦ »ç¿ëÇØ, »õ·Î¿î SecureClassLoader¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkCreateClassLoader ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÀÌ Å¬·¡½º ·Î´õÀÇ ÀÛ¼ºÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
parent - ºÎ¸ðÀÇ ClassLoader
¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ±× checkCreateClassLoader ¸Þ¼­µå°¡ Ŭ·¡½º ·Î´õÀÇ ÀÛ¼ºÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SecurityManager.checkCreateClassLoader()

SecureClassLoader

protected SecureClassLoader()
À§¾çÀ» À§Çؼ­ µðÆúÆ®ÀÇ Ä£Å¬·¡½º ·Î´õ¸¦ »ç¿ëÇØ, »õ·Î¿î SecureClassLoader¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkCreateClassLoader ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÀÌ Å¬·¡½º ·Î´õÀÇ ÀÛ¼ºÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.

¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ±× checkCreateClassLoader ¸Þ¼­µå°¡ Ŭ·¡½º ·Î´õÀÇ ÀÛ¼ºÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SecurityManager.checkCreateClassLoader()
¸Þ¼­µåÀÇ »ó¼¼

defineClass

protected final Class <? > defineClass(String  name,
                                     byte[] b,
                                     int off,
                                     int len,
                                     CodeSource  cs)
¹ÙÀÌÆ®ÀÇ ¹è¿­À» ¿É¼ÇÀÇ CodeSource¸¦ »ç¿ëÇØ Class Ŭ·¡½ºÀÇ ÀνºÅϽº·Î º¯È¯ÇÕ´Ï´Ù. ÃÖÃʷΠŬ·¡½º¸¦ ÇØ°áÇÏÁö ¾ÊÀ¸¸é, Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

nullÀÌ ¾Æ´Ñ CodeSource°¡ Á¦°øµÇ´Â °æ¿ì, ProtectionDomain´Â Á¤ÀÇ ³¡³­ Ŭ·¡½º¿¡¼­ ±¸ÃàµÇ°í °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - Ŭ·¡½ºÀÇ À̸§À¸·Î¼­ ±â´ëÇÏ´Â °Í. ºÒ¸íÇÑ °æ¿ì´Â null. ´Ü¶ô ¹®ÀÚ¿¡´Â ¡¸/¡¹Àº ¾Æ´Ï°í ¡¸.¡¹¸¦ »ç¿ëÇÑ´Ù. Ŭ·¡½º¸íÀÇ µÚÀÇ Á¢¹Ì¸» ¡¸. class¡¹´Â ºÙÀÌÁö ¾Ê´Â
b - Ŭ·¡½º µ¥ÀÌÅ͸¦ ±¸¼ºÇÏ´Â byte. off·Î ºÎÅÍ off+len-1 ±îÁöÀÇ À§Ä¡¿¡ ÀÖ´Â byte´Â Java °¡»ó ¸Ó½Å »ç¾çÀ¸·Î Á¤ÀǵǴ À¯È¿ÇÑ Å¬·¡½º ÆÄÀÏÀÇ Çü½ÄÀ» °¡Áö´Â
off - Ŭ·¡½º µ¥ÀÌÅÍÀÇ b °³½Ã ¿ÀÇÁ¼Â(offset)
len - Ŭ·¡½º µ¥ÀÌÅÍÀÇ ±æÀÌ
cs - °ü·ÃÇÑ CodeSource. Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â null
¹Ýȯ°ª:
µ¥ÀÌÅͷκÎÅÍ ÀÛ¼ºµÈ Class °´Ã¼¿Í ¿É¼ÇÀÇ CodeSource
¿¹¿Ü:
ClassFormatError - µ¥ÀÌÅÍ°¡ À¯È¿ÇÑ Å¬·¡½º¸¦ Æ÷ÇÔÇÏÁö ¾Ê¾Ò´ø °æ¿ì
IndexOutOfBoundsException - off ¶Ç´Â len ¾î´À ÂÊÀÎÁö°¡ ºÎÀÇ °æ¿ì, ¶Ç´Â off+len°¡ b.length º¸´Ù Å« °æ¿ì
SecurityException - ÀÌ Å¬·¡½º°¡ ¾Æ´Ï°í ÀÎÁõ¼­ ÀÇ °³º° ¼¼Æ®¸¦ »ç¿ëÇØ ¼­¸íµÈ Ŭ·¡½º¸¦ Æ÷ÇÔÇÑ ÆÐÅ°Áö¿¡ ÀÌ Å¬·¡½º¸¦ Ãß°¡ÇÏ·Á°í ÇÏ´Â °æ¿ì, ȤÀº Ŭ·¡½º¸íÀÌ ¡¸java¡¹·Î ½ÃÀ۵Ǵ °æ¿ì

defineClass

protected final Class <? > defineClass(String  name,
                                     ByteBuffer  b,
                                     CodeSource  cs)
ByteBuffer¸¦, ¿É¼ÇÀÇ CodeSource¸¦ »ç¿ëÇØ Class Ŭ·¡½ºÀÇ ÀνºÅϽº·Î º¯È¯ÇÕ´Ï´Ù. ÃÖÃʷΠŬ·¡½º¸¦ ÇØ°áÇÏÁö ¾ÊÀ¸¸é, Ŭ·¡½º¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

nullÀÌ ¾Æ´Ñ CodeSource°¡ Á¦°øµÇ´Â °æ¿ì, ProtectionDomain´Â Á¤ÀÇ ³¡³­ Ŭ·¡½º¿¡¼­ ±¸ÃàµÇ°í °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
name - Ŭ·¡½ºÀÇ À̸§À¸·Î¼­ ±â´ëÇÏ´Â °Í. ºÒ¸íÇÑ °æ¿ì´Â null. ´Ü¶ô ¹®ÀÚ¿¡´Â ¡¸/¡¹Àº ¾Æ´Ï°í ¡¸.¡¹¸¦ »ç¿ëÇÑ´Ù. Ŭ·¡½º¸íÀÇ µÚÀÇ Á¢¹Ì¸» ¡¸. class¡¹´Â ºÙÀÌÁö ¾Ê´Â
b - Ŭ·¡½º µ¥ÀÌÅ͸¦ ±¸¼ºÇÏ´Â byte. b.position()·Î ºÎÅÍ b.position() + b.limit() -1 ±îÁöÀÇ À§Ä¡¿¡ ÀÖ´Â byte´Â Java °¡»ó ¸Ó½Å »ç¾çÀ¸·Î Á¤ÀǵǴ À¯È¿ÇÑ Å¬·¡½º ÆÄÀÏÀÇ Çü½ÄÀ» °¡Áö´Â
cs - °ü·ÃÇÑ CodeSource. Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â null
¹Ýȯ°ª:
µ¥ÀÌÅͷκÎÅÍ ÀÛ¼ºµÈ Class °´Ã¼¿Í ¿É¼ÇÀÇ CodeSource
¿¹¿Ü:
ClassFormatError - µ¥ÀÌÅÍ°¡ À¯È¿ÇÑ Å¬·¡½º¸¦ Æ÷ÇÔÇÏÁö ¾Ê¾Ò´ø °æ¿ì
SecurityException - ÀÌ Å¬·¡½º°¡ ¾Æ´Ï°í ÀÎÁõ¼­ ÀÇ °³º° ¼¼Æ®¸¦ »ç¿ëÇØ ¼­¸íµÈ Ŭ·¡½º¸¦ Æ÷ÇÔÇÑ ÆÐÅ°Áö¿¡ ÀÌ Å¬·¡½º¸¦ Ãß°¡ÇÏ·Á°í ÇÏ´Â °æ¿ì, ȤÀº Ŭ·¡½º¸íÀÌ ¡¸java¡¹·Î ½ÃÀ۵Ǵ °æ¿ì
µµÀÔµÈ ¹öÀü :
1.5

getPermissions

protected PermissionCollection  getPermissions(CodeSource  codesource)
ÁöÁ¤µÈ CodeSource °´Ã¼ÀÇ Á¢±Ù ±ÇÇÑÀ» ¸®ÅÏÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â Á¤ÀÇµÈ Å¬·¡½ºÀÇ ProtectionDomain¸¦ ±¸ÃàÇÏ°í ÀÖÀ» ¶§, CodeSource¸¦ Àμö·Î¼­ ÃëÇÏ´Â defineClass ¸Þ¼­µå¿¡ ÀÇÇØ È£ÃâÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
codesource - ÄÚµå ¼Ò½º
¹Ýȯ°ª:
ÄÚµå ¼Ò½º¿¡°Ô ÁÙ ¼ö ÀÖ¾ú´ø Á¢±Ù ±ÇÇÑ

JavaTM 2 Platform
Standard Ed. 5.0

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