|
SQL Agent ¶Ç´Â ´Ù¸¥ PC¿¡¼ SSIS ÆÐŰÁö°¡ ½ÇÇàµÇÁö ¾Ê´Â ¹®Á¦ (Updated 2007.05.14)
ÇѴ뼺
MS SQL Server MVP
¿¡À̵ðÄÁ¼³ÆÃ Ã¥ÀÓ ÄÁ¼³ÅÏÆ® | SQLLeader.com ¿î¿µÀÚ
Çö»ó
·ÎÄà PC ¶Ç´Â ¼¹ö¿¡¼´Â ÆÐŰÁö¸¦ ½ÇÇàÇϸé Á¦´ë·Î ¼öÇàÀÌ µÇ´Âµ¥, ÆÐŰÁö ÆÄÀÏ(*.dtsx)À» ¼¹ö¿¡ ÀúÀåÇÑ ÈÄ SQL Agent¿¡ µî·ÏÇÏ¿© ½ÇÇàÇϰųª ÆÐŰÁö°¡ ¸¸µé¾îÁø PC³ª ¼¹ö°¡ ¾Æ´Ñ ´Ù¸¥ »ç¿ëÀÚÀÇ È¯°æ¿¡¼ ÆÐŰÁö¸¦ ½ÇÇàÇÒ °æ¿ì ¿¡·¯°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½°ú °°ÀÌ ÆÐŰÁö°¡ °³¹ßµÈ ȯ°æ¿¡¼ Á÷Á¢ ÆÐŰÁö¸¦ ½ÇÇàÇϸé Á¤»óÀûÀ¸·Î ¼öÇàµË´Ï´Ù.
ÀÌ ÆÐŰÁö¸¦ SQL Agent¿¡ ´ÙÀ½°ú °°ÀÌ µî·ÏÇÑ ÈÄ ½ÇÇàÇÏ¸é ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù.
(Service Pack2 ÀÌÀüÀÇ ¿¡·¯ ¸Þ½ÃÁö)
(Service Pack2 ÀÌÈÄÀÇ ¿¡·¯ ¸Þ½ÃÁö)
¿øÀÎ
SSIS ÆÐŰÁöÀÇ ±âº» º¸¾È ¼öÁØÀÎ ProtectionLevelÀº EncryptSensitiveWithUserKey·Î ¼³Á¤ÀÌ µÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ °ªÀº ÆÐŰÁöÀÇ Á¦¾î È帧 ¿µ¿ª¿¡¼ ºó ¿µ¿ªÀ» Ŭ¸¯ÇÑ ÈÄ, ¿À¸¥ÂÊ¿¡ ÀÖ´Â ¼Ó¼º â¿¡¼ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
EncryptSensitiveWithUserKey´Â Áß¿äÇÑ µ¥ÀÌÅÍ(Sensitive Data)¸¦ ÇöÀç ÆÐŰÁö°¡ °³¹ßµÇ´Â »ç¿ëÀÚ ÇÁ·ÎÇÊ ±â¹ÝÀÇ Å°¸¦ ÀÌ¿ëÇÏ¿© ¾ÏÈ£È ÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù. ¿©±â¼ ¸»ÇÏ´Â Áß¿äÇÑ µ¥ÀÌÅͶõ DBÀÇ ¿¬°á Á¤º¸ Áß ÆÐ½º¿öµå, Web ¼ºñ½º ¿¬°áÀÇ ÆÐ½º¿öµå¿Í °°Àº °ªÀÔ´Ï´Ù. µû¶ó¼ À©µµ¿ì ÀÎÁõÀÌ ¾Æ´Ñ ÆÐ½º¿öµå¸¦ ÀÌ¿ëÇÑ OLE DB ¿¬°áÀ̳ª Web ¼ºñ½º ÀÛ¾÷ µîÀÌ Æ÷ÇÔµÈ °æ¿ì, Áß¿äÇÑ µ¥ÀÌÅͰ¡ ÆÐŰÁö¿¡ Æ÷ÇÔµÈ »óÅÂÀ̱⠶§¹®¿¡ ÆÐŰÁö°¡ ¾ÏÈ£È µË´Ï´Ù.
¼öµ¿À¸·Î ½ÇÇàÇÒ ¶§¿¡´Â ÆÐŰÁö°¡ ¾ÏÈ£ÈµÈ °³ÀΠŰ¿Í ½ÇÇà ȯ°æÀÇ °³ÀÎ۰¡ µ¿ÀÏÇϱ⠶§¹®¿¡ Á¤»óÀûÀ¸·Î ½ÇÇàµË´Ï´Ù. ÇÏÁö¸¸, ¼¹ö·Î ÆÄÀÏÀ» º¹»çÇÑ ÈÄ, SQL Agent¿¡¼ ½ÇÇàÇϰųª, ÇöÀçÀÇ °³¹ß PC°¡ ¾Æ´Ñ ´Ù¸¥ °÷¿¡ ÆÐŰÁö¸¦ º¹»çÇØ¼ ¼öÇàÇÏ°Ô µÇ¸é, ÆÐŰÁö°¡ ¾ÏÈ£ÈµÈ °³ÀÎŰ¿Í ½ÇÇà ȯ°æÀÇ °³ÀÎ۰¡ ´Ù¸£±â ¶§¹®¿¡ ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù.
ÇØ°á ¹æ¾È
[¹æ¹ý 1] ÆÐŰÁöÀÇ ProtectionLevelÀ» EncryptSensitiveWithUserKey ´ë½Å, EncryptSensitiveWithPassword ¶Ç´Â EncryptAllWithPassword·Î ¼³Á¤ÇÑ ÈÄ, PackagePassword Ç׸ñ¿¡ ¾ÏÈ£¸¦ ¼³Á¤ÇÕ´Ï´Ù.
ÀÌ·± ¹æ½ÄÀ¸·Î ÀúÀåÇÏ°Ô µÇ¸é ÆÐŰÁöÀÇ Áß¿äÇÑ Á¤º¸ ¶Ç´Â ÆÐŰÁö Á¤º¸ Àüü°¡ °³ÀÎŰ ´ë½Å ¾ÏÈ£¸¦ ±â¹ÝÀ¸·Î ¾ÏÈ£È ½ÃŰ°Ô µË´Ï´Ù.
ÀÌÈÄ, SQL Agent¿¡¼ ÀÌ ÆÐŰÁö¸¦ ½ÇÇàÇϱâ À§ÇØ ¼³Á¤ÇÏ´Â ´Ü°è¿¡¼´Â ´ÙÀ½°ú °°Àº ¾ÏÈ£ ÀԷ âÀÌ ³ªÅ¸³³´Ï´Ù.
(ÀÏ¹Ý ÅÇ¿¡¼ ½ÇÇàÇÒ ÆÐŰÁö¸¦ ÁöÁ¤ÇÑ ÈÄ, ´Ù¸¥ ÅÇÀ» Ŭ¸¯ÇÒ °æ¿ì ³ªÅ¸³³´Ï´Ù.)
À§¿Í °°Àº ÆÐŰÁö ¾ÏÈ£ ¼³Á¤ â¿¡¼ ÁöÁ¤ÇÑ ¾ÏÈ£¸¦ ÀÔ·ÂÇÑ ÈÄ, ÆÐŰÁö¸¦ ½ÇÇàÇϸé Á¤»óÀûÀ¸·Î ¼öÇàµË´Ï´Ù.
[¹æ¹ý 2] ÆÐŰÁöÀÇ ProtectionLevelÀ» ServerStorage·Î Àӽà º¯°æÇÑ ÈÄ, ÆÐŰÁö¸¦ ½ÇÇàÇÒ SQL Server¿¡ ÀúÀå½Ãŵ´Ï´Ù.
ProtectionLevelÀ» ServerStorage·Î ¼³Á¤ÇÏ´Â °ÍÀº ÆÐŰÁöÀÇ º¸¾È°ú °ü·ÃµÈ »çÇ×À» SQL Server¿¡°Ô °ü¸®Çϵµ·Ï ³Ñ±â´Â °ÍÀÔ´Ï´Ù. ÀÌ ¶§, ÁÖÀÇÇÒ °ÍÀº ÀÌ ¼³Á¤À¸·Î º¯°æÇÑ °æ¿ì¿¡´Â ÆÐŰÁö´Â ÆÄÀÏ ÇüÅ·ΠÀúÀåÇÒ ¼ö ¾ø°í SQL Server·Î¸¸ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.
°³¹ß ȸéÀÇ »ó´Ü ÆÄÀÏ(F) ¸Þ´º Áß, ´Ù¸¥ À̸§À¸·Î ¡¦.dtsxÀÇ º¹»çº» ÀúÀå(C) ¸Þ´º¸¦ Ŭ¸¯ÇÕ´Ï´Ù.
ÆÐŰÁö À§Ä¡¸¦ SQL Server·Î ÁöÁ¤ÇÑ ÈÄ, ÀÎÁõ À¯ÇüÀ» ¼³Á¤ÇÕ´Ï´Ù. Windows ÀÎÁõÀ̳ª SQL Server ÀÎÁõÀ̳ª »ó°ü¾øÀÌ ¿¬°áÇÒ ¼ö ÀÖ´Â ÀûÀýÇÑ ±ÇÇÑ(msdbÀÇ db_dtsadmin ¿ªÇÒ ¶Ç´Â db_dtsltduser ¿ªÇÒ)ÀÌ ÀÖ´Â °èÁ¤À¸·Î ÁöÁ¤ÇÏ¸é µË´Ï´Ù. ÆÐŰÁö °æ·Î(K) ºÎºÐ¿¡¼´Â ÀúÀåÇÒ ÆÐŰÁö ¸íÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¿·ÀÇ ... ¹öưÀ» ´·¯ Æú´õ Çü½Ä°ú °°Àº ÀûÀýÇÑ °æ·Î¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
´Ü, ÀÌ ¶§ SQL Server¿¡ ÀúÀå½ÃŲ ÈÄ, ´Ù½Ã ·ÎÄà ÆÄÀÏ·Î ÀúÀåÇÒ °æ¿ì ÀúÀåÀÌ µÇÁö ¾Ê½À´Ï´Ù. ÀÌ´Â ¾Õ¼ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ ProtectionLevelÀ» ServerStorage·Î ¼³Á¤ÇÏ¿´±â ¶§¹®ÀÔ´Ï´Ù. µû¶ó¼ ÆÐŰÁö¸¦ º°µµÀÇ ÆÄÀÏ·Î ÀúÀåÇϱâ À§Çؼ´Â ProtectionLevelÀÇ ¼Ó¼º°ªÀ» ServerStorage ÀÌ¿ÜÀÇ °ªÀ¸·Î º¯°æÇÏ¼Å¾ß ÇÕ´Ï´Ù.
ÀÌÈÄ, SQL Agent¿¡¼ ÆÐŰÁö¸¦ ½ÇÇàÇÏ´Â ÀÛ¾÷À» µî·ÏÇÒ °æ¿ì, ´ÙÀ½ ±×¸²°ú °°ÀÌ ÆÐŰÁö ¿øº»À» SQL Server·Î ÁöÁ¤ÇÑ ÈÄ, ÀúÀåÇÑ ÆÐŰÁö¸¦ ¼±ÅÃÇÏ¸é µË´Ï´Ù.
[¹æ¹ý 3] SQL AgentÀÇ ÀÛ¾÷ Áß, µ¥ÀÌÅÍ ¿øº» ÅÇ¿¡¼ DB ¿¬°á¿¡ ´ëÇÑ Password¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
ÆÐŰÁö¸¦ ½ÇÇàÇÏ´Â ÀÛ¾÷ ´Ü°è Áß, µ¥ÀÌÅÍ ¿øº» ÅÇÀ» Ŭ¸¯ÇÏ¸é ÆÐŰÁö¿¡¼ ÀÌ¿ëÇÏ´Â µ¥ÀÌÅÍ ¿øº»ÀÌ Ç¥½ÃµË´Ï´Ù. ÀÌ ¶§, SQL ÀÎÁõÀ» »ç¿ëÇÏ´Â DB ¿¬°áÀ» ¼±ÅÃÇÑ ÈÄ, ¿¬°á ¹®ÀÚ¿ ºÎºÐ¿¡ Password=... ±¸¹®À» Ãß°¡ÇÕ´Ï´Ù.
¿¹) Data Source=dshan\ss2005;User ID=sa;Initial Catalog=tempdb;Provider=SQLOLEDB.1;Auto Translate=False;Password=dbpassword
[¹æ¹ý 4] DB Á¤º¸¸¦ Æ÷ÇÔÇÏ´Â ±¸¼º ÆÄÀÏÀ» ¸¸µç ÈÄ, À̸¦ ±¸¼º ÅÇ¿¡¼ ÁöÁ¤ÇÕ´Ï´Ù.
ÆÐŰÁö ³»ÀÇ ¸ðµç °³Ã¼¿¡ ´ëÇÑ ¼Ó¼ºÀº ±¸¼º À̶ó´Â ±â´ÉÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ ±¸¼º Á¤º¸´Â ÆÄÀÏ·Î ÀúÀåÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
(±¸¼º¿¡ °üÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ ¸µÅ©ÀÇ °Á¸¦ Âü°íÇϽñ⠹ٶø´Ï´Ù.
http://www.sqlleader.com/mboard.asp?exec=view&strBoardID=SS2005SSIS&intSeq=454)
ÆÐŰÁö¿¡¼ »ç¿ëÇÏ´Â DB ¿¬°á Á¤º¸¸¦ º°µµÀÇ ±¸¼º ÆÄÀÏ·Î ¸¸µç ÈÄ¿¡ ÀÌ ±¸¼º ÆÄÀÏÀ» ÁöÁ¤ÇÏ´Â ½ÄÀ¸·Î ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº ±¸¼º ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
¿¹) D:\dbconnectionstring.dtsconfig ¶ó´Â À̸§À¸·Î ±¸¼º ÆÄÀÏ »ý¼º
|
<?xml version="1.0"?>
<DTSConfiguration>
<Configuration ConfiguredType="Property" Path="\Package.Connections[.\ss2005.tempdb].Properties[ConnectionString]" ValueType="String">
<ConfiguredValue>Data Source=dshan\ss2005;User ID=sa;Initial Catalog=tempdb;Provider=SQLOLEDB.1;Auto Translate=False;Password=dbpassword;</ConfiguredValue>
</Configuration>
</DTSConfiguration> |
ÀÌ ±¸¼º ÆÄÀÏÀº ¡°.\ss2005.tempdb¡± ¶ó´Â ¿¬°á¿¡ ´ëÇØ ConnectionString Á¤º¸¸¦ °¡Áö°í ÀÖ´Â ±¸¼º ÆÄÀÏÀÔ´Ï´Ù. ÀÌ ±¸¼º ÆÄÀÏÀ» SQL AgentÀÇ ÀÛ¾÷ ´Ü°è ¼³Á¤ Áß ±¸¼º ºÎºÐ¿¡¼ Ãß°¡ÇÕ´Ï´Ù.
ÀÌ ¹æ½ÄÀº ÇÁ·ÎÁ§Æ® ´ÜÀ§ÀÇ ¿©·¯ ÆÐŰÁö°¡ Á¸ÀçÇϸç, °¢ ÆÐŰÁö¿¡¼ °°Àº DB Á¤º¸¸¦ ÀÌ¿ëÇÒ ¶§ ÀϰýÀûÀ¸·Î °ü¸®ÇÒ ¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù. ¶ÇÇÑ, Á÷Á¢ µ¥ÀÌÅÍ ¿øº» ºÎºÐ¿¡¼ password¸¦ ÁöÁ¤ÇØÁÖ´Â ´ë½Å º°µµÀÇ ÆÄÀÏ¿¡ ±â·ÏÇÔÀ¸·Î½á DB PasswordÀÇ ³ëÃâÀ» ¹æÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. (ÆÄÀÏ¿¡ ´ëÇÑ Á¢±Ù ±ÇÇÑÀº SQL Agent ½ÇÇà °èÁ¤ ¹× Administrator¿¡°Ô¸¸ ºÎ¿©Çϵµ·Ï Windows ȯ°æ¿¡¼ ¼³Á¤ÇÏ¸é µË´Ï´Ù.)
[¹æ¹ý 5] ÆÐŰÁöÀÇ ProtectionLevelÀ» DontSaveSensitive·Î º¯°æÇÑ ÈÄ, DB ¿¬°á Á¤º¸ÀÇ °ªÀº ½ÄÀ» ÀÌ¿ëÇÏ¿© ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ¸·Î ÀúÀåÇÕ´Ï´Ù. ¿©±â¼ ProtectionLevelÀ» DontSaveSensitive·Î ¼³Á¤ÇÑ °ÍÀº ´Ù¸¥ »ç¿ëÀÚ°¡ ÆÐŰÁö¸¦ ¿¾úÀ» ¶§¿¡µµ º¸¾È °æ°í¸¦ ¹ß»ý½ÃŰÁö ¾Êµµ·Ï Çϱâ À§ÇÔÀÔ´Ï´Ù.
¿ì¼± ÆÐŰÁöÀÇ º¸¾È ¼öÁØÀ» DontSaveSensitive·Î º¯°æÇÕ´Ï´Ù.
¿¬°á °ü¸®ÀÚ¿¡¼ SQL ÀÎÁõÀ» ÀÌ¿ëÇÏ´Â ¿¬°áÀ» ¼±ÅÃÇÑ ÈÄ, ¼Ó¼ºÀÇ Expression ºÎºÐ¿¡¼ ... ¹öưÀ» Ŭ¸¯ÇÏ¿© ÇØ´ç ¿¬°áÀÇ ¼Ó¼º¿¡ ´ëÇÑ ½ÄÀ» ÁöÁ¤ÇÕ´Ï´Ù.
¼Ó¼º ½Ä ÆíÁý±â¿¡¼ ConnectionString ¼Ó¼ºÀ» ¼±ÅÃÇϰí ÇØ´ç ¿¬°á¿¡ ´ëÇÑ ¿¬°á ¹®ÀÚ¿À» Á÷Á¢ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¶§, ¿¬°á ¹®ÀÚ¿¿¡ Password¸¦ Æ÷ÇÔÇØ¼ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
[Âü°í] Á÷Á¢ ½ÄÀ¸·Î ÁöÁ¤ÇÏ´Â ´ë½Å, ¿¬°á ¹®ÀÚ¿À» Æ÷ÇÔÇÏ´Â StringÇü º¯¼ö¸¦ ÁöÁ¤Çϰí, ¼Ó¼º ½Ä¿¡¼ ÀÌ º¯¼ö¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
º» °Ô½ÃÆÇ¿¡ ½Ç¸° ±ÛÀº ´©±¸³ª º¹»çÇϼż ÀÌ¿ëÇϼŵµ µÇÁö¸¸, ¹Ýµå½Ã Ãâó(SQLLeader.com) ¹× ¸µÅ©¸¦ ¹àÇôÁÖ¼Å¾ß ÇÕ´Ï´Ù.
|