|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
| ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
| °³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå | ||||||||||
java.lang.Object | +--javax.security.auth.login.LoginContext
LoginContext Ŭ·¡½º´Â Subject ¸¦ ÀÎÁõÇϱâ À§ÇÑ ±âº»ÀûÀÎ ¸Þ¼Òµå¸¦ ±â¼úÇØ, ±âº»ÀÌ µÇ´Â ÀÎÁõ Å×Å©³î·¯Áö¿¡ ÀÇÁ¸ÇÏÁö ¾Ê´Â ¾îÇø®ÄÉÀÌ¼Ç °³¹ßÀÇ ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. Configuration ´Â ¾îÇø®ÄÉÀ̼ÇÀ¸·Î »ç¿ëµÇ´Â ÀÎÁõ Å×Å©³î·¯Áö (LoginModule)¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ±× ¶§¹®¿¡, ¾îÇø®ÄÉÀÌ¼Ç ÀÚü·Î º¯°æÀ» ´õÇÏ´Â ÀÏ ¾øÀÌ, ¾îÇø®ÄÉÀ̼ǿ¡ ´Ù¸¥ LoginModule ¸¦ Ç÷¯±× ÀÎ ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
ÀÌ Å¬·¡½º´Â Ç÷¯±× ÀÎ °¡´ÉÇÑ ÀÎÁõÀ» ¼Æ÷Æ®ÇÒ »Ó¸¸ ¾Æ´Ï¶ó, ½ºÅà µÈ ÀÎÁõÀÇ °³³äµµ ¼Æ÷Æ®ÇÕ´Ï´Ù. ¹Ù²Ù¾î ¸»Çϸé(ÀÚ), ¾îÇø®ÄÉÀ̼ǿ¡¼´Â LoginModule ¸¦ 1 °³ ÀÌ»ó »ç¿ëÇϵµ·Ï(µíÀÌ) ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, 1 °³ÀÇ ¾îÇø®ÄÉÀ̼ÇÀ¸·Î Kerberos LoginModule ¿Í ½º¸¶Æ® Ä«µå LoginModule ÀÇ ¾çÂÊ ¸ðµÎ¸¦ ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
Åë»óÀÇ È£ÃâÃøÀº ÀÌ Å¬·¡½º¸¦ ÃʱâÈÇØ name ¿Í CallbackHandler ¿¡ °Ç³×ÁÝ´Ï´Ù. LoginContext ¿¡¼´Â name ¸¦ Configuration ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ³ª, ÀÎÁõ Àüü°¡ ¼º°øÇϱâ À§Çؼ(¶§¹®¿¡) ¼º°øÇÏÁö ¾ÊÀ¸¸é ¾È µÇ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. CallbackHandler ´Â ±âº»ÀÌ µÇ´Â LoginModule ¿¡°Ô °Ç³×Á® LoginModule ´Â À¯Àú¿ÍÀÇ ÁÖ°í¹Þ¾Æ (±×·¡ÇÇÄà À¯Àú ÀÎÅÍÆäÀ̽º·Î À¯Àú¸í°ú ÆÐ½º¿öµåÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇÏ´Â µî)¸¦ ½Ç½ÃÇÕ´Ï´Ù.
È£ÃâÃøÀÌ LoginContext ¸¦ ÃʱâÈÇϸé(ÀÚ),login ¸Þ¼Òµå¸¦ È£ÃâÇØ Subject ¸¦ ÀÎÁõÇÕ´Ï´Ù. ÀÌ login ¸Þ¼Òµå´Â È£ÃâÃøÀÌ ÁöÁ¤ÇÑ name ¿ëÀ¸·Î ±¸¼ºµÈ °¢ LoginModule ·ÎºÎÅÍ login ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. ±×¸®°í, °¢ LoginModule ¿¡¼´Â °¢°¢ÀÇ ÀÎÁõ ŸÀÔÀ» ½ÇÇàÇÕ´Ï´Ù (À¯Àú¸í°ú ÆÐ½º¿öµå, ½º¸¶Æ® Ä«µå PIN ÀÎÁõ µî). ÀÎÁõÀÌ ½ÇÆÐÇßÀ» °æ¿ì¿¡, LoginModule ¿¡¼´Â ÀÎÁõÀ» Àç½ÃÇàÇϰųª À¯¿¹¸¦ Áְųª ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ·± Á¾·ùÀÇ Ã³¸®´Â È£ÃâÇØ ¿·ÀÌ ½Ç½ÃÇÕ´Ï´Ù.
ÀÎÁõ Àüü°¡ ¼º°øÇß´ÂÁö ¾î¶°Çß´ÂÁö¿¡ °ü°è¾øÀÌ, ÀÌ login ¸Þ¼Òµå¿¡¼´Â ±¸¼ºµÈ °¢ LoginModule ¿¡ ´ëÇØ¼ commit ¸Þ¼Òµå³ª abort ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î, 2 ±¹¸éÀÇ ÀÎÁõ ÇÁ·Î¼¼½º¸¦ ¿Ï·áÇÕ´Ï´Ù. ÀÎÁõ Àüü°¡ ¼º°øÇßÀ» °æ¿ì´Â °¢ LoginModule ¿¡ ´ëÇØ¼ commit ¸Þ¼Òµå°¡ ºÒ·Á °¡ ÀÎÁõ Àüü°¡ ½ÇÆÐÇßÀ» °æ¿ì´Â °¢ LoginModule ¿¡ ´ëÇØ¼ abort ¸Þ¼Òµå°¡ ºÒ·Á °©´Ï´Ù. ¼º°øÇÑ °¢ LoginModule ÀÇ commit ¿¡¼´Â °ü·ÃÇÏ´Â Principal (ÀÎÁõµÈ ½Äº° Á¤º¸)¿Í Credential (¾Ïȣȿ¼èµîÀÇ ÀÎÁõ µ¥ÀÌÅÍ)°¡,Subject ¿Í °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù. °¢ LoginModule ÀÇ abort ¸Þ¼Òµå´Â ¸ÕÀú ÀúÀåµÈ ÀÎÁõ »óŸ¦ Ŭ¸° ¾÷, ¶Ç´Â »èÁ¦/ÆÄ±âÇÕ´Ï´Ù.
login ¸Þ¼Òµå°¡ ¿¹¿Ü¸¦ ½½·Î¿ì ÇÏ´Â ÀÏ ¾øÀÌ µÇµ¹¾Æ ¿ÔÀ» °æ¿ì´Â ÀÎÁõ Àüü¿¡ ¼º°øÇÑ °ÍÀÌ µË´Ï´Ù. ±×¸®°í, È£ÃâÃøÀº getSubject ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î, »õ·Ó°Ô ÀÎÁõµÈ Subject ¸¦ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù. Subject ¿Í °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø Principal ¿Í Credential ´Â Subject ÀÇ getPrincipals,getPublicCredentials, ¹× getPrivateCredentials ÀÇ °¢ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù.
Subject ¸¦ ·Î±×¾Æ¿ô ½ÃŰ·Á¸é , È£ÃâÃø¿¡¼ logout ¸Þ¼Òµå¸¦ È£ÃâÇÒ »ÓÀÔ´Ï´Ù º¾´Ï´Ù. login ¸Þ¼Òµå¿Í °°°Ô ÀÌ logout ¸Þ¼Òµå¿¡¼´Â ÀÌ LoginContext ¿ëÀ¸·Î ±¸¼ºµÈ °¢ LoginModule ÀÇ logout ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. °¢ LoginModule ÀÇ logout ¸Þ¼Òµå´Â »óŸ¦ Ŭ¸° ¾÷ ÇØ,Subject ·ÎºÎÅÍ Principal ¿Í Credential ¸¦ ÀûÀýÈ÷ »èÁ¦ ¶Ç´Â ÆÄ±âÇÕ´Ï´Ù.
LoginContext ¿¡ ÀÇÇØ ºÒ·Á °£ ±¸¼º ³¡³ °¢ LoginModule ¿¡¼´Â ÀÎÁõÀ» ¹Þ´Â Subject, À¯Àú¿Í Åë½ÅÇϱâ À§ÇÑ CallbackHandler, °øÀ¯ LoginModule »óÅÂ, ¹× LoginModule °íÀ¯ÀÇ ¿É¼ÇÀ¸·Î Ãʱâȵ˴ϴÙ. LoginContext °¡ Subject ¿¡°Ô °Ç³×ÁöÁö ¾Ê´Â °æ¿ì´Â ÀÚ±â ÀÚ½ÅÀ» ÀνºÅϽºÈÇÕ´Ï´Ù.
À¯ÀúÀÇ ÀÎÁõ¿¡ ¼º°øÇÑ °¢ LoginModule ¿¡¼´Â Subject ¸¦ °ü·ÃÇÏ´Â À¯Àú Á¤º¸ (Principal ¿Í Credential)·Î °»½ÅÇÕ´Ï´Ù. ÀÌ Subject ´Â ÀÎÁõ Àüü°¡ ¼º°øÇßÀ» °æ¿ì¿¡,LoginContext Ŭ·¡½ºÀÇ getSubject ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁý´Ï´Ù. LoginModule ´Â AccessController.doPrivileged È£ÃâÀÇ ³»ºÎ·ÎºÎÅÍ Ç×»ó ºÒ·Á °©´Ï´Ù. ±× ¶§¹®¿¡, º¸¾È»ó Áß¿äÇÑ ÀÛ¾÷ (¸®¸ðÆ® È£½ºÆ®¿¡ Á¢¼ÓÇÏ´Â µî)À» ½ÇÇàÇÏ´Â LoginModule ·Î, ½ÃÅ¥·¯Æ¼ Policy ÀÇ °ü·ÃÇÏ´Â Permission ÀÇ ºÎ¿©°¡ ÇÊ¿äÇØµµ, LoginModule ÀÇ È£Ãâ Ãø¿¡, ÀÌ·¯ÇÑ Permission ´Â ÇÊ¿ä ¾ø½À´Ï´Ù.
LoginContext ¿¡¼´Â È£Ãâ ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇÑ ÀÎÁõÀÇ Àç½ÃÇàÀ» ¼Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, À¯Àú°¡ ÆÐ½º¿öµå¸¦ À߸øÇØ ÀÔ·ÂÇßÀ» °æ¿ì, LoginContext ÀÇ login ¸Þ¼Òµå¸¦ ¿©·¯ Â÷·Ê È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, 1 °³ÀÇ LoginContext ¸¦ º¹¼öÀÇ Subject ¸¦ ÀÎÁõÇϱâ À§Çؼ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ Subject ¸¦ ÀÎÁõÇÏ·Á¸é , ´Ù¸¥ LoginContext ¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
°°Àº LoginContext ÀÇ ¿©·¯ Â÷·Ê È£ÃâÀº LoginModule »óųª LoginModule °íÀ¯ÀÇ ¿É¼Ç¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.
Subject ,
CallbackHandler ,
Configuration ,
LoginModule | »ý¼ºÀÚÀÇ °³¿ä | |
LoginContext (String name)
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
|
|
LoginContext (String name,
CallbackHandler callbackHandler)
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
|
|
LoginContext (String name,
Subject subject)
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
|
|
LoginContext (String name,
Subject subject,
CallbackHandler callbackHandler)
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
|
|
| ¸Þ¼ÒµåÀÇ °³¿ä | |
Subject |
getSubject ()
ÀÎÁõµÈ Subject ¸¦ µ¹·ÁÁÝ´Ï´Ù. |
void |
login ()
ÀÎÁõÀ» ½ÇÇàÇØ, ¼º°øÇßÀ» °æ¿ì´Â Principal ¿Í Credential ¸¦ ÀÎÁõÇÑ Subject ¿Í °ü·ÃÁþ½À´Ï´Ù.
|
void |
logout ()
Subject ¸¦ ·Î±×¾Æ¿ô ÇÕ´Ï´Ù.
|
| Ŭ·¡½º java.lang. Object ¿¡¼ »ó¼Ó¹ÞÀº ¸Þ¼Òµå |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
| »ý¼ºÀÚÀÇ »ó¼¼ |
public LoginContext(String name)
throws LoginException
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext ¸¦ À̸§À¸·Î ÃʱâÈÇÕ´Ï´Ù. LoginContext ¿¡¼´Â ÁöÁ¤ÇÑ À̸§À» Configuration ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration ³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â µðÆúÆ®ÀÇ Configuration ¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â LoginException °¡ ½½·Î¿ì µË´Ï´Ù.
ÀÌ constructor ¿¡¼´Â CallbackHandler ¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê½À´Ï´Ù. auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ µðÆúÆ®ÀÇ CallbackHandler ±¸Çö Ŭ·¡½ºÀÇ ¿ÏÀü ¼ö½Ä¸íÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì, ±× CallbackHandler °¡ ·Îµå µÇ¾î ±âº»ÀÌ µÇ´Â LoginModule ¿¡°Ô °Ç³×Áý´Ï´Ù. ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ±âº»ÀÌ µÇ´Â LoginModule ´Â À¯Àú¿Í Åë½ÅÇϱâ À§Çؼ »ç¿ëÇÏ´Â CallbackHandler ¸¦ °¡ÁöÁö ¾Ê°Ô µË´Ï´Ù. ±× ¶§¹®¿¡, È£ÃâÃø¿¡¼´Â ±¸¼º ³¡³ LoginModule ¿¡, À¯Àú¸¦ ÀÎÁõÇÏ´Â ´ëü ¹æ¹ýÀÌ ÀÖ´Ù°í º¾´Ï´Ù.
auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ´Â <JAVA_HOME>/lib/security/java.security ¶ó°í ÇÏ´Â ÆÄÀÏ¿¡ ÀÖ´Â Java ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ ÆÄÀÏ·Î ¼³Á¤ÇÕ´Ï´Ù. <JAVA_HOME> ´Â SDK °¡ ÀνºÅç µÈ µð·ºÅ丮ÀÔ´Ï´Ù.
ÀÌ constructor ¿¡¼´Â Subject ¸¦ ÁöÁ¤ÇÒ ¼ö ¾ø±â ¶§¹®¿¡,Subject ´Â Subject ÀÚü¸¦ ÀνºÅϽºÈÇÕ´Ï´Ù.
name - Configuration ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
LoginException - ÁöÁ¤ÇÑ name °¡ Configuration ¿¡ ¾ø°í, other ¶ó°í ÇÏ´Â Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ȤÀº auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖ´Â °Í¿¡µµ ºÒ±¸Çϰí, ±¸Çö Ŭ·¡½º¸¦ ·ÎµåÇÒ ¼ö ¾ø¾ú´ø °æ¿ì
public LoginContext(String name,
Subject subject)
throws LoginException
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext ¿ÀºêÁ§Æ®¸¦ À̸§°ú Subject ¿ÀºêÁ§Æ®·Î ÃʱâÈÇÕ´Ï´Ù.
LoginContext ¿¡¼´Â À̸§À» Configuration ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration ³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â µðÆúÆ®ÀÇ Configuration ¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â LoginException °¡ ½½·Î¿ì µË´Ï´Ù.
ÀÌ constructor ¿¡¼´Â CallbackHandler ¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê½À´Ï´Ù. auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ µðÆúÆ®ÀÇ CallbackHandler ±¸Çö Ŭ·¡½ºÀÇ ¿ÏÀü ¼ö½Ä¸íÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì, ±× CallbackHandler °¡ ·Îµå µÇ¾î ±âº»ÀÌ µÇ´Â LoginModule ¿¡°Ô °Ç³×Áý´Ï´Ù. ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ±âº»ÀÌ µÇ´Â LoginModule ´Â À¯Àú¿Í Åë½ÅÇϱâ À§Çؼ »ç¿ëÇÏ´Â CallbackHandler ¸¦ °¡ÁöÁö ¾Ê°Ô µË´Ï´Ù. ±× ¶§¹®¿¡, È£ÃâÃø¿¡¼´Â ±¸¼º ³¡³ LoginModule ¿¡, À¯Àú¸¦ ÀÎÁõÇÏ´Â ´ëü ¹æ¹ýÀÌ ÀÖ´Ù°í º¾´Ï´Ù.
auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ´Â <JAVA_HOME>/lib/security/java.security ¶ó°í ÇÏ´Â ÆÄÀÏ¿¡ ÀÖ´Â Java ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ ÆÄÀÏ·Î ¼³Á¤ÇÕ´Ï´Ù. <JAVA_HOME> ´Â SDK °¡ ÀνºÅç µÇ°í ÀÖ´Â µð·ºÅ丮ÀÔ´Ï´Ù.
LoginContext ´Â Subject ¿ÀºêÁ§Æ®¸¦ ±¸¼º ³¡³ LoginModule ¿¡ °Ç³×ÁÝ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ, LoginModule ´Â ÀÎÁõÀ» Ãß°¡ ½ÇÇàÇϰųª »õ·Î¿î Principal ¿Í Credential ·Î Subject ¸¦ °»½ÅÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
name - Configuration ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
subject - ÀÎÁõ ´ë»óÀÇ Object
LoginException - ÁöÁ¤ÇÑ name °¡ Configuration ¿¡ ¾ø°í, other ¶ó°í ÇÏ´Â Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ÁöÁ¤ÇÑ subject °¡ null ÀÇ °æ¿ì, ȤÀº auth.login.defaultCallbackHandler ½ÃÅ¥·¯Æ¼ ÇÁ·ÎÆÛƼ°¡ ¼³Á¤µÇ¾î ÀÖ´Â °Í¿¡µµ ºÒ±¸Çϰí, ±¸Çö Ŭ·¡½º¸¦ ·ÎµåÇÒ ¼ö ¾ø¾ú´ø °æ¿ì
public LoginContext(String name,
CallbackHandler callbackHandler)
throws LoginException
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext ¿ÀºêÁ§Æ®¸¦ À̸§°ú CallbackHandler ¿ÀºêÁ§Æ®·Î ÃʱâÈÇÕ´Ï´Ù.
LoginContext ¿¡¼´Â À̸§À» Configuration ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration ³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â µðÆúÆ®ÀÇ Configuration ¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â LoginException °¡ ½½·Î¿ì µË´Ï´Ù.
LoginContext ´Â CallbackHandler ¿ÀºêÁ§Æ®¸¦ ±¸¼º ³¡³ LoginModule ¿¡ °Ç³×ÁÖ±â (À§ÇØ)¶§¹®¿¡, LoginModule ´Â À¯Àú¿Í ±³È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¶§¹®¿¡,CallbackHandler ¿ÀºêÁ§Æ®¿¡¼´Â LoginModule ¸¦, ¾îÇø®ÄÉÀ̼ÇÀÌ À¯Àú¿Í ±³È¯ÇÏ´Â ¹æ¹ý°ú´Â ¹«°ü°èÇÑ ±×´ë·Î·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ LoginContext ´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â CallbackHandler ¸¦ »õ·Î¿î CallbackHandler ±¸ÇöÀ¸·Î ·¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ »õ·Î¿î CallbackHandler ±¸ÇöÀÇ handle ¸Þ¼Òµå ±¸Çö¿¡¼´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â CallbackHandler ÀÇ handle ¸Þ¼ÒµåÀÇ È£ÃâÀ», È£ÃâÃøÀÇ ÇöÀçÀÇ AccessControlContext ¿¡ Á¦¾àÀ» ¹Þ°í ÀÖ´Â java.security.AccessController.doPrivileged È£Ãâ³»¿¡¼ ½ÇÇàÇÕ´Ï´Ù.
ÀÌ constructor ¿¡¼´Â Subject ¸¦ ÁöÁ¤ÇÒ ¼ö ¾ø±â ¶§¹®¿¡,Subject ´Â Subject ÀÚü¸¦ ÀνºÅϽºÈÇÕ´Ï´Ù.
name - Configuration ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
callbackHandler - LoginModule °¡ À¯Àú¿Í ±³È¯Çϱâ À§Çؼ(¶§¹®¿¡) »ç¿ëÇÏ´Â CallbackHandler ¿ÀºêÁ§Æ®
LoginException - ÁöÁ¤ÇÑ name °¡ Configuration ¿¡ ¾ø°í, other ¶ó°í ÇÏ´Â Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ȤÀº ÁöÁ¤ÇÑ callbackHandler °¡ null ÀÇ °æ¿ì
public LoginContext(String name,
Subject subject,
CallbackHandler callbackHandler)
throws LoginException
LoginContext Ŭ·¡½ºÀÇ constructor ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext ¿ÀºêÁ§Æ®¸¦ À̸§, ÀÎÁõÀ» ¹Þ´Â Subject ¿ÀºêÁ§Æ®, ¹× CallbackHandler ¿ÀºêÁ§Æ®·Î ÃʱâÈÇÕ´Ï´Ù.
LoginContext ¿¡¼´Â À̸§À» Configuration ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration ³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â µðÆúÆ®ÀÇ Configuration ¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â LoginException °¡ ½½·Î¿ì µË´Ï´Ù.
LoginContext ´Â Subject ¿ÀºêÁ§Æ®¸¦ ±¸¼º ³¡³ LoginModule ¿¡ °Ç³×ÁÝ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ, LoginModule ´Â ÀÎÁõÀ» Ãß°¡ ½ÇÇàÇϰųª »õ·Î¿î Principal ¿Í Credential ·Î Subject ¸¦ °»½ÅÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
LoginContext ´Â CallbackHandler ¿ÀºêÁ§Æ®¸¦ ±¸¼º ³¡³ LoginModule ¿¡ °Ç³×ÁÖ±â (À§ÇØ)¶§¹®¿¡, LoginModule ´Â À¯Àú¿Í ±³È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±× ¶§¹®¿¡,CallbackHandler ¿ÀºêÁ§Æ®¿¡¼´Â LoginModule ¸¦, ¾îÇø®ÄÉÀ̼ÇÀÌ À¯Àú¿Í ±³È¯ÇÏ´Â ¹æ¹ý°ú´Â ¹«°ü°èÇÑ ±×´ë·Î·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ LoginContext ´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â CallbackHandler ¸¦ »õ·Î¿î CallbackHandler ±¸ÇöÀ¸·Î ·¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ »õ·Î¿î CallbackHandler ±¸ÇöÀÇ handle ¸Þ¼Òµå ±¸Çö¿¡¼´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â CallbackHandler ÀÇ handle ¸Þ¼ÒµåÀÇ È£ÃâÀ», È£ÃâÃøÀÇ ÇöÀçÀÇ AccessControlContext ¿¡ Á¦¾àÀ» ¹Þ°í ÀÖ´Â java.security.AccessController.doPrivileged È£Ãâ³»¿¡¼ ½ÇÇàÇÕ´Ï´Ù.
name - Configuration ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
subject - ÀÎÁõ ´ë»óÀÇ Object
callbackHandler - LoginModule °¡ À¯Àú¿Í ±³È¯Çϱâ À§Çؼ(¶§¹®¿¡) »ç¿ëÇÏ´Â CallbackHandler ¿ÀºêÁ§Æ®
LoginException - ÁöÁ¤ÇÑ name °¡ Configuration ¿¡ ¾ø°í, other ¶ó°í ÇÏ´Â Configuration ¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ÁöÁ¤ÇÑ subject °¡ null ÀÇ °æ¿ì, ȤÀº ÁöÁ¤ÇÑ callbackHandler °¡ null ÀÇ °æ¿ì| ¸Þ¼ÒµåÀÇ »ó¼¼ |
public void login()
throws LoginException
Subject ¿Í °ü·ÃÁþ½À´Ï´Ù.
ÀÌ ¸Þ¼Òµå¿¡¼´Â ·Î±×ÀÎ Configuration ·Î Á¤ÀǵÈ,LoginContext constructor·Î °Ç³×Áø name ¿ëÀ¸·Î ±¸¼ºµÈ °¢ LoginModule ÀÇ login ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. ±×¸®°í, °¢ LoginModule ¿¡¼´Â °¢°¢ÀÇ ÀÎÁõ ŸÀÔÀ» ½ÇÇàÇÕ´Ï´Ù (À¯Àú¸í°ú ÆÐ½º¿öµå, ½º¸¶Æ® Ä«µå PIN ÀÎÁõ µî).
ÀÌ ¸Þ¼Òµå¿¡¼´Â LoginContext ÀÇ ÀÎÁõ Àüü°¡ ¼º°øÇßÀ» °æ¿ì (°ü·ÃÇÏ´Â REQUIRED, REQUISITE, SUFFICIENT, OPTIONAL ÀÇ °¢ LoginModule ÀÌ ¼º°ø)¿¡ ±¸¼º ³¡³ LoginModule ¿¡ ´ëÇØ¼ commit ¸Þ¼Òµå¸¦ È£ÃâÇÏ´ÂÁö ÀÎÁõ Àüü°¡ ½ÇÆÐÇßÀ» °æ¿ì¿¡ ±¸¼º ³¡³ °¢ LoginModule ¿¡ ´ëÇØ¼ abort ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î, 2 ±¹¸éÀÇ ÀÎÁõ ÇÁ·Î¼¼½º°¡ ¿Ï·áÇÕ´Ï´Ù. ÀÎÁõ¿¡ ¼º°øÇßÀ» °æ¿ì´Â ¼º°øÇÑ °¢ LoginModule ÀÇ commit ¸Þ¼Òµå¿¡ ÀÇÇØ, °ü·ÃÇÏ´Â Principal ¿Í Credential °¡,Subject ¿Í °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÎÁõ¿¡ ½ÇÆÐÇßÀ» °æ¿ì´Â °¢ LoginModule ÀÇ abort ¸Þ¼Òµå¿¡ ÀÇÇØ, ¿ø·¡ º¸Á¸µÇ°í ÀÖ´ø »óŸ¦ »èÁ¦ ¶Ç´Â ÆÄ±âÇÕ´Ï´Ù.
ÀÎÁõ ÇÁ·Î¼¼½ºÀÇ commit ±¹¸é¿¡ ½ÇÆÐÇϸé(ÀÚ) ÀÎÁõ Àüü°¡ ½ÇÆÐÇØ, ÀÌ ¸Þ¼Òµå´Â ±¸¼º ³¡³ °¢ LoginModule ¿¡ ´ëÇØ¼ abort ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù.
¾î¶°ÇÑ ÀÌÀ¯·Î½á abort ±¹¸éÀÌ ½ÇÆÐÇØµµ,login ±¹¸éÁßÀ̳ª commit ±¹¸éÁß¿¡ ½½·Î¿ì µÈ ¿øÀÇ ¿¹¿Ü¸¦ Àü´ÞÇÕ´Ï´Ù. ¾î´À ÂÊÀÇ °æ¿ìµµ, ÀÎÁõ Àüü°¡ ½ÇÆÐÇÕ´Ï´Ù.
º¹¼öÀÇ LoginModule À¸·Î ½ÇÆÐÇßÀ» °æ¿ì, ÃÖÃÊ·Î ½ÇÆÐÇÑ LoginModule ·Î ¹ß»ýÇÑ ¿¹¿Ü¸¦ Àü´ÞÇÕ´Ï´Ù.
ÀÌ ¸Þ¼Òµå°¡ abort ±¹¸é¿¡ µé¾î°¬À» (login ±¹¸éÀ̳ª commit ±¹¸é¿¡ ½ÇÆÐÇÒ) °æ¿ì´Â ÁöÁ¤ÇÑ ¾îÇø®ÄÉÀ̼ǿëÀ¸·Î ±¸¼ºµÈ ¸ðµç LoginModule ¸¦, °¢°¢ÀÇ Configuration Ç÷¡±× ÆÄ¶ó¹ÌÅÍ¿¡ °ü°è¾øÀÌ, È£ÃâÇÕ´Ï´Ù. ¿øÄ¢À¸·Î¼abort ±¹¸éÁßÀº Requisite ¿Í Sufficient °¡ °¡Áö´Â Àǹ̴ ¹«½ÃµË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ, ÀûÀýÇÑ Å¬¸° ¾÷°ú »óÅÂÀÇ º¹¿øÀ» ½Ç½ÃÇÏ´Â °ÍÀÌ ÇÁ·ÎÅØ¼ÇµË´Ï´Ù.
LoginException - ÀÎÁõ¿¡ ½ÇÆÐÇßÀ» °æ¿ì
public void logout()
throws LoginException
Subject ¸¦ ·Î±×¾Æ¿ô ÇÕ´Ï´Ù.
ÀÌ ¸Þ¼Òµå´Â ÀÌ LoginContext ¿ëÀ¸·Î ±¸¼ºµÈ °¢ LoginModule ÀÇ logout ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. °¢ LoginModule ´Â °¢°¢ÀÇ ·Î±×¾Æ¿ô 󸮸¦ ½Ç½ÃÇÕ´Ï´Ù. ·Î±×¾Æ¿ô 󸮿¡´Â Subject ·ÎºÎÅÍÀÇ Principal ³ª Credential ÀÇ »èÁ¦/ÆÄ±â³ª, »óÅÂÀÇ Å¬¸° ¾÷µîÀÌ Æ÷ÇԵ˴ϴÙ.
ÀÌ ¸Þ¼Òµå¿¡¼´Â ÁöÁ¤ÇÑ ¾îÇø®ÄÉÀ̼ǿëÀ¸·Î ±¸¼ºµÈ ¸ðµç LoginModule ¸¦, °¢°¢ÀÇ Configuration Ç÷¡±× ÆÄ¶ó¹ÌÅÍ¿¡ °ü°è¾øÀÌ È£ÃâÇÕ´Ï´Ù. ¿øÄ¢À¸·Î¼ ÀÌ ¸Þ¼Òµå¿¡¼´Â Requisite ¿Í Sufficient °¡ °¡Áö´Â Àǹ̴ ¹«½ÃµË´Ï´Ù. À̰Ϳ¡ ÀÇÇØ, ÀûÀýÇÑ Å¬¸° ¾÷°ú »óÅÂÀÇ º¹¿øÀ» ½Ç½ÃÇÏ´Â °ÍÀÌ ÇÁ·ÎÅØ¼ÇµË´Ï´Ù.
LoginException - ·Î±×¾Æ¿ô¿¡ ½ÇÆÐÇßÀ» °æ¿ìpublic Subject getSubject()
null ¸¦ µ¹·ÁÁØ´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â °Ç³×¹ÞÀº Subject ¸¦ µ¹·ÁÁØ´Ù
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
| ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
| °³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå | ||||||||||
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.