הימנע משיטות שילוב שאינן נתמכות עבור Exchange

מספר KB מקורי: 3086992

מבוא

מאמר זה מתאר כיצד שירות הלקוחות והתמיכה של Microsoft יכולים לעזור למפתחים להפיק פתרונות מותאמים אישית המשתמשים בתקנים פתוחים שונים וגם משתלבים עם Microsoft Exchange Server.

מידע נוסף

חשוב להשתמש בממשקי API נתמכים ובתודולוגיות בעת כתיבת קוד עבור Exchange Server. לעתים, מפתחים מנסים להגדיל את אופן הפעולה של Exchange או לשלב באופן אחר יישומים עם Exchange Server באמצעות מתודולוגיה מסוימת שאינה נתמכת. הדבר עלול לגרום ל- Exchange להפוך ללא יציב ואופן פעולה בלתי צפוי.

שיטות העבודה הבאות אינן נתמכות על-ידי Microsoft:

  • שימוש בהתחזות הליך משנה מול Exchange באמצעות ממשקי API שאינם תומכים בהחזות הליך משנה באופן ספציפי.
  • שינוי Outlook Web App (OWA), שירותי אינטרנט של Exchange (EWS), Exchange ActiveSync (EAS) או הזרמות דומות בשרת גישת הלקוח (CAS).
  • הפעלת הרחבה או מודול של ISAPI במאגר יישומים של Exchange.
  • שינוי החשבון שתחתיו פועל מאגר יישומים של Exchange.
  • הזרקת קבצי DLL לתוך תהליכי Exchange באופן שאינו נתמךשרתExchange משתמש בממשקים ובשיטות עבודה ספציפיים שעבורם הוא תוכנן ונבדק. מאחר ששיטות עבודה מסוימות אלה מציגות תכונות באמצעות מתודולוגיה שאינה נתמכת, Microsoft מחשיבה סוג זה של פיתוח כלא נתמך.

כאשר נציגי התמיכה של Microsoft מאתרים אפליקציות של ספקים חיצוניים אשר נראות בהן משתמשות באחת מהתודולוגיות המפורטות, סביר להניח שהם יבקשו ממך להסיר את היישום כדי לבדוק אם הבעיה מתרבת. אם הבעיה אינה מת לשחזר לאחר הסרת היישום של ספק חיצוני, עליך לפנות למהנדסי התמיכה כדי שמוצר זה יפתור את הבעיה.

Exchange כולל בודקים כדי למנוע מקוד לבצע התחזות של הליך משנה. לדוגמה, Exchange יכול לכבות את התהליך שלו באופן פתאומי (FastFail). במצב זה, אירוע 4999 נרשם ביומן האירועים של Exchange. הוא מכיל את הטקסט הבא:

M.E.D.ConnectionPoolManager.BlockImpersonatedCallers

ממשקי API כגון EWS המאפשרים התחזות של אפליקציות אחרות כוללים את המנגנונים להתחזות חשבונות בעצמם. תוכנת אבטחה ותוכנה לכניסה יחידה הן דוגמאות נפוצות לאפליקציות המשתמשות בהתחזות לשרשור כדי לשנות אישורים בקריאות הנשלחות ל- Exchange.

קוד של ספק חיצוני הפועל ביישום אחד תחת תהליך מאגר העובדים של יישום אחר עלול לגרום לבעיות, אלא אם כן היישומים נוצרו כדי לעבוד זה עם זה. Exchange אינו מאפשר ליישומים אחרים לפעול במסגרת תהליכי העובד שלו. תהליכי מאגר היישומים של Exchange שייכים באופן בלעדי ל- Exchange, ואין להפעיל תחתם קוד של ספק חיצוני. פעולה זו עלולה לגרום להתנגשויות עם Exchange שעלולות לגרום לתהליכים להיכשל.

מפתחים מסוימים משתנים את החשבון שתחתיו חלקים של Exchange פועלים כדי לקבל פונקציונליות מסוימת שלא היה להם אחרת. הדבר עלול לגרום לקריסות שרת, להשחתת נתונים ולבעיות בלתי צפויות אחרות. בעיות אלה עלולות להתרחש בכל שלב בתהליך.

קיימות דרכים נתמכות לשילוב קבצי DLL מותאמים אישית עם Exchange, כגון סוכני תעבורה מותאמים אישית. איננו ממליצים להשתמש בשיטה שלא נתמכת על-ידי פיתוח Exchange. לדוגמה, הזרקה כפויה של DLL היא שיטה שאינה נתמכת לטעינת DLL מותאם אישית ב- Exchange.

חשוב להימנע משיטות שאינן נתמכות כאשר אתה מחשיב את האפשרות לשלב יישומים של ספקים חיצוניים עם Exchange. תרגול מסוג זה עלול לכלול השלכות חמורות מאוחר יותר, כגון פונקציונליות שאבדן או הצורך לשכתב יישום. בסופו של דבר, ייתכן שתיפגש בבלוק כביש ולא יהיה לך כל נתיב להתקדם בו.