JavaTM 2 Platform
Standard Ed. 5.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¸¦ Throw ÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. LoginModule ¿¡¼­´Â °øÀ¯ »óŸ¦ »ç¿ëÇØ, LoginModule °£¿¡ Á¤º¸³ª µ¥ÀÌÅ͸¦ °øÀ¯ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

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

È£ÃâÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀº, ÀÎÁõ ÇÁ·Î¼¼½º¸¦ ´ÜÀÏ Á¶ÀÛÀ̶ó°í º¾´Ï´Ù. ±×·¯³ª,LoginModule ³»ÀÇ ÀÎÁõ ÇÁ·Î¼¼½º´Â 2 °³ÀÇ º°µµÀÎ ±¹¸éÀ¸·Î 󸮵˴ϴÙ. ÃÖÃÊÀÇ ±¹¸é¿¡¼­´Â LoginModule login ¸Þ¼­µå°¡, LoginContext login ¸Þ¼­µå¿¡ ÇØ ºÒ·Á °©´Ï´Ù. LoginModule login ¸Þ¼­µå¿¡¼­´Â ½ÇÁ¦ÀÇ ÀÎÁõ (¿¹¸¦ µé¾î ÆÐ½º¿öµåÀÇ ÀÔ·ÂÀ» ¿ä±¸ÇØ °ËÁõÇÑ´Ù)À» ½ÇÇàÇØ, ÀÎÁõ »óŸ¦ ºñ°ø°³ »óÅ Á¤º¸·Î¼­ º¸Á¸ÇÕ´Ï´Ù. ³¡³ª¸é, LoginModule login ¸Þ¼­µå¿¡¼­´Â true (¼º°øÇßÀ» °æ¿ì) ¶Ç´Â false (¹«½ÃÇÒ ¼ö ¾ø´Â °æ¿ì)¸¦ µ¹·ÁÁÖ´ÂÁö,LoginException¸¦ Throw ÇØ ½ÇÆÐ¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ½ÇÆÐÇßÀ» °æ¿ì,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 ±¸ÇöÀº, Àμö ¾øÀ½ÀÇ »ý¼ºÀÚ¸¦ Á¦°øÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. À̰Ϳ¡ ÇØ,LoginModule¸¦ ·ÎµåÇϴ Ŭ·¡½º´Â LoginModule¸¦ ÀνºÅϽºÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

°ü·Ã Ç׸ñ:
LoginContext, Configuration

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

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

initialize

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

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

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

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

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

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

login

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

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

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

commit

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

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

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

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

abort

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

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

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

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

logout

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

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

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

JavaTM 2 Platform
Standard Ed. 5.0

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