|
|||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||
°³¿ä: ³»ºÎ Ŭ·¡½º | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼Òµå |
java.lang.Object | +--javax.security.auth.login.LoginContext
LoginContext
Ŭ·¡½º´Â, Subject ¸¦ ÀÎÁõÇϱâ À§ÇÑ ±âº»ÀûÀÎ ¸Þ¼Òµå¸¦ ±â¼úÇØ, ±âº»ÀÌ µÇ´Â ÀÎÁõ Å×Å©³î·¯Áö¿¡ ÀÇÁ¸ÇÏÁö ¾Ê´Â ¾îÇø®ÄÉÀÌ¼Ç °³¹ßÀÇ ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. Configuration
´Â, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î »ç¿ëµÇ´Â ÀÎÁõ Å×Å©³î·¯Áö (LoginModule
)¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ±× ¶§¹®¿¡, ¾îÇø®ÄÉÀÌ¼Ç ÀÚü·Î º¯°æÀ» ´õÇÏ´Â ÀÏ ¾øÀÌ, ¾îÇø®ÄÉÀ̼ǿ¡ ´Ù¸¥ LoginModule ¸¦ Ç÷¯±× ÀÎ ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
ÀÌ Å¬·¡½º´Â, Ç÷¯±× ÀÎ °¡´ÉÇÑ ÀÎÁõÀ» ¼Æ÷Æ®ÇÒ »Ó¸¸ ¾Æ´Ï¶ó, ½ºÅà µÈ ÀÎÁõÀÇ °³³äµµ ¼Æ÷Æ®ÇÕ´Ï´Ù. ¹Ù²Ù¾î ¸»Çϸé(ÀÚ), ¾îÇø®ÄÉÀ̼ǿ¡¼´Â LoginModule
¸¦ 2 °³ ÀÌ»ó »ç¿ëÇϵµ·Ï(µíÀÌ) ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, 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
´Â getSubject
¸Þ¼Òµå¸¦ ÅëÇØ¼ LoginContext
Ŭ·¡½º·ÎºÎÅÍ µ¹·ÁÁÖ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. LoginModules ´Â Ç×»ó AccessController.doPrivileged
È£Ãâ ³»ºÎ·ÎºÎÅÍ ºÒ·Á °¡´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. µû¶ó¼, ½ÃÅ¥·¯Æ¼¿¡ ¹Î°¨ÇÑ Å½ºÅ© (¸®¸ðÆ® È£½ºÆ®¿¡ÀÇ Á¢¼Óµî)¸¦ ½ÇÇàÇÏ´Â LoginModule ´Â ½ÃÅ¥·¯Æ¼ Policy
¿¡ ÀÖ¾î¼ÀÇ °ü·Ã Permission °¡ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù¸¸, LoginModules ÀÇ È£ÃâÃøÀº ±×·¯ÇÑ Permission °¡ ÇÊ¿äÇÏÁö´Â ¾Ê½À´Ï´Ù.
LoginContext
¿¡¼´Â, È£Ãâ ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇÑ ÀÎÁõÀÇ Àç½ÃÇàÀ» ¼Æ÷Æ®Çϰí ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, À¯Àú°¡ ÆÐ½º¿öµå¸¦ À߸øÇØ ÀÔ·ÂÇßÀ» °æ¿ì, LoginContext ÀÇ login
¸Þ¼Òµå¸¦ ¿©·¯ Â÷·Ê È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, 1 °³ÀÇ LoginContext
¸¦ º¹¼öÀÇ Subject
¸¦ ÀÎÁõÇϱâ À§Çؼ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ´Ù¸¥ Subject
¸¦ ÀÎÁõÇÏ·Á¸é , ´Ù¸¥ LoginContext
¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
°°Àº LoginContext
ÀÇ ¿©·¯ Â÷·Ê È£ÃâÀº,LoginModule
»óųª LoginModule °íÀ¯ÀÇ ¿É¼Ç¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.
Subject
,
CallbackHandler
,
Configuration
,
LoginModule
constructor¡¡ ¡¡ ÀÇ °³¿ä | |
LoginContext (java.lang.String name)
LoginContext Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ ÀÔ´Ï´Ù.
|
|
LoginContext (java.lang.String name,
CallbackHandler callbackHandler)
LoginContext Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ ÀÔ´Ï´Ù.
|
|
LoginContext (java.lang.String name,
Subject subject)
LoginContext Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ ÀÔ´Ï´Ù.
|
|
LoginContext (java.lang.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 |
constructor¡¡ ¡¡ ÀÇ »ó¼¼ |
public LoginContext(java.lang.String name) throws LoginException
LoginContext
Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext
¿ÀºêÁ§Æ®¸¦ À̸§À¸·Î ÃʱâÈÇÕ´Ï´Ù. LoginContext
¿¡¼´Â, ÁöÁ¤ÇÑ À̸§À» Configuration
ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration
³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â, µðÆúÆ®ÀÇ Configuration
¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration
¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â,LoginException
°¡ ½½·Î¿ì µË´Ï´Ù.
ÀÌ constructor¡¡ ¡¡ Àº CallbackHandler
¸¦ Çã°¡ÇÏÁö ¾Ê½À´Ï´Ù. µû¶ó¼, ºÎÇÏÀÇ LoginModule ´Â À¯Àú¿ÍÀÇ Åë½Å¿¡ »ç¿ë °¡´ÉÇÑ CallbackHandler
¸¦ °¡ÁöÁö ¾Ê½À´Ï´Ù. ÀÌ ¶§¹®¿¡, È£ÃâÃøÀº ¼³Á¤µÈ LoginModule °¡ À¯Àú ÀÎÁõÀÇ ´ëü ¼ö´ÜÀ» °¡Áö¸é(ÀÚ) °£ÁÖÇÕ´Ï´Ù.
ÀÌ constructor¡¡ ¡¡ ¿¡¼´Â Subject
¸¦ ÁöÁ¤ÇÒ ¼ö ¾ø±â ¶§¹®¿¡,Subject
´Â ÀÚµ¿ÀûÀ¸·Î ÀνºÅϽºÈ µË´Ï´Ù.
name
- Configuration
ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§LoginException
- ÁöÁ¤µÈ name
°¡ Configuration
¿¡ Á¸ÀçÇÏÁö ¾Ê°í,Configuration
¿£Æ®¸®¿¡ other °¡ ¾ø´Â °æ¿ìpublic LoginContext(java.lang.String name, Subject subject) throws LoginException
LoginContext
Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ ÀÔ´Ï´Ù.
»õ·Î¿î LoginContext
¿ÀºêÁ§Æ®¸¦ À̸§°ú Subject
¿ÀºêÁ§Æ®·Î ÃʱâÈÇÕ´Ï´Ù.
LoginContext
¿¡¼´Â, À̸§À» Configuration
ÀÇ À妽º·Î¼ »ç¿ëÇØ, »ç¿ëµÇ°í ÀÖ´Â LoginModule ¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÁöÁ¤ÇÑ À̸§ÀÌ Configuration
³»ÀÇ À̸§°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì´Â, µðÆúÆ®ÀÇ Configuration
¿£Æ®¸®ÀÎ other ¸¦ »ç¿ëÇÕ´Ï´Ù. other ÀÇ Configuration
¿£Æ®¸®°¡ ¾ø´Â °æ¿ì´Â,LoginException
°¡ ½½·Î¿ì µË´Ï´Ù.
ÀÌ constructor¡¡ ¡¡ Àº CallbackHandler
¸¦ Çã°¡ÇÏÁö ¾Ê½À´Ï´Ù. µû¶ó¼, ºÎÇÏÀÇ LoginModule ´Â À¯Àú¿ÍÀÇ Åë½Å¿¡ »ç¿ë °¡´ÉÇÑ CallbackHandler
¸¦ °¡ÁöÁö ¾Ê½À´Ï´Ù. ÀÌ ¶§¹®¿¡, È£ÃâÃøÀº ¼³Á¤µÈ LoginModule °¡ À¯Àú ÀÎÁõÀÇ ´ëü ¼ö´ÜÀ» °¡Áö¸é(ÀÚ) °£ÁÖÇÕ´Ï´Ù.
LoginContext
´Â Subject
¿ÀºêÁ§Æ®¸¦ ±¸¼º ³¡³ LoginModule ¿¡ °Ç³×ÁÝ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ, LoginModule ´Â, ÀÎÁõÀ» Ãß°¡ ½ÇÇàÇϰųª »õ·Î¿î Principal ¿Í Credential ·Î Subject
¸¦ °»½ÅÇϰųª ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
name
- Configuration
ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
subject
- ÀÎÁõ ´ë»óÀÇ Subject
LoginException
- ÁöÁ¤ÇÑ name
°¡ Configuration
¿¡ Á¸ÀçÇÏÁö ¾Ê°í, other ¶ó°í ÇÏ´Â Configuration
¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ȤÀº ÁöÁ¤ÇÑ subject
°¡ null
ÀÇ °æ¿ìpublic LoginContext(java.lang.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
´Â ÀÚµ¿ÀûÀ¸·Î ÀνºÅϽºÈ µË´Ï´Ù.
name
- Configuration
ÀÇ À妽º·Î¼ »ç¿ëµÇ´Â À̸§
callbackHandler
- LoginModule °¡ À¯Àú¿Í ±³È¯Çϱâ À§Çؼ(¶§¹®¿¡) »ç¿ëÇÏ´Â CallbackHandler
¿ÀºêÁ§Æ®LoginException
- ÁöÁ¤ÇÑ name
°¡ Configuration
¿¡ ¾ø°í, other ¶ó°í ÇÏ´Â Configuration
¿£Æ®¸®°¡ ¾ø´Â °æ¿ì, ȤÀº ÁöÁ¤ÇÑ callbackHandler
°¡ null
ÀÇ °æ¿ìpublic LoginContext(java.lang.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
- ÀÎÁõ ´ë»óÀÇ Subject
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 ¸¦ µ¹·ÁÁØ´Ù
|
|||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||
°³¿ä: ³»ºÎ Ŭ·¡½º | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼Òµå |