2013-02-15 76 views
5

मैं इस स्थिति है:वीबीस्क्रिप्ट से Outlook संदेश भेजते समय Outlook सुरक्षा अलर्ट से कैसे बचें?

  • कोड VBScript में होना चाहिए (मेरे नियंत्रण से बाहर)
  • आउटलुक वरीयताओं में कार्यक्रम संबंधी उपयोग प्रतिबंध (समूह नीति, नहीं व्यवस्थापक अक्षम करने में असमर्थ है, और Windows नहीं है स्थापित वायरस स्कैनर को पहचानें)
  • एसएमटीपी का उपयोग नहीं कर सकता क्योंकि यह अस्वीकृत है।

मैंने सोचा था कि वहाँ होगा कोई तरह से एक स्वचालित-ish तरीके से Outlook का उपयोग एक ईमेल भेजने के (एक पहुंच से बाहर बॉक्स पर स्क्रीन लॉक कर दी साथ एक उपयोगकर्ता के रूप में लॉग इन किया)। मैंने कई अलग-अलग दृष्टिकोणों की कोशिश की लेकिन हमेशा सुरक्षा चेतावनी संदेश प्राप्त होगा। मैं इसे कैसे ठीक करूं?

मैं पहले से ही this उपयोगी साइट पर सब कुछ कोशिश की है और प्रत्येक विकल्प का सफाया कर दिया इस प्रकार है:

रणनीतियाँ
आदर्श रूप में, अनुप्रयोग जो स्वचालित रूप से आउटलुक कोड है कि इन सुरक्षा संकेतों से चलाता है से बचना चाहिए।

यह बिल्कुल है मैं क्या कर समाप्त हो गया (नीचे मेरा उत्तर देखें), जिसके कारण उस पृष्ठ पर अन्य विकल्पों में से सभी अप्रासंगिक हैं। के एक एक करके उन्हें एक लेते हैं:

भेजा जा रहा है संदेशों
यह आउटलुक में सभी वस्तुओं यदि आपका लक्ष्य बना सकते हैं और एक ई-मेल संदेश भेजने के लिए बस है उपयोग करने के लिए आवश्यक नहीं है। माइक्रोसॉफ्ट एसएमटीपी के साथ संदेश बनाने और भेजने के लिए विंडोज लाइब्रेरी के लिए सीडीओ प्रदान करता है। इस लाइब्रेरी का उपयोग पूरी तरह से Outlook और MAPI को छोड़ देता है और सुरक्षा संकेतों को ट्रिगर नहीं करता है। कोड नमूने के लिए, देखें ...

SMTP। नही जाओ। नेटवर्क नीति द्वारा अस्वीकृत।

संभावित रूप से सुरक्षा संकेतों को ट्रिगर करने वाले सभी कोड के लिए Outlook ऑब्जेक्ट्स, सरल एमएपीआई या सीडीओ 1.21 के बजाय विस्तारित एमएपीआई का उपयोग करें।

विस्तारित MAPI काम कर सकते हैं, लेकिन यह बेहद बोझिल और वर्बोज़ है और C/C++ कोड के बहुत सारे (जो विषय पर इस प्रश्न के लिए नहीं है, ऊपर देखें) शामिल है, और संकेत दिए बिना इसका इस्तेमाल करने के लिए असंभव प्रतीत हो रहा है उपयोगकर्ता अपने पासवर्ड के लिए।

किसी तृतीय-पक्ष लाइब्रेरी का उपयोग करें - रिडेम्प्शन या MAPI33 - सभी कोड जो संभावित रूप से सुरक्षा संकेतों को ट्रिगर करता है। विस्तारित एमएपीआई का उपयोग करने से यह दृष्टिकोण आसान है, जिसमें एक सीधी सीखने की वक्र है, और लगभग सुरक्षित है। ये पुस्तकालय आउटलुक कोड परियोजनाओं में सहायता के लिए अतिरिक्त सुविधाएं भी प्रदान करते हैं।

तीसरे पक्ष के पुस्तकालयों के साथ समस्या चार गुना है: - वे पैसे खर्च करते हैं; - वे लाइसेंसिंग मुद्दों को पेश करते हैं भले ही वे स्वतंत्र हों (कुछ संगठनों को सॉफ़्टवेयर को पारिस्थितिक तंत्र में अनुमति देने से पहले वकीलों से व्यापक जांच की आवश्यकता होती है); - अधिकांश वातावरण जहां यह पूरी समस्या चिंता भी है, वे उपयोगकर्ता हैं जहां उपयोगकर्ता Outlook विकल्पों में प्रोग्रामेटिक एक्सेस चेतावनियां अक्षम नहीं कर सकता है। हम्म, वे क्या संभावित मामले होंगे? क्या यह हो सकता है ... कॉर्पोरेट वातावरण? कॉरपोरेट पर्यावरण में सॉफ़्टवेयर की खरीद में लंबे समय तक अव्यवहारिक बिंदु होता है, जब तक कि इसका उपयोग करने की लागत बचत कई मिलियन डॉलर से अधिक न हो। लेकिन कई व्यावहारिक प्रक्रिया में सुधार किए जा सकते हैं जिन्हें लागत बचत के रूप में उपज नहीं मिलती है, लेकिन यदि सॉफ्टवेयर खरीद आवश्यक है, तो कुल बचत की तुलना में तीसरे पक्ष के सॉफ्टवेयर को खरीदने के लिए अधिक धन और श्रम खर्च होंगे। - नेटवर्क प्रशासक किसी सिस्टम पर रहने के लिए सॉफ़्टवेयर पर भरोसा नहीं कर सकते हैं, क्योंकि इसका उपयोग दुर्भावनापूर्ण उद्देश्यों के लिए किया जा सकता है।

सुरक्षा अनुप्रयोगों को दबाने के लिए अपने एप्लिकेशन के साथ एक उपकरण परिनियोजित करें।

मतलब यह है कि दमन OMG की संकेत देता है के लिए आवश्यक है, जो, मेरे मामले में, ऐसा नहीं है, बस (मेरा उत्तर देखें) एक सरल ईमेल भेजने के लिए।

Outlook 2007 के लिए, सुनिश्चित करें कि मशीन एक अद्यतित एंटी-वायरस एप्लिकेशन चला रही है और सीडीओ 1.21 और सरल एमएपीआई कोड से परहेज करते हुए Outlook ऑब्जेक्ट्स के साथ सभी कोडिंग करें।

वायरस स्कैनर अद्यतित है, लेकिन यह अपने संस्करण या विक्रेता को बदलने के लिए पूरी तरह से मेरे नियंत्रण से बाहर है, और Outlook इसे पहचान नहीं पाता है। यह कहता है: "एंटीवायरस स्थिति: अमान्य। विंडोज का यह संस्करण एंटीवायरस पहचान का समर्थन करता है, लेकिन एंटीवायरस नहीं मिला।"

आउटलुक कस्टम फॉर्म कोड, आउटलुक वीबीए कोड, और COM एड-इन्स में, Outlook से सभी ऑब्जेक्ट प्राप्त करें। वीबीए या एड-इन आर्किटेक्चर द्वारा प्रदान की गई एप्लीकेशन ऑब्जेक्ट। उदाहरण के लिए, नीचे नमूना वीबीए "एक स्क्रिप्ट चलाएं" नियम प्रक्रिया देखें।

दिलचस्प, और संभवतः उपयोगी, लेकिन आवश्यक नहीं है। यह सॉफ़्टवेयर को तैनात करने के लिए Outlook में नियम स्थापित करने पर एक अनावश्यक निर्भरता बनाता है, जो तैनाती को जटिल बनाता है।

कुछ सुरक्षा ऐड-इन्स को "विश्वास" करने वाले Outlook सुरक्षा सेटिंग्स को नियोजित करें या जो सभी अनुप्रयोगों को पते तक पहुंच जैसे कुछ विशेषताओं तक अप्रतिबंधित पहुंच की अनुमति दें। Outlook 2007 से पहले संस्करणों में, इसके लिए माइक्रोसॉफ्ट एक्सचेंज सर्वर की आवश्यकता है। Outlook 2007 के लिए, नीचे संस्करण-विशिष्ट विचारों पर अनुभाग देखें।

बोझिल: COM एड-इन स्थापित करने के लिए व्यवस्थापकीय पहुंच की आवश्यकता होगी, और कुछ संगठनों में प्रशासनिक पहुंच से आना मुश्किल हो सकता है।

एक कॉर्पोरेट वातावरण में जहां एक्सचेंज ईमेल सर्वर है, सर्वर पर डेटा तक सीधी पहुंच एक्सचेंज वेब सेवाओं के माध्यम से एक्सचेंज 2000 से शुरू होने वाली वेबडावी एपीआई और एक्सचेंज वेब सेवाओं के माध्यम से उपलब्ध है।

मेरे पर्यावरण में अक्षम, और संभवतः अन्य।

कॉर्पोरेट वातावरण में, व्यवस्थापक कुछ या सभी उपयोगकर्ताओं के लिए Outlook सुरक्षा को चुनने का विकल्प चुन सकता है।

निश्चित रूप से, लेकिन इसके लिए नेटवर्क टीम के साथ संचार/समन्वय/सहयोग की आवश्यकता है। यदि COM एडिन स्थापित करने के लिए व्यवस्थापकीय पहुंच उपलब्ध नहीं है, तो संभवतः समूह नीति को ढीला करने के लिए यह उपलब्ध नहीं है।

+1

मुझे कल्पना है कि [आउटलुक रिडेम्प्शन] (http://www.dimastr.com/redemption/home.htm), जो मुफ़्त है, प्रेषक की तुलना में बहुत सुरक्षित होगा, जो सभी वातावरण में काम नहीं कर सकता है, और है आम तौर पर एक अंतिम-खाई समाधान माना जाता है। – Fionnuala

+0

अधिक विश्वसनीय के रूप में सुरक्षित? हां, कुछ ऐसा जो वितरित किया जाना है। लेकिन एक निश्चित, जाने-माने, स्थैतिक विन्यास वाले बॉक्स पर, यह ठीक है। इसके अलावा, मेरे पर्यावरण में रिडेम्प्शन हासिल करने और तैनात करने की बाधा (क्योंकि यह पैसे खर्च करती है) पूरी तरह से किसी भी संभावित लाभ को समाप्त करती है। – allquixotic

+0

रिडेम्प्शन गैर-वाणिज्यिक उपयोग के लिए नि: शुल्क है। एक वाणिज्यिक माहौल के लिए, प्रेषक का उपयोग कर एक पोस्ट में विनाशकारी जोड़ की संभावना जोखिम के लिए बहुत बड़ी लगती है। – Fionnuala

उत्तर

9

यह कोड Outlook 2010 के साथ मेरे सिस्टम पर काम करता है ताकि कोई उपयोगकर्ता इंटरैक्शन न हो। यह थोड़ा भंगुर है, यदि उपयोगकर्ता मेल बनाते समय सिस्टम पर सक्रिय रूप से काम कर रहा है (टाइपिंग, क्लिक करना), तो ऐसा हो सकता है कि उपयोगकर्ता इनपुट विंडो में अपना रास्ता बनाता है जो एक दूसरे भाग के लिए पॉप अप करता है , और या तो मेल भेजने के साथ हस्तक्षेप करते हैं, या मेल के शरीर में अतिरिक्त अज्ञात वर्ण जोड़ते हैं।

जब तक उपयोगकर्ता जिस प्रणाली पर चल रहा है, उसके बारे में पता है, और नकली कीस्ट्रोक हस्तक्षेप के संभावित परिणाम व्यापार-महत्वपूर्ण नहीं हैं, यह कार्य स्वीकार्य है।

ध्यान देने योग्य महत्वपूर्ण: इस समाधान की कुंजी यह है कि हम MailItem.Send विधि को कॉल नहीं करते हैं। यह वह तरीका है जो प्रोग्रामेटिक एक्सेस सुरक्षा को ट्रिगर करता है। इसके बजाए, हम ALT + s शॉर्टकट को ट्रिगर करते हैं, जो डिफ़ॉल्ट रूप से, जब मेल विंडो Outlook में केंद्रित होती है, तो "भेजें" बटन दबाता है। यदि आपके पास डिफ़ॉल्ट वर्तनी जांच प्रॉम्प्ट सक्षम है, तो यह वर्तनी जांच के लिए एक और संकेत पॉप अप करेगा। हमारा समाधान स्पेल चेकिंग प्रॉम्प्ट को अक्षम करना था, हालांकि मुझे यकीन है कि आप इसके माध्यम से क्लिक करने के लिए कुछ और SendKeys जोड़ सकते हैं, क्योंकि वर्तनी जांच संकेत सुरक्षा-संबंधित संवाद नहीं है।

UIPI (उपयोगकर्ता इंटरफ़ेस विशेषाधिकार अलगाव) के बारे में एक नोट:

आउटलुक 2010 उपयोगकर्ता के लिए जो प्रणाली में लॉग इन, एक मध्यम अखंडता स्तर के साथ के रूप में चलाता है। प्रोग्राम जो विंडोज एक्सप्लोरर द्वारा लॉन्च किए गए हैं, या एक ऐसे बच्चे के वंशज या वंश के रूप में शुरू किए गए हैं जो एक ही तरीके से लॉन्च किया गया था, को मध्यम अखंडता स्तर के साथ भी लॉन्च किया जाएगा। यूआईपीआई "SendKeys" प्रकार इनपुट को रोकने में प्रभावी नहीं है, जब तक कि उपयोगकर्ता और सत्र आईडी मिलान न हो और अखंडता स्तर समान या उच्च हो। मेरे विशेष वातावरण में, उपयोगकर्ता और सत्र आईडी समान हैं, और अखंडता स्तर VBScript होस्ट प्रक्रिया और Outlook प्रक्रिया के लिए समान है। आपके पर्यावरण में, यदि इनमें से कोई भी स्थिति गलत है, तो यह कोड कार्य नहीं करेगा। यह भी अपरीक्षित कार्यालय के पहले या बाद में संस्करणों पर संस्करण 2010 से

Sub SendEmail_Outlook() 
    Set WshShell = WScript.CreateObject("WScript.Shell") 
    Set ol=CreateObject("Outlook.Application") 
    Set Mail=ol.CreateItem(0) 
    Mail.to= "[email protected]" 
    Mail.Subject = "test" 
    Mail.HTMLBody = "test" 
    Mail.Display  
    WshShell.SendKeys "%s" 
    Set Mail = Nothing 
    Set ol = Nothing 
End Sub 

SendEmail_Outlook 

इसके अलावा यहाँ है, यह काम करने के लिए कैसे जब Windows कार्य शेड्यूलर से VBScript चल रहा है। लाल अंडाकार, "उच्चतम विशेषाधिकारों के साथ भागो" द्वारा चित्रित बॉक्स को बस चिह्नित करें, इसे यूएसी ऊंचाई के बिना उच्चतम संभव अखंडता स्तर ("मध्यम" यदि आप व्यवस्थापक खाते नहीं हैं) के साथ चलाने के लिए।

windows task scheduler properties

0

कुछ विकल्प:

  1. अप-टू-डेट एंटीवायरस सॉफ्टवेयर
  2. विस्तारित MAPI (सी (आउटलुक के लिए एक संकेत तो प्रदर्शित नहीं करेगा) ++ या डेल्फी, मामले में लागू नहीं होता वीबी लिपि का)। हालांकि आप Redemption जैसे रैपर का उपयोग कर सकते हैं जो विस्तारित एमएपीआई का उपयोग करता है लेकिन वीबीएस सहित किसी भी भाषा से सुलभ है।
  3. ClickYes जैसे उत्पाद।

चर्चा के लिए http://www.outlookcode.com/article.aspx?id=52 देखें और उपलब्ध विकल्पों की एक सूची देखें।