JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.security.auth.spi
ÀÎÅÍÆäÀ̽º LoginModule


public interface LoginModule

LoginModule ¿¡¼­´Â ÀÎÁõ Å×Å©³î·¯Áö ÇÁ·Î¹ÙÀÌ´õ°¡ ±¸ÇöÇÏ´Â ÀÎÅÍÆäÀ̽º¸¦ ±â¼úÇÕ´Ï´Ù. LoginModule ¸¦ ¾îÇø®ÄÉÀ̼ǿ¡ Ç÷¯±× ÀÎ ÇÏ´Â °ÍÀ¸·Î½á, ƯÁ¤ÀÇ ÀÎÁõ ŸÀÔÀ» Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀÌ LoginContext API ¿¡ ±âÀÔÀ» ÇÏ´Â ÇÑÆíÀ¸·Î, ÀÎÁõ Å×Å©³î·¯Áö ÇÁ·Î¹ÙÀÌ´õ´Â LoginModule ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÕ´Ï´Ù. Configuration ¿¡¼­´Â ƯÁ¤ÀÇ ·Î±×ÀÎ ¾îÇø®ÄÉÀ̼ÇÀ¸·Î »ç¿ëµÇ´Â LoginModule ¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ±× ¶§¹®¿¡, ¾îÇø®ÄÉÀÌ¼Ç ÀÚü·Î º¯°æÀ» ´õÇÏ´Â ÀÏ ¾øÀÌ, ¾îÇø®ÄÉÀ̼ǿ¡ ´Ù¸¥ LoginModule ¸¦ Ç÷¯±× ÀÎ ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

LoginContext ´Â Configuration ¸¦ Àоîµé¿©, ÀûÀýÇÑ LoginModule ¸¦ ÀνºÅϽºÈ­ÇÕ´Ï´Ù. °¢ LoginModule Àº Subject,CallbackHandler, °øÀ¯ LoginModule »óÅÂ, ¹× LoginModule °íÀ¯ÀÇ ¿É¼ÇÀ» »ç¿ëÇØ, ÃʱâÈ­µË´Ï´Ù. Subject ´Â ÇöÀç ÀÎÁõÁßÀÇ Subject ¸¦ ³ªÅ¸³», ÀÎÁõ¿¡ ¼º°øÇϸé(ÀÚ), °ü·ÃÇÏ´Â Credential ·Î °»½ÅµË´Ï´Ù. LoginModule ¿¡¼­´Â CallbackHandler ¸¦ »ç¿ëÇØ À¯Àú¿Í Åë½ÅÇÕ´Ï´Ù. ¿¹¸¦ µé¾î À¯Àú¸í°ú ÆÐ½º¿öµåÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇÒ ¶§,CallbackHandler ¸¦ »ç¿ëÇÕ´Ï´Ù. CallbackHandler ´Â null ·Îµµ µË´Ï´Ù. Subject ¸¦ ÀÎÁõÇϱâ À§Çؼ­ ¹Ýµå½Ã CallbackHandler °¡ ÇÊ¿äÇÑ LoginModule ¿¡¼­´Â LoginException ¸¦ ½½·Î¿ì ÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. LoginModule ¿¡¼­´Â °øÀ¯ »óŸ¦ »ç¿ëÇØ, LoginModule °£¿¡ Á¤º¸³ª µ¥ÀÌÅ͸¦ °øÀ¯ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

LoginModule °íÀ¯ÀÇ ¿É¼ÇÀº °ü¸®ÀÚ³ª ·Î±×ÀÎ Configuration ³»¿¡¼­ ¼³Á¤µÈ À¯Àú°¡, ÀÌ LoginModule ¿ëÀ¸·Î ±¸¼ºÇÑ ¿É¼ÇÀ» ³ªÅ¸³À´Ï´Ù. ¿É¼ÇÀº LoginModule ÀÚü¿¡ ÀÇÇØ Á¤ÀǵǾîLoginModule ³»¿¡¼­ÀÇ µ¿ÀÛÀ» Á¦¾îÇÕ´Ï´Ù. ¿É¼ÇÀº ¿­¼è¿Í °ªÀÇ Æä¾î ( debug=true µî)¸¦ »ç¿ëÇØ Á¤ÀÇÇÕ´Ï´Ù. ¿­¼è¸¦ »ç¿ëÇØ °ªÀ» ÃëµæÇÒ ¼ö ÀÖ°Ô,LoginModule ¿¡¼­´Â ¿É¼ÇÀ» Map ·Î¼­ ÀúÀåÇÕ´Ï´Ù. LoginModule ·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Â ¿É¼ÇÀÇ ¼ö¿¡ »óÇÑÀº ¾ø½À´Ï´Ù.

È£ÃâÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀº ÀÎÁõ ÇÁ·Î¼¼½º¸¦ ´ÜÀÏ Á¶ÀÛÀ¸·Î °£ÁÖÇÕ´Ï´Ù. ±×·¯³ª,LoginModule ³»ÀÇ ÀÎÁõ ÇÁ·Î¼¼½º´Â 2 krÀÇ º°µµÀÎ ±¹¸éÀ¸·Î 󸮵˴ϴÙ. ÃÖÃÊÀÇ ±¹¸é¿¡¼­´Â LoginModule ÀÇ login ¸Þ¼Òµå°¡, LoginContext ÀÇ login ¸Þ¼Òµå¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù. LoginModule ÀÇ login ¸Þ¼Òµå¿¡¼­´Â ½ÇÁ¦ÀÇ ÀÎÁõ (¿¹¸¦ µé¾î ÆÐ½º¿öµåÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇØ °ËÁõÇÑ´Ù)À» ½ÇÇàÇØ, ÀÎÁõ »óŸ¦ ºñ°ø°³ »óÅ Á¤º¸·Î¼­ º¸Á¸ÇÕ´Ï´Ù. ³¡³ª¸é(ÀÚ), LoginModule ÀÇ login ¸Þ¼Òµå¿¡¼­´Â true (¼º°øÇßÀ» °æ¿ì) ¶Ç´Â false (¹«½ÃÇÒ ¼ö ¾ø´Â °æ¿ì)¸¦ µ¹·ÁÁÖ´ÂÁö LoginException ¸¦ ½½·Î¿ì ÇØ ½ÇÆÐ¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ½ÇÆÐÇßÀ» °æ¿ì,LoginModule ·Î ÀÎÁõÀ» Àç½ÃÇàÇϰųª À¯¿¹ Çϰųª ÇÏÁö ¸»¾Æ ÁÖ¼¼¿ä. ÀÌ·± Á¾·ùÀÇ Ã³¸®´Â ¾îÇø®ÄÉÀ̼ÇÀÌ ½Ç½ÃÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ÀÎÁõÀ» Àç½ÃÇàÇÏ´Â °æ¿ì´Â LoginModule ÀÇ login ¸Þ¼Òµå°¡ Çѹø ´õ ºÒ·Á °©´Ï´Ù.

2 ¹øÂ°ÀÇ ±¹¸é¿¡¼­´Â LoginContext ÀÇ ÀÎÁõ Àüü°¡ ¼º°øÇßÀ» °æ¿ì (°ü·ÃÇÏ´Â REQUIRED, REQUISITE, SUFFICIENT, OPTIONAL ÀÇ °¢ LoginModule ÀÌ ¼º°ø),LoginModule ÀÇ commit ¸Þ¼Òµå°¡ ºÒ·Á °©´Ï´Ù. LoginModule ÀÇ commit ¸Þ¼Òµå¿¡¼­´Â ºñ°ø°³·Î º¸Á¸µÈ »óŸ¦ È®ÀÎÇØ, ÀÚ½ÅÀÇ ÀÎÁõ¿¡ ¼º°øÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ ÆÇ´ÜÇÕ´Ï´Ù. LoginContext ÀüüÀÇ ÀÎÁõ¿¡ ¼º°øÇØ, LoginModule ÀÚüÀÇ ÀÎÁõ¿¡ ¼º°øÇßÀ» °æ¿ì´Â commit ¸Þ¼Òµå¿¡ ÀÇÇØ °ü·ÃÇÏ´Â Principal (ÀÎÁõµÈ ½Äº° Á¤º¸)¿Í Credential (¾Ïȣȭ¿­¼èµîÀÇ ÀÎÁõ µ¥ÀÌÅÍ)ÀÌ,LoginModule ³»¿¡ ÀÖ´Â Subject ¿Í °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù.

LoginContext ÀÇ ÀÎÁõ Àüü°¡ ½ÇÆÐÇßÀ» (REQUIRED, REQUISITE, SUFFICIENT, OPTIONAL ÀÇ °¢ LoginModule °¡ ¼º°øÇÏÁö ¾Ê¾Ò´Ù) °æ¿ì, °¢°¢ÀÇ LoginModule ¿¡ ´ëÇØ¼­ abort ¸Þ¼Òµå°¡ ºÒ·Á °©´Ï´Ù. ÀÌ °æ¿ì,LoginModule ´Â ¿ø·¡ º¸Á¸µÇ°í ÀÖ´ø ÀÎÁõ »óŸ¦ »èÁ¦ ¶Ç´Â ÆÄ±âÇÕ´Ï´Ù.

Subject ÀÇ ·Î±×¾Æ¿ô¿¡´Â 1 ±¹¸é¸¸ÀÌ Æ÷ÇԵ˴ϴÙ. LoginContext ´Â LoginModule ÀÇ logout ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù. LoginModule ÀÇ logout ¸Þ¼Òµå´Â ·Î±×¾Æ¿ô 󸮸¦ ½ÇÇàÇØ, Principal ³ª Credential ¸¦ Subject ·ÎºÎÅÍ »èÁ¦Çϰųª ¼¼¼Ç Á¤º¸¸¦ ±â·ÏÇÕ´Ï´Ù.

LoginModule ÀÇ ±¸ÇöÀº Àμö ¾øÀ½ÀÇ constructor¸¦ º¸°ü À¯ÁöÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. À̰Ϳ¡ ÀÇÇØ,LoginModule ¸¦ ·ÎµåÇϴ Ŭ·¡½º´Â LoginModule ¸¦ ÀνºÅϽºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

°ü·Ã Ç׸ñ:
LoginContext , Configuration

¸Þ¼ÒµåÀÇ °³¿ä
 boolean abort ()
          ÀÎÁõ ÇÁ·Î¼¼½º¸¦ ÁßÁöÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 2).
 boolean commit ()
          ÀÎÁõ ÇÁ·Î¼¼½º¸¦ À§Å¹ÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 2).
 void initialize (Subject  subject, CallbackHandler  callbackHandler, Map  sharedState, Map  options)
          ÀÌ LoginModule ¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.
 boolean login ()
          Subject ¸¦ ÀÎÁõÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 1).
 boolean logout ()
          Subject ¸¦ ·Î±×¾Æ¿ô ½ÃŰ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.
 

¸Þ¼ÒµåÀÇ »ó¼¼

initialize

public void initialize(Subject  subject,
                       CallbackHandler  callbackHandler,
                       Map  sharedState,
                       Map  options)
ÀÌ LoginModule ¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

ÀÌ LoginModule °¡ ÀνºÅϽºÈ­ µÇ°í ³ª¼­,LoginContext ¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù. ÀÌ ¸Þ¼ÒµåÀÇ ¸ñÀûÀº ÀÌ LoginModule ¸¦ °ü·Ã Á¤º¸·Î ÃʱâÈ­ÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ LoginModule ÀÌ sharedState ÆÄ¶ó¹ÌÅͳª options ÆÄ¶ó¹ÌÅÍ¿¡ ÀúÀåµÈ Á¤º¸¸¦ ÀνÄÇÒ ¼ö ¾ø´Â °æ¿ì, ±×·¯ÇÑ Á¤º¸´Â ¹«½ÃµË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
subject - ÀÎÁõ ´ë»óÀÇ Object

callbackHandler - ÃÖÁ¾ »ç¿ëÀÚ¿Í Åë½ÅÇÏ´Â (¿¹¸¦ µé¾î À¯Àú¸í°ú ÆÐ½º¿öµåÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇÑ´Ù) CallbackHandler

sharedState - ±¸¼ºµÈ °Í ¿ÜÀÇ LoginModule ¿Í °øÀ¯ÇÏ´Â »óÅÂ

options - ÀÌ LoginModule ¿ëÀÇ ·Î±×ÀÎ Configuration ·Î ÁöÁ¤µÈ ¿É¼Ç

login

public boolean login()
              throws LoginException 
Subject ¸¦ ÀÎÁõÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 1).

ÀÌ ¸Þ¼ÒµåÀÇ ±¸Çö¿¡¼­´Â Subject ¸¦ ÀÎÁõÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, À¯Àú¸íÀ̳ª ÆÐ½º¿öµå¶ó°í ÇÏ´Â Subject ÀÇ Á¤º¸ÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇÏ°í ³ª¼­, ÆÐ½º¿öµå¸¦ °ËÁõÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå¿¡¼­´Â ÀÎÁõÀÇ ½ÃÇà °á°ú¸¦, LoginModule ³»¿¡ ºñ°ø°³ »óÅ·μ­ º¸Á¸ÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÎÁõ¿¡ ¼º°øÇßÀ» °æ¿ì´Â true. ÀÌ LoginModule °¡ ¹«½ÃµÇ´Â °æ¿ì´Â false
¿¹¿Ü:
LoginException - ÀÎÁõ¿¡ ½ÇÆÐÇßÀ» °æ¿ì

commit

public boolean commit()
               throws LoginException 
ÀÎÁõ ÇÁ·Î¼¼½º¸¦ À§Å¹ÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 2).

LoginContext ÀÇ ÀÎÁõ Àüü°¡ ¼º°øÇßÀ» (°ü·ÃÇÏ´Â REQUIRED, REQUISITE, SUFFICIENT, OPTIONAL ÀÇ °¢ LoginModule °¡ ¼º°øÇÒ) °æ¿ì¿¡, ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °©´Ï´Ù.

ÀÌ LoginModule ÀÚüÀÇ ÀÎÁõ¿¡ ¼º°øÇßÀ» °æ¿ì´Â (login ¸Þ¼Òµå·Î º¸Á¸µÈ ºñ°ø°³ »óŸ¦ ÃëµæÇØ Á¶»çÇÑ´Ù), ÀÌ ¸Þ¼Òµå¿¡ ÀÇÇØ °ü·ÃÇÏ´Â Principal ¿Í Credential ÀÌ,LoginModule ³»¿¡ ÀÖ´Â Subject ¿¡ °ü·ÃÁöÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÌ LoginModule ÀÚüÀÇ ÀÎÁõ¿¡ ½ÇÆÐÇßÀ» °æ¿ì´Â ¿ø·¡ º¸Á¸µÇ°í ÀÖ´ø »óŸ¦ »èÁ¦ ¶Ç´Â ÆÄ±âÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¸Þ¼Òµå°¡ ¼º°øÇßÀ» °æ¿ì´Â true. ÀÌ LoginModule °¡ ¹«½ÃµÇ´Â °æ¿ì´Â false
¿¹¿Ü:
LoginException - À§Å¹¿¡ ½ÇÆÐÇßÀ» °æ¿ì

abort

public boolean abort()
              throws LoginException 
ÀÎÁõ ÇÁ·Î¼¼½º¸¦ ÁßÁöÇÏ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù (±¹¸é 2).

LoginContext ÀÇ ÀÎÁõ Àüü°¡ ½ÇÆÐÇßÀ» (°ü·ÃÇÏ´Â REQUIRED, REQUISITE, SUFFICIENT, OPTIONAL ÀÇ °¢ LoginModule °¡ ¼º°øÇÏÁö ¾Ê¾Ò´Ù) °æ¿ì¿¡, ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °©´Ï´Ù.

ÀÌ LoginModule ÀÚüÀÇ ÀÎÁõ¿¡ ¼º°øÇßÀ» °æ¿ì´Â (login ¸Þ¼Òµå·Î º¸Á¸µÈ ºñ°ø°³ »óŸ¦ ÃëµæÇØ Á¶»çÇÑ´Ù), ¿ø·¡ º¸Á¸µÇ°í ÀÖ´ø »óŰ¡ ÀÌ ¸Þ¼Òµå¿¡ ÀÇÇØ Ŭ¸° ¾÷ µË´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¸Þ¼Òµå°¡ ¼º°øÇßÀ» °æ¿ì´Â true. ÀÌ LoginModule °¡ ¹«½ÃµÇ´Â °æ¿ì´Â false
¿¹¿Ü:
LoginException - ÁßÁö¿¡ ½ÇÆÐÇßÀ» °æ¿ì

logout

public boolean logout()
               throws LoginException 
Subject ¸¦ ·Î±×¾Æ¿ô ½ÃŰ´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.

ÀÌ ¸Þ¼ÒµåÀÇ ±¸Çö¿¡¼­´Â Subject ÀÇ Principal ¿Í Credential ¸¦ »èÁ¦ ¶Ç´Â ÆÄ±âÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¸Þ¼Òµå°¡ ¼º°øÇßÀ» °æ¿ì´Â true. ÀÌ LoginModule °¡ ¹«½ÃµÇ´Â °æ¿ì´Â false
¿¹¿Ü:
LoginException - ·Î±×¾Æ¿ô¿¡ ½ÇÆÐÇßÀ» °æ¿ì

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.