¡¾·±ÌåÖÐÎÄ¡¿
¡¾ÉèΪÊ×Ò³¡¿
¡¾¼ÓÈëÊղء¿
µ±Ç°Î»Öãº.Net¼¼ÊõÊ×Ò³ >> Asp.Net¿ª·¢ >> ÇáËɼÓÃÜASP.NET 2.0 Web³ÌÐòÅäÖÃÐÅÏ¢

ÇáËɼÓÃÜASP.NET 2.0 Web³ÌÐòÅäÖÃÐÅÏ¢

2007-10-15 08:00:00  ×÷Õߣº  À´Ô´£º»¥ÁªÍø  ä¯ÀÀ´ÎÊý£º0  ÎÄ×Ö´óС£º¡¾´ó¡¿¡¾ÖС¿¡¾Ð¡¡¿
¼ò½é£ºÒ»¡¢ ¼ò½é ¡¡¡¡µ±´´½¨ASP.NET 2.0Ó¦ÓóÌÐòʱ£¬¿ª·¢Õßͨ³£¶¼°ÑÃô¸ÐµÄÅäÖÃÐÅÏ¢´æ´¢ÔÚWeb.configÎļþÖС£×îµäÐ͵ÄʾÀý¾ÍÊÇÊý¾Ý¿âÁ¬½Ó×Ö·û´®£¬µ«ÊǰüÀ¨ÔÚWeb.config ÎļþÖÐµÄÆäËüÃô¸ÐÐÅÏ¢»¹°üÀ¨SMTP·þÎñÆ÷Á¬½ÓÐÅÏ¢ºÍ...

Ò»¡¢ ¼ò½é

¡¡¡¡µ±´´½¨ASP.NET 2.0Ó¦ÓóÌÐòʱ£¬¿ª·¢Õßͨ³£¶¼°ÑÃô¸ÐµÄÅäÖÃÐÅÏ¢´æ´¢ÔÚWeb.configÎļþÖС£×îµäÐ͵ÄʾÀý¾ÍÊÇÊý¾Ý¿âÁ¬½Ó×Ö·û´®£¬µ«ÊǰüÀ¨ÔÚWeb.config ÎļþÖÐµÄÆäËüÃô¸ÐÐÅÏ¢»¹°üÀ¨SMTP·þÎñÆ÷Á¬½ÓÐÅÏ¢ºÍÓû§Æ¾Ö¤Êý¾Ý£¬µÈµÈ¡£¾¡¹ÜĬÈÏÇé¿öÏ¿ÉÒÔÅäÖÃASP.NETÒԾܾøËùÓжÔÀ©Õ¹ÃûΪ.configµÄÎļþ×ÊÔ´µÄHTTPÇëÇó£»µ«ÊÇ£¬Èç¹ûÒ»¸öºÚ¿ÍÄܹ»´æÈ¡ÄãµÄweb·þÎñÆ÷µÄÎļþϵͳµÄ»°£¬ÄÇô£¬Web.configÖеÄÃô¸ÐÐÅÏ¢ÈÔÈ»Äܹ»±»ÇÔÈ¡¡£ÀýÈ磬ҲÐíÄ㲻СÐÄÔÊÐíÄäÃûFTP´æÈ¡ÄãµÄÍøÕ¾£¬ÕâÑùÒÔÀ´¾ÍÔÊÐíÒ»¸öºÚ¿Í¼òµ¥µØÍ¨¹ýFTPЭÒéÏÂÔØÄãµÄWeb.configÎļþ¡£

¡¡¡¡ÐҺã¬Í¨¹ýÔÊÐí¼ÓÃÜWeb.configÎļþÖÐÑ¡ÔñµÄ²¿·Ö£¬ÀýÈ磼connectionStrings£¾½Ú£¬»òÄãµÄÓ¦ÓóÌÐòʹÓõÄһЩ¶¨ÖÆconfig½Ú£¬ ASP.NET 2.0ÓÐÖúÓÚ»º½âÕâ¸öÎÊÌâ¡£ÅäÖò¿·ÖÄܹ»ºÜÈÝÒ×µØÊ¹ÓñàÂë»òASPnet_regiis.exe£¨Ò»¸öÃüÁîÐгÌÐò£©Ô¤ÒÔ¼ÓÃÜ¡£Ò»µ©±»¼ÓÃÜ£¬ Web.configÉèÖü´¿É±Ü¿ª"»¢ÊÓíñíñ"µÄÑÛ¾¦¡£¶øÇÒ£¬µ±ÒÔ±à³Ì·½Ê½´ÓÄãµÄASP.NETÒ³ÃæÖмìË÷¼ÓÃܵÄÅäÖÃÉèÖÃʱ£¬ASP.NET»á×Ô¶¯µØ½âÃÜËü¶ÁÈ¡µÄ¼ÓÃܲ¿·Ö¡£¼òÑÔÖ®£¬Ò»µ©ÅäÖÃÐÅÏ¢±»¼ÓÃÜ£¬Äã¾Í²»ÐèÒªÔÚÄãµÄÓ¦ÓóÌÐòÖбàдÈÎºÎÆäËü´úÂë»ò²ÉÈ¡ÈκνøÒ»²½µÄÐÐΪÀ´Ê¹ÓøüÓÃÜÊý¾Ý¡£

¡¡¡¡ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«ÌÖÂÛÈçºÎÒÔ±à³Ì·½Ê½¼ÓÃܺͽâÃܸÃÅäÖÃÉèÖò¿·Ö£¬²¢ÇÒ·ÖÎöÒ»ÏÂÃüÁîÐгÌÐòASPnet_regiis.exeµÄʹÓá£È»ºó£¬ÎÒÃǽ«ÆÀ¹ÀASP.NET 2.0ÌṩµÄ¼ÓÃÜÑ¡Ïî¡£ÁíÍ⣬»¹»á¼ò¶ÌµØÌÖÂÛÒ»ÏÂÈçºÎ¼ÓÃÜASP.NET°æ±¾1.xÖеÄÅäÖÃÐÅÏ¢¡£

¡¡¡¡¶þ¡¢ ǰÌá

¡¡¡¡ÔÚÎÒÃÇ¿ªÊ¼Ì½ÌÖÈçºÎ¼ÓÃÜASP.NET 2.0ÅäÖÃÐÅϢ֮ǰ£¬Çë¼ÇסÏÂÁм¸µã£º

¡¡¡¡1. ËùÓÐÐÎʽµÄ¼ÓÃܶ¼»á°üº¬Ä³ÖÖÃØÃÜ£¬¶øµ±¼ÓÃܺͽâÃÜÊý¾Ýʱ¶¼ÒªÊ¹ÓÃÕâÒ»ÃØÃÜ¡£¶Ô³Æ¼ÓÃÜËã·¨ÔÚ¼ÓÃܺͽâÃÜÒ»¸öÏûϢʱʹÓÃͬһ°ÑÃÜÔ¿£¬¶ø·Ç¶Ô³Æ¼ÓÃÜËã·¨¶ÔÓÚ¼ÓÃܺͽâÃÜȴʹÓò»Í¬µÄÃÜÔ¿¡£ÎÞÂÛʹÓÃÄÄÖÖ¼¼Êõ£¬×îÖØÒªµÄ»¹ÊÇ¿´½âÃÜÃÜÔ¿µÄ°²È«±£´æ³Ì¶È¡£

¡¡¡¡2. ASP.NET 2.0ÌṩµÄÅäÖüÓÃܼ¼ÊõµÄÉè¼ÆÄ¿µÄÔÚÓÚ£¬Á¦Í¼×èÖ¹Äܹ»ÒÔijÖÖ·½Ê½¼ìË÷ÄãµÄÅäÖÃÎļþµÄºÚ¿ÍµÄÈëÇÖ¡£ÆäʵÏÖ˼ÏëÊÇ£¬Èç¹ûÔںڿ͵ļÆËã»úÉÏÓÐÄãµÄ Web.configÎļþ£»ÄÇô£¬Ëû²»ÄÜÆÆ½â¸Ã¼ÓÃܵIJ¿·Ö¡£È»¶ø£¬µ±web·þÎñÆ÷ÉϵÄÒ»¸öASP.NETÒ³Ãæ´ÓÒ»¸ö¼ÓÃܵÄÅäÖÃÎļþÇëÇóÐÅϢʱ£¬¸ÃÊý¾Ý±ØÐë±»½âÃܲÅÄÜʹÓÃ(²¢ÇÒÕâʱ²»ÐèÒªÄã±àдÈκδúÂë)¡£Òò´Ë£¬Èç¹ûÒ»¸öºÚ¿ÍÄܹ»°ÑÒ»¸öÄܹ»²éѯÅäÖÃÎļþ²¢ÏÔʾËüµÄ½á¹ûµÄASP.NET webÒ³ÃæÉÏ´«µ½ÄãµÄϵͳ£¬ÄÇô£¬Ëû¾ÍÄܹ»ÒÔÆÕͨÎı¾·½Ê½¹Û¿´±»¼ÓÃܵÄÉèÖá£(ÏêϸÇé¿öÇë²Î¿¼±¾ÎÄÌṩµÄʾÀýASP.NETÒ³Ãæ£¬ËüչʾÁ˼ÓÃܺͽâÃÜ Web.configÎļþÖи÷²¿·ÖµÄ·½·¨£»ÈçÄãËù¼û£¬Ò»¸öASP.NETÒ³ÃæÄܹ»´æÈ¡(²¢ÏÔʾ)¸Ã¼ÓÃÜÊý¾ÝµÄÆÕͨÎı¾ÐÎʽ)

¡¡¡¡3. ¼ÓÃܺͽâÃÜÅäÖÃÐÅÏ¢ÐèÒª¸¶³öÒ»¶¨µÄÐÔÄÜ´ú¼Û¡£Òò´Ë£¬Í¨³£Êǽö¼ÓÃܰüº¬Ãô¸ÐÐÅÏ¢µÄÅäÖò¿·Ö¡£±ÈÈç˵£¬¿ÉÄܲ»ÐèÒª¼ÓÃÜ£¼compilation£¾»ò£¼authorization£¾ÅäÖò¿·Ö¡£

¡¡¡¡Èý¡¢ ¼ÓÃܺÎÖÖÐÅÏ¢

¡¡¡¡ÔÚÎÒÃÇ·ÖÎöÈçºÎ¼ÓÃÜASP.NET 2.0ÅäÖÃÐÅϢǰ£¬ÈÃÎÒÃÇÊ×ÏÈÀ´¿´Ò»ÏÂÄܹ»¼ÓÃÜʲôÅäÖÃÐÅÏ¢¡£Ê¹ÓÃ.NET¿ò¼Ü2.0ÌṩµÄ¿â£¬¿ª·¢ÈËÔ±Äܹ»¼ÓÃÜÔÚWeb.config»ò machine.configÎļþÖеľø´ó¶àÊýµÄÅäÖò¿·Ö¡£ÕâЩÅäÖò¿·ÖÊÇһЩ×÷Ϊ£¼configuration£¾»ò£¼system.web£¾ÔªËØ×Ó½áµãµÄXMLÔªËØ¡£ÀýÈ磬ÏÂÃæµÄʾÀýWeb.configÎļþÖк¬ÓÐÈý¸öÅäÖÃÉèÖã¬ÏÔʽµØ¶¨ÒåΪ£º

£¼connectionStrings£¾£¬£¼compilation£¾ºÍ£¼authentication£¾¡£

£¼?XML version="1.0"?£¾

£¼configuration XMLns="http://schemas.microsoft.com/.NetConfiguration/v2.0"£¾

£¼connectionStrings£¾

¡¡£¼add name="MembershipConnectionString" connectionString="connectionString"/£¾

£¼/connectionStrings£¾

£¼system.web£¾

¡¡£¼compilation debug="true"/£¾

¡¡£¼authentication mode="Forms" /£¾

£¼/system.web£¾

¡¡¡¡ÕâЩ½ÚÖеÄÿһ¸ö¶¼¿ÉÒÔÓÐÑ¡ÔñµØ±»¼ÓÃÜ£¬»òÕßͨ¹ý±à³Ì·½Ê½»òͨ¹ýASPnet_regiis.exe£¨Ò»¸öÃüÁîÐй¤¾ß£©ÊµÏÖ¡£µ±±»¼ÓÃÜʱ£¬¼ÓÃܺóµÄÎı¾Ö±½Ó´æ´¢ÔÚÅäÖÃÎļþÖС£ÀýÈ磬Èç¹ûÎÒÃÇÒª¼ÓÃÜÉÏÃæµÄ£¼connectionStrings£¾½Ú£¬ÄÇô½á¹ûWeb.configÎļþ¿ÉÄÜ¿´ÆðÀ´ÈçÏÂËùʾ£º (×¢Ò⣺ƪ·ùËùÏÞ£¬ÎÒÃÇÊ¡ÂÔÁËÒ»´ó¿é£¼CipherValue£¾)

£¼?XML version="1.0"?£¾

£¼configuration XMLns="http://schemas.microsoft.com/.NetConfiguration/v2.0"£¾

£¼connectionStrings configProtectionProvider="DataProtectionConfigurationProvider"£¾

£¼EncryptedData£¾

¡¡£¼CipherData£¾

¡¡¡¡£¼CipherValue£¾AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAed...GicAlQ==£¼/CipherValue£¾

¡¡£¼/CipherData£¾

£¼/EncryptedData£¾

£¼/connectionStrings£¾

£¼system.web£¾

¡¡£¼compilation debug="true"/£¾

¡¡£¼authentication mode="Forms" /£¾

£¼/system.web£¾

¡¡¡¡ÁíÍ⣬´æÔÚһЩÄã²»ÄÜʹÓÃÕâ¸ö¼¼Êõ¼ÓÃܵÄÅäÖò¿·Ö£º

¡¡¡¡· £¼processModel£¾

¡¡¡¡· £¼runtime£¾

¡¡¡¡· £¼mscorlib£¾

¡¡¡¡· £¼startup£¾

¡¡¡¡· £¼system.runtime.remoting£¾

¡¡¡¡· £¼configProtectedData£¾

¡¡¡¡· £¼satelliteassemblies£¾

¡¡¡¡· £¼cryptographySettings£¾

¡¡¡¡· £¼cryptoNameMapping£¾

¡¡¡¡· £¼cryptoClasses£¾

¡¡¡¡ÎªÁ˼ÓÃÜÕâЩÅäÖò¿·Ö£¬Äã±ØÐë¼ÓÃÜÕâЩֵ²¢°ÑËü´æ´¢ÔÚ×¢²á±íÖС£´æÔÚÒ»¸öASPnet_setreg.exeÃüÁîÐй¤¾ß¿ÉÒÔ°ïÖúÄãʵÏÖÕâÒ»¹ý³Ì£»ÎÒÃǽ«ÔÚ±¾ÎĺóÃæÌÖÂÛÕâ¸ö¹¤¾ß¡£

¡¡¡¡¡¾Ìáʾ¡¿Web.ConfigºÍMachine.ConfigÖ®Çø±ð£º

¡¡¡¡Web.configÎļþÖ¸¶¨Õë¶ÔÒ»¸öÌØ¶¨µÄwebÓ¦ÓóÌÐòµÄÅäÖÃÉèÖ㬲¢ÇÒλÓÚÓ¦ÓóÌÐòµÄ¸ùĿ¼Ï£»¶ømachine.configÎļþÖ¸¶¨ËùÓеÄλÓÚ¸Ãweb·þÎñÆ÷ÉϵÄÕ¾µãµÄÅäÖÃÉèÖ㬲¢ÇÒλÓÚ$WINDOWSDIR$\Microsoft.Net\Framework\Version\ CONFIGĿ¼Ï¡£

ËÄ¡¢¼ÓÃÜÑ¡Ïî

¡¡¡¡¿ª·¢ÈËÔ±¿ÉÒÔʹÓÃASP.NET 2.0Ìṩ³ÌÐòÄ£ÐÍÀ´±£»¤ÅäÖýÚÐÅÏ¢£¬ÕâÔÊÐíÈκÎʵÏÖ¶¼¿ÉÒÔ±»ÎÞ·ìµØ²åÈëµ½¸ÃAPIÖС£.NET¿ò¼Ü2.0ÖÐÌṩÁËÁ½¸öÄÚÖõÄÌṩ³ÌÐòÓÃÓÚ±£»¤ÅäÖýÚÐÅÏ¢£º

¡¡¡¡· WindowsÊý¾Ý±£»¤API(DPAPI)Ìṩ³ÌÐò(DataProtectionConfigurationProvider)£ºÕâ¸öÌṩ³ÌÐòʹÓà WindowsÄÚÖõÄÃÜÂëѧ¼¼ÊõÀ´¼Ó½âÃÜÅäÖýڡ£Ä¬ÈÏÇé¿öÏ£¬Õâ¸öÌṩ³ÌÐòʹÓñ¾»úµÄÃÜÔ¿¡£Ä㻹Äܹ»Ê¹ÓÃÓû§ÃÜÔ¿£¬µ«ÊÇÕâÒªÇó½øÐÐÒ»µã¶¨ÖÆ¡£

¡¡¡¡· RSA±£»¤µÄÅäÖÃÌṩ³ÌÐò(RSAProtectedConfigurationProvider)£ºÊ¹ÓÃRSA¹«Ô¿¼ÓÃÜÀ´¼Ó½âÃÜÅäÖýڡ£Ê¹ÓÃÕâ¸öÌṩ³ÌÐò£¬ÄãÐèÒª´´½¨´æ´¢ÓÃÓÚ¼Ó½âÃÜÅäÖÃÐÅÏ¢µÄ¹«Ô¿ºÍ˽ԿµÄÃÜÔ¿ÈÝÆ÷¡£ÄãÄܹ»ÔÚÒ»¸ö¶à·þÎñÆ÷³¡ËùÏÂʹÓÃRSA£¬ÕâÖ»Òª´´½¨¿ÉÊä³öµÄÃÜÔ¿ÈÝÆ÷¼´¿É¡£

µ±È»£¬Èç¹ûÐèÒªµÄ»°£¬Ä㻹Äܹ»´´½¨×Ô¼ºµÄ±£»¤ÉèÖÃÌṩ³ÌÐò¡£

¡¡¡¡ÔÚ±¾ÎÄÖУ¬ÎÒÃǽöÌÖÂÛʹÓÃDPAPIÌṩ³ÌÐòʹÓûúÆ÷¼¶ÃÜÔ¿¡£µ½Ä¿Ç°ÎªÖ¹£¬ÕâÊÇ×î¼òµ¥µÄ·½·¨£¬ÒòΪËü²»ÇëÇó´´½¨ÈκÎÃÜÔ¿»òÃÜÔ¿ÈÝÆ÷¡£µ±È»£¬ÆäÏû¼«µÄÒ»ÃæÔÚÓÚ£ºÒ»¸ö¼ÓÃܵÄÅäÖÃÎļþ½öÄܹ»ÓÃÓÚÊ×ÏÈʵÏÖ¼ÓÃܵÄweb·þÎñÆ÷ÉÏ£»¶øÇÒ£¬Ê¹ÓûúÆ÷ÃÜÔ¿½«ÔÊÐí¼ÓÃܵÄÎı¾Äܹ»±»web·þÎñÆ÷ÉϵÄÈκÎÍøÕ¾Ëù½âÃÜ¡£

¡¡¡¡Îå¡¢ÒÔ±à³Ì·½Ê½¼ÓÃÜÅäÖò¿·Ö

¡¡¡¡System.Configuration.SectionInformationÀà¶ÔÒ»¸öÅäÖýڵÄÃèÊö½øÐÐÁ˳éÏó¡£ÎªÁ˼ÓÃÜÒ»¸öÅäÖýڣ¬Ö»ÐèÒª¼òµ¥µØÊ¹ÓÃSectionInformationÀàµÄProtectSection(Ìṩ³ÌÐò)·½·¨£¬´«µÝÄãÏëʹÓõÄÌṩ³ÌÐòµÄÃû×ÖÀ´Ö´ÐмÓÃÜ¡£ÎªÁË´æÈ¡ÄãµÄÓ¦ÓóÌÐòµÄWeb.configÎļþÖеÄÒ»¸öÌØ¶¨µÄÅäÖýڣ¬Äã¿ÉÒÔʹÓÃWebConfigurationManagerÀà(ÔÚ System.Web.ConfigurationÃüÃû¿Õ¼äÖÐ)À´ÒýÓÃÄãµÄWeb.configÎļþ£¬È»ºóʹÓÃËüµÄGetSection (sectionName)·½·¨·µ»ØÒ»¸öConfigurationSectionʵÀý¡£×îºó£¬Äã¿ÉÒÔ¾­ÓÉConfigurationSectionʵÀýµÄSectionInformationÊôÐԵõ½Ò»¸öSectionInformation¶ÔÏó¡£

¡¡¡¡ÏÂÃæ£¬ÎÒÃÇͨ¹ýÒ»¸ö¼òµ¥µÄ´úÂëʾÀýÀ´ËµÃ÷ÎÊÌ⣺

privatevoid ProtectSection(string sectionName£¬ string provider)

{

¡¡Configuration config = WebConfigurationManager.

¡¡OpenWebConfiguration(Request.ApplicationPath);

¡¡ConfigurationSection section = config.GetSection(sectionName);

¡¡if (section != null &&!section.SectionInformation.IsProtected)

¡¡{

¡¡¡¡section.SectionInformation.ProtectSection(provider);

¡¡¡¡config.Save();

¡¡}

}

private void UnProtectSection(string sectionName) {

¡¡Configuration config =WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

¡¡ConfigurationSection section = config.GetSectio n(sectionName);

¡¡if (section != null && section.SectionInformation.IsProtected)

¡¡{

¡¡¡¡section.SectionInformation.UnprotectSection();

¡¡¡¡config.Save();

¡¡}

¡¡¡¡Äã¿ÉÒÔ´ÓÒ»¸öASP.NETÒ³ÃæÖе÷ÓÃÕâ¸öProtectSection(sectionName£¬provider)·½·¨£¬ÆäÏàÓ¦µÄ²ÎÊýÊÇÒ»¸ö½ÚÃû (ÈçconnectionStrings)ºÍÒ»¸öÌṩ³ÌÐò(ÈçDataProtectionConfigurationProvider)£¬²¢ÇÒËü´ò¿ª Web.configÎļþ£¬ÒýÓøýڣ¬µ÷ÓÃSectionInformation¶ÔÏóµÄProtectSection(provider)·½·¨£¬×îºó±£´æÅäÖñ仯¡£

¡¡¡¡ÁíÒ»·½Ã棬UnProtectSection(provider)·½·¨ÊµÏÖ½âÃÜÒ»¸öÌØ¶¨µÄÅäÖýڡ£ÔÚ´Ë£¬½öÐèÒª´«ÈëÒª½âÃܵĽÚ-ÎÒÃDz»ÐèÒªÂé·³Ìṩ³ÌÐò£¬ÒòΪ¸ÃÐÅÏ¢ÒѾ­´æ´¢ÔÚ°éËæencrypted½ÚµÄ±ê¼ÇÖÐ(Ò²¼´ÊÇ£¬ÔÚÉÏÃæµÄʾÀýÖеģ¼connectionStrings£¾½Ú£¬ÔÚ±»¼ÓÃÜÒÔºó£¬Ëü°üº¬ÁËÌṩ³ÌÐò£º£¼connectionStringsconfigProtectionProvider="DataProtectionConfigurationProvider"£¾)¡£

¡¡¡¡¼Çס£¬Ò»µ©¸ÃÊý¾Ý±»¼ÓÃÜ£¬µ±´ÓÒ»¸öASP.NETÒ³Ãæ¶ÁÈ¡Ëüʱ(Ò²¼´ÊÇ£¬´ÓÒ»¸öSqlDataSource¿Ø¼þ»òÒÔ±à³Ì·½Ê½¾­ÓÉ ConfigurationManager.ConnectionStrings[connStringName].ConnectionString¶ÁÈ¡¸ÃÁ¬½Ó×Ö·û´®ÐÅÏ¢)£¬ASP.NET»á×Ô¶¯µØ½âÃܸÃÁ¬½Ó×Ö·û´®²¢ÇÒ·µ»ØÆÕͨÎı¾Öµ¡£»»¾ä»°Ëµ£¬ÔÚʵÏÖ¼ÓÃܺó£¬ÄãÒ»µã²»ÐèÒª¸Ä±äÄãµÄ´úÂë¡£Ï൱¿á£¬¶Ô²»¶Ô£¿

¡¡¡¡´Ó±¾ÎÄÏÂÔØµÄʾÀýASP.NET 2.0ÍøÕ¾ÖУ¬Äã»á·¢ÏÖÓÐÒ»¸öʾÀýÒ³Ãæ£¬ËüչʾÁ˸ÃÕ¾µãµÄWeb.configÎļþ£¬ÆäÖÐÓÐÒ»¸ö¶àÐÐTextBox£¬»¹ÌṩÁËÏàÓ¦µÄWeb¿Ø¼þ°´Å¥ÓÃÓÚ¼ÓÃÜÅäÖÃÎļþµÄ¸÷¸ö²¿·Ö¡£Õâ¸öʾÀýÖÐҲʹÓÃÁËÉÏÃæÒѾ­ÌÖÂÛ¹ýµÄProtectSection()ºÍUnProtectSection()·½·¨¡£

Áù¡¢ ʹÓÃÃüÁîÐй¤¾ßASPnet_regiis.exe

¡¡¡¡Ä㻹Äܹ»Ê¹ÓÃASPnet_regiis.exeÃüÁîÐй¤¾ßÀ´¼ÓÃܺͽâÃÜWeb.configÎļþÅäÖò¿·Ö£¬Äã¿ÉÒÔÔÚ"%WINDOWSDIR%\Microsoft.Net\Framework\ version"Ŀ¼ÏÂÕÒµ½Õâ¸ö¹¤¾ß¡£ÎªÁ˼ÓÃÜWeb.configÎļþÖеÄÒ»¸ö½Ú£¬Äã¿ÉÒÔÔÚÕâ¸öÃüÁîÐй¤¾ßÖÐʹÓÃDPAPI»úÆ÷ÃÜÔ¿£¬ÈçÏÂËùʾ£º

¡¡¡¡¼ÓÃÜÒ»¸öÌØ¶¨ÍøÕ¾µÄWeb.configÎļþµÄͨÓÃÐÎʽ£º

ASPnet_regiis.exe -pef section physical_directory -prov provider

¡¡¡¡»ò£º

ASPnet_regiis.exe -pe section -app virtual_directory -prov provider

¡¡¡¡¼ÓÃÜÒ»¸öÌØ¶¨ÍøÕ¾µÄWeb.configÎļþµÄ¾ßÌåʵÀý£º

ASPnet_regiis.exe -pef "connectionStrings" "C:\Inetpub\wwwroot\MySite" -prov "DataProtectionConfigurationProvider"

¡¡¡¡»ò£º

ASPnet_regiis.exe -pe "connectionStrings" -app "/MySite" -prov "DataProtectionConfigurationProvider"

¡¡¡¡½âÃÜÒ»¸öÌØ¶¨ÍøÕ¾µÄWeb.configÎļþµÄͨÓÃÐÎʽ£º

ASPnet_regiis.exe -pdf section physical_directory

¡¡¡¡»ò£º

ASPnet_regiis.exe -pd section -app virtual_directory

¡¡¡¡½âÃÜÒ»¸öÌØ¶¨ÍøÕ¾µÄWeb.configÎļþµÄ¾ßÌåʵÀý£º

ASPnet_regiis.exe -pdf "connectionStrings" "C:\Inetpub\wwwroot\MySite"

¡¡¡¡»ò£º

¡¡¡¡Ä㻹Äܹ»Ö¸¶¨ÓÉASPnet_regiis.exeÀ´Ö´ÐÐmachine.configÎļþµÄ¼ÓÃÜ/½âÃÜ¡£

¡¡¡¡¡¾Ìáʾ¡¿ ¼ÓÃÜASP.NET°æ±¾1.xÖеÄÅäÖÃÉèÖÃ

¡¡¡¡ÎªÁ˱£»¤ASP.NET°æ±¾1.xÖеÄÅäÖÃÉèÖ㬿ª·¢ÕßÐèÒª¼ÓÃܲ¢°ÑÃô¸ÐµÄÉèÖô洢ÔÚweb·þÎñÆ÷µÄ×¢²á±íÖУ¬²¢ÒÔÒ»ÖÖ"Ç¿"¼ü·½Ê½´æ´¢¡£ÅäÖÃÎļþÖв»ÊÇ´æ´¢¼ÓÃܵÄÄÚÈÝ£¨ÈçASP.NET 2.0ÄÇÑù£©£¬¶øÖ»Êǰüº¬Ò»¸öµ½´æ´¢¸Ã¼ÓÃÜÖµµÄ×¢²á±í¼üµÄÒýÓá£ÀýÈ磺

£¼identity impersonate="true"

userName="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG£¬userName"

password="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG£¬password" /£¾

¡¡¡¡Î¢ÈíΪ¿ª·¢ÈËÔ±ÌṩÁËASPnet_setreg.exeÃüÁîÐй¤¾ß£¬ÓÃÓÚ¼ÓÃÜÃô¸ÐµÄÅäÖÃÐÅÏ¢²¢ÇÒ°ÑËüÒÆ¶¯µ½Ò»¸ö"Ç¿"×¢²á±íÈë¿Ú´¦¡£Òź¶µÄÊÇ£¬Õâ¸ö¹¤¾ß½öÕë¶ÔÌØ¶¨µÄÅäÖÃÉèÖù¤×÷£»Ïà±È֮ϣ¬ASP.NET 2.0ÔÊÐí¼ÓÃÜÈκÎÅäÖýڡ£

¡¡¡¡ÓйØÓÚÔÚÒ»¸öASP.NET 1.xÓ¦ÓóÌÐòÖÐʹÓÃASPnet_setreg.exeµÄ¸ü¶àÐÅÏ¢Çë²Î¿¼MSDNÖеÄKB#32990¡£Òź¶µÄÊÇ£¬Õâ¸öÃüÁîÐгÌÐò½öÄܼÓÃÜÅäÖÃÉèÖÃÖеÄÔ¤¶¨ÒåµÄ½Ú£¬²¢ÇÒ²»ÔÊÐíÄã¼ÓÃÜÄã×Ô¼ºÌí¼ÓµÄÊý¾Ý¿âÁ¬½Ó×Ö·û´®ºÍÆäËüÃô¸ÐÐÅÏ¢¡£

¡¡¡¡Æß¡¢ ½áÂÛ

¡¡¡¡ÔÚ±¾ÎÄÖУ¬ÎÒÃÇѧϰÁËÈçºÎʹÓÃASP.NET 2.0ÌṩµÄ²»Í¬µÄ¼ÓÃÜÑ¡ÏîÀ´±£»¤ÅäÖýÚÐÅÏ¢£¬»¹ÌÖÂÛÁËÈçºÎʹÓñà³Ì¼¼ÊõºÍASPnet_regiis.exeÀ´·Ö±ð¼ÓÃÜWeb.configÖеÄÅäÖýڡ£±£»¤ÄãµÄÃô¸ÐµÄÅäÖÃÉèÖÃÓÐÖúÓÚÈ·±£ÄãµÄÕ¾µã¸üÄÑÓÚ±»ºÚ¿Í¹¥»÷-ͨ¹ýʹÆä¸üÄÑÓÚ·¢ÏÖÃô¸ÐµÄÅäÖÃÉèÖá£Èç½ñ£¬ASP.NET 2.0ÒѾ­ÌṩÁËÏà¶ÔÈÝÒ׵ļÓÃܺͽâÃܼ¼Êõ£¬¿ª·¢ÕߺÁÎÞÀíÓɲ»Ê¹ÓÃÕâÖÖ·½Ê½À´±£»¤ÄãµÄÃô¸ÐµÄÅäÖÃÉèÖá£

ÔðÈα༭£ºadmin
±¾ÎÄÒýÓõØÖ·£º http://www.3pcode.com/net/2007/10/91116.htm
Ïà¹ØÎÄÕÂ