|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjavax.security.auth.Policy
public PermissionCollection getPermissions (java.security.ProtectionDomain pd)¶Ç, ProtectionDomain¿¡´Â ´ÙÀ½ÀÇ »ý¼ºÀÚ°¡ ÀÖ½À´Ï´Ù.
public ProtectionDomain (CodeSource cs, PermissionCollection permissions, ClassLoader loader, Principal[] principals)À̰͵é 2°³ÀÇ API´Â È£Ãâ Ãø¿¡ Principal º£À̽ºÀÇ Permission ¿£Æ®¸®¿ë Policy ¹®ÀǸ¦ ½ÇÇàÇÏ´Â ¼ö´ÜÀ» Á¦°øÇÕ´Ï´Ù.
@Deprecated public abstract class Policy
Subject º£À̽ºÀÇ ½ÂÀÎÀÇ ½Ã½ºÅÛ Á¤Ã¥À» ³ªÅ¸³»´Â abstract Ŭ·¡½ºÀÔ´Ï´Ù. ÀÌ Å¬·¡½ºÀÇ ¼ºê Ŭ·¡½º ±¸Çö¿¡¼´Â Subject º£À̽ºÀÇ ¾×¼¼½º Á¦¾î Policy
¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù.
Policy
°´Ã¼´Â
´ÙÀ½ÀÇ ¹æ¹ýÀ¸·ÎPrincipal
·Î
¼ ½ÇÇàÇϰí ÀÖ´Â Äڵ忡 ºÎ¿©µÈ Permission ¼¼Æ®¸¦ Äõ¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù
.
policy = Policy.getPolicy(); PermissionCollection perms = policy.getPermissions(subject, codeSource);
Policy
°´Ã¼¿¡¼´Â ·ÎÄà Á¤Ã¥¸¦ ÂüÁ¶ÇØ, ÀûÀýÇÑ Permissions
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Permissions
°´Ã¼¿¡´Â ÁöÁ¤ÇÑ subject¿¡ °ü·ÃµÈ
Principal¿¡ ºÎ¿©µÇ¾î ÇÑÆí codeSource ·Î ÁöÁ¤µÈ Äڵ忡 ºÎ¿©µÈ Permission°¡ ÀÖ½À´Ï´Ù.
Policy
¿¡´Â ´ÙÀ½¿¡ ³ªÅ¸³»´Â Á¤º¸°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ ¿¹¿¡¼´Â ´ÜÁö µðÆúÆ®ÀÇ Policy
±¸ÇöÀÇ ±¸¹®À» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù. ÀÌ Å¬·¡½ºÀÇ ¼ºê Ŭ·¡½º ±¸Çö¿¡¼´Â ´Ù¸¥ ±¸¹®À» ±¸ÇöÇÒ ¼öµµ ÀÖ¾î ÆÄÀÏ, µ¥ÀÌŸº£À̽º, ¼¹ö¶ó°í ÇÏ´Â ÀÓÀÇÀÇ ¼Ò½º·ÎºÎÅÍ Policy
¸¦ ÃëµæÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
Policy
°¢ ¿£Æ®¸®´Â grant ¿£Æ®¸®·Î¼ ³ªÅ¸³»Áý´Ï´Ù. °¢ grant ¿£Æ®¸®¿¡¼´Â ÄÚµå º£À̽º, ÄÚµåÀÇ ¼¸íÀÚ ¹× Principal ·ÎºÎÅÍ ¿Ï¼ºµÇ´Â ¼ÂÀÕ´ÜÀ½Ç¥, ±×¸®°í ±× ¼ÂÀÕ´ÜÀ½Ç¥¿¡ ºÎ¿©µÈ PermissionÀ» ÁöÁ¤ÇÕ´Ï´Ù.
grant CodeBase ["URL"], Signedby ["signers"], Principal [Principal_Class] "Principal_Name" { Permission Permission_Class ["Target_Name"] [, "Permission_Actions"] [, signedBy "SignerName"]; };À̸§/Ä¡ Æä¾îÀÇ ¼ÂÀÕ´ÜÀ½Ç¥ °¡¿îµ¥, CodeBase ÄÄÆÛ³ÍÆ®¿Í Signedby ÄÄÆÛ³ÍÆ®´Â »ý·« °¡´ÉÇÕ´Ï´Ù. Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â ÀÓÀÇÀÇ ÄÚµå º£À̽º°¡ ÀÏÄ¡ÇØ, ÀÓÀÇÀÇ ¼¸íÀÚ (¼¸í ¾øÀ½ÀÇ Äڵ带 Æ÷ÇÔÇÑ´Ù)°¡ ÀÏÄ¡ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
grant CodeBase "foo.com", Signedby "foo", Principal com.sun.security.auth.SolarisPrincipal "duke" { permission java.io.FilePermission "/home/duke", "read, write"; };ÀÌ grant ¿£Æ®¸®¿¡¼´Â foo°¡ ¼¸íÇÑ, À̸§ duke
SolarisPrincipal
·Î
½ÇÇàÇϰí ÀÖ´Â foo.com ·ÎºÎÅÍÀÇ Äڵ忡
Permission
°¡ 1°³
ÀÖ´Â °ÍÀ» ÁöÁ¤Çϰí ÀÖ½À´Ï´Ù. ÀÌ Permission
¿¡
¼´Â /home/duke µð·ºÅ丮¿¡ÀÇ ÆÄÀÏÀÇ ÀÐ°í ¾²±â¸¦, ½ÇÇàÇÏ´Â Äڵ忡 Çã¿ëÇÕ´Ï´Ù.
¾î´À Principal
·Î
¡¸½ÇÇࡹÇÏ·Á¸é,
ÄÚµå·Î Subject.doAs(subject, ...)
¸Þ¼µå¸¦ È£ÃâÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ È£ÃâÇϸé, ÁöÁ¤ÇÑ Subject
¿¡ °ü·ÃµÈ ¸ðµç Principal ·Î ÄÚµå´Â ½ÇÇàµË´Ï´Ù. ÀÌ Policy
¹× ÀÌ Policy
¿¡ ºÎ¿©µÈ Permission´Â
Subject.doAs
È£Ãâ ÈÄ¿¡ À¯È¿ÇÏ°Ô µË´Ï´Ù.
1°³ÀÇ grant ¿£Æ®¸®³»¿¡
º¹¼öÀÇ Principal¸¦ ±â¼úÇÒ ¼ö ÀÖ½À´Ï´Ù. grant ¿£Æ®¸®³»·Î ÁöÁ¤µÈ ¸ðµç Principal°¡ Subject.doAs
¿¡
°Ô °Ç³×Áö´Â Subject
¿¡ °ü·ÃµÈ
ÀÎ °æ¿ì¸¸, ÁöÁ¤µÈ Permissions°¡ ±× Subject
¿¡ ºÎ¿©µË´Ï´Ù.
grant Principal com.sun.security.auth.SolarisPrincipal "duke", Principal com.sun.security.auth.SolarisNumericUserPrincipal "0" { permission java.io.FilePermission "/home/duke", "read, write"; permission java.net.SocketPermission "duke.com", "connect"; };ÀÌ ¿£Æ®¸®¿¡¼´Â duke¿Í 0 ¾çÂÊ ¸ðµÎ·Î ½ÇÇàµÇ´Â Äڵ忡 duke Ȩ µð·ºÅ丮³»ÀÇ ÆÄÀÏ¿¡ÀÇ ÀÐ°í ¾²±â Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇØ, ¶ÇÇÑ duke.com ¿¡ÀÇ ¼ÒÄÏ Á¢¼ÓÀ» ½Ç½ÃÇÒ ±Ç¸®¸¦ ºÎ¿©ÇÕ´Ï´Ù.
Principal º£À̽º°¡ ¾Æ´Ñ grant ¿£Æ®¸®´Â ÀÌ Policy
¿¡
¼´Â Çã°¡µÇÁö ¾Ê½À´Ï´Ù. ±× ¶§¹®¿¡
´ÙÀ½ÀÇ grant ¿£Æ®¸®´Â °ÅºÎµË´Ï´Ù.
grant CodeBase "foo.com", Signedby "foo" { permission java.io.FilePermission "/tmp/scratch", "read, write"; };ÀÌ·¯ÇÑ Á¢±Ù ±ÇÇÑÀº
java.security.Policy
¿¡ ±â¼úÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
µðÆúÆ®ÀÇ Policy
±¸ÇöÀº (Java ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ ÆÄÀÏÀÇ) auth.policy.provider ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ¿¡
Èñ¸ÁÇÏ´Â Policy
±¸Çö Ŭ·¡½ºÀÇ ¿ÏÀü ÁöÁ¤¸íÀ» ¼³Á¤ÇÏ´Â °ÍÀ¸·Î½á º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. Java ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ ÆÄÀÏÀº <JAVA_HOME>/lib/security/java.security ¶ó´Â À̸§ÀÇ ÆÄÀÏ¿¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ¿©±â¼, <JAVA_HOME>´Â JDK
ÀνºÅçó µð·ºÅ丮¸¦ ³ªÅ¸³À´Ï´Ù.
»ý¼ºÀÚ °³¿ä | |
---|---|
protected |
Policy ()
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. À¯ÀÏÇÑ »ý¼ºÀÚ ÀÔ´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
abstract PermissionCollection |
getPermissions (Subject subject,
CodeSource cs)
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ÁöÁ¤ÇÑ CodeSource ¿¡ °ü·ÃµÈ
Principal¿¡ ºÎ¿©µÈ Permission¸¦ ÃëµæÇÕ´Ï´Ù. |
static Policy |
getPolicy ()
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ÀνºÅç ³¡³ Policy °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
abstract void |
refresh ()
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. Policy ¸®ÇÁ·¹½¬ ¹× Àç·Îµå¸¦ ½ÇÇàÇÕ´Ï´Ù. |
static void |
setPolicy (Policy policy)
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. ½Ã½ºÅÛ ÀüüÀÇ Policy °´Ã¼¸¦ ¼³Á¤ÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
protected Policy()
¸Þ¼µåÀÇ »ó¼¼ |
---|
public static Policy getPolicy()
AuthPermission("getPolicy")
Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ SecurityManager.checkPermission
À»
È£ÃâÇØ, È£Ãâ Ãø¿¡ Policy °´Ã¼¸¦ ÃëµæÇÒ ¼ö ÀÖ´Â Á¢±Ù ±ÇÇÑÀÌ ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÕ´Ï´Ù.
null
ÀÌ µÇÁö ¾Ê´Â´Ù
SecurityException
- ÇöÀçÀÇ thread°¡ Policy °´Ã¼¸¦ ¾ò´Â Á¢±Ù ±ÇÇÑÀ» °¡ÁöÁö ¾Ê´Â °æ¿ìsetPolicy(javax.security.auth.Policy)
public static void setPolicy(Policy policy)
AuthPermission("setPolicy")
Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ SecurityManager.checkPermission
À»
È£ÃâÇØ, È£Ãâ Ãø¿¡ Policy¸¦ ¼³Á¤ÇÏ´Â Á¢±Ù ±ÇÇÑÀÌ ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÕ´Ï´Ù.
policy
- »õ·Î¿î ½Ã½ºÅÛ Policy °´Ã¼
SecurityException
- ÇöÀçÀÇ thread°¡ Policy¸¦ ¼³Á¤ÇÏ´Â Á¢±Ù ±ÇÇÑÀ» °¡ÁöÁö ¾Ê´Â °æ¿ìgetPolicy()
public abstract PermissionCollection getPermissions(Subject subject, CodeSource cs)
CodeSource
¿¡ °ü·ÃµÈ
Principal¿¡ ºÎ¿©µÈ Permission¸¦ ÃëµæÇÕ´Ï´Ù.
subject
- Subject
. Subject
¿¡ °ü·ÃµÈ
Principal´Â
ÁöÁ¤ÇÑ CodeSource
¿Í
ÇÔ²², ÀÌ ¸Þ¼µå°¡ µ¹·ÁÁÖ´Â Permission¸¦ °áÁ¤Çϱâ À§Çؼ »ç¿ëµÈ´Ù. ÀÌ ÆÄ¶ó¹ÌÅÍ´Â null
µµ °¡´É cs
- CodeSource
°¡ ÁöÁ¤ÇÑ ÄÚµå. CodeSource
´Â
ÁöÁ¤ÇÑ Subject
¿Í
ÇÔ²², ÀÌ ¸Þ¼µå°¡ µ¹·ÁÁÖ´Â Permission¸¦ °áÁ¤Çϱâ À§Çؼ »ç¿ëµÈ´Ù. ÀÌ ÆÄ¶ó¹ÌÅÍ´Â null
µµ °¡´É
Subject
¹× Äڵ忡 ºÎ¿©µÈ Permission
Collectionpublic abstract void refresh()
ÀÌ ¸Þ¼µå´Â ÀÌ °´Ã¼¿¡
ÇöÀçÀÇ Á¤Ã¥
ÀÇ ¸®ÇÁ·¹½¬³ª Àç·Îµå¸¦ ½Ç½ÃÇÏ°Ô ÇÕ´Ï´Ù. À̰ÍÀº ±¸Çö¿¡
ÀÇÁ¸ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î Policy °´Ã¼°¡ ÆÄÀÏ¿¡ Æ÷ÇԵǰí ÀÖ´Â °æ¿ì, refresh
¸¦ È£ÃâÇϸé, ÆÄÀÏÀÌ Çѹø ´õ ÀоÁö°Ô µË´Ï´Ù.
SecurityException
- È£Ãâ Ãø¿¡
Policy¸¦ ¸®ÇÁ·¹½¬ ÇÏ´Â Á¢±Ù ±ÇÇÑÀÌ ¾ø´Â °æ¿ì
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.