07
مهاگر تا حالا در یک سازمان بزرگ یا حتی متوسط کار کرده باشید که سالها روی SharePoint Server داخلی سرمایهگذاری کرده و حالا فشار میآید که «برو روی کلاود»، احتمالاً این جمله را شنیدهاید: «چرا یکشبه همه چیز را نمیبریم روی Microsoft 365؟» جواب واقعی این است که در دنیای واقعی، هیچ سازمانی این کار را یکشبه انجام نمیدهد؛ نه به این دلیل که نمیخواهد، بلکه به این دلیل که دادهها، مجوزها، اپلیکیشنهای قدیمی، الزامات قانونی و حتی عادتهای کاری کارمندان، مثل ریشههای یک درخت کهنه در زمین سازمان فرو رفتهاند. اینجاست که SharePoint Hybrid وارد میشود؛ نه بهعنوان یک راهحل موقت و بیاهمیت، بلکه بهعنوان یک استراتژی بلندمدت و گاهی حتی دائمی برای بسیاری از سازمانها.
در این مقاله میخواهم فراتر از تعاریف کتابی بروم. میخواهم دربارهی چیزی صحبت کنم که واقعاً در پروژههای واقعی اتفاق میافتد: کجا SharePoint Hybrid نجاتبخش است، کجا تبدیل به یک کابوس مدیریتی میشود، چه مشکلاتی هر بار سر و کلهشان پیدا میشود، و چطور میتوان از آنها عبور کرد. اگر شما مدیر IT هستید، معمار زیرساخت، یا حتی یک تحلیلگر کسبوکار که باید تصمیم بگیرد آیا سازمانش باید سراغ این مدل برود یا نه، این متن برایتان نوشته شده.
قبل از هر چیز باید یک تصویر ذهنی درست بسازیم. SharePoint Hybrid یعنی سازمان شما بهطور همزمان از دو دنیا استفاده میکند: SharePoint Server که روی سرورهای داخلی (On-Premises) شما نصب شده، و SharePoint Online که بخشی از Microsoft 365 است و روی ابر مایکروسافت اجرا میشود. این دو محیط، با وجود اینکه از نظر ظاهری شباهت زیادی به هم دارند، از نظر معماری، مدل امنیتی، و نحوهی بهروزرسانی کاملاً متفاوتاند. کاری که Hybrid انجام میدهد این است که این دو دنیا را طوری به هم متصل میکند که کاربر نهایی، حداقل در تجربهی جستوجو، پروفایل کاربری، و گاهی حتی محتوا، تفاوت چندانی احساس نکند.
نکتهی مهمی که خیلی وقتها نادیده گرفته میشود این است: SharePoint Hybrid یک محصول نیست، یک مجموعه از قابلیتهای یکپارچهسازی است. یعنی وقتی میگویید «ما SharePoint Hybrid داریم»، باید دقیقتر بگویید که کدام بخشهای آن را فعال کردهاید: جستوجوی هیبریدی؟ OneDrive هیبریدی؟ پروفایلهای کاربری هیبریدی؟ یا حتی سایتهای هیبریدی که با Hybrid Sites feature به هم وصل شدهاند؟ هر کدام از اینها معماری، پیشنیاز، و دردسر خودش را دارد.
چرا سازمانها به این مسیر میروند؟ چند دلیل واقعی وجود دارد که هر کدام را در ادامه با جزئیات بررسی میکنیم، اما بهطور خلاصه:
– الزامات قانونی و حاکمیت داده (Data Sovereignty): بعضی صنایع مثل بانکداری، بیمه، و بخشهای دولتی در برخی کشورها موظفاند دادههای حساس را روی زیرساخت داخلی نگه دارند.
– سرمایهگذاریهای قبلی: سازمانهایی که سالها روی SharePoint Server، اپلیکیشنهای سفارشی (Custom Web Parts، Workflowهای SharePoint Designer، یا حتی راهحلهای Farm-level) سرمایهگذاری کردهاند، نمیتوانند یکشبه همه چیز را دور بریزند.
– مهاجرت تدریجی: خیلی از پروژههای مهاجرت به کلاود، بهصورت فازبندیشده انجام میشوند و Hybrid دقیقاً پل بین این فازهاست.
– مسائل شبکه و پهنای باند: در برخی مناطق جغرافیایی که اتصال به اینترنت پایدار یا کند است، نگهداشتن بخشی از محتوا بهصورت محلی هنوز منطقیتر است.
– ادغام و اکتساب شرکتها (M&A): وقتی دو شرکت با دو زیرساخت متفاوت ادغام میشوند، اغلب برای مدتی هر دو محیط باید همزمان کار کنند.
حالا که چرایی را فهمیدیم، بیایید به سناریوهای واقعی برویم؛ جایی که این تصمیمات معماری واقعاً امتحان میشوند.
فرض کنید در یک شرکت صنعتی بزرگ کار میکنید که سی سال سابقه دارد. آرشیو اسناد فنی، نقشههای مهندسی، و مستندات ایمنی از دههی نود میلادی روی یک فارم SharePoint 2016 نگهداری میشود، اما تیمهای جدید، پروژههای نوآوری، و بخش فروش از چند سال پیش روی SharePoint Online کار میکنند. مشکل اینجاست: یک مهندس که دنبال یک نقشهی فنی قدیمی میگردد، نباید مجبور باشد بداند که باید به کدام سایت برود. او فقط باید در یک کادر جستوجو تایپ کند و نتیجه را ببیند، فارغ از اینکه آن سند کجا فیزیکی ذخیره شده.
این دقیقاً همان چیزی است که Hybrid Search حل میکند. در این معماری، یک سرویس به نام Cloud Search Service Application (Cloud SSA) روی فارم On-Premises راهاندازی میشود که وظیفهاش این است: محتوای موجود در SharePoint Server را crawl کند، اما بهجای اینکه ایندکس را در همان فارم داخلی نگه دارد، آن را به ایندکس SharePoint Online ارسال میکند. نتیجه چیست؟ کاربر وقتی در SharePoint Online جستوجو میکند، هم نتایج کلاود و هم نتایج داخلی را در یک صفحهی واحد میبیند، حتی اگر خودش هیچوقت مستقیم به فارم داخلی وصل نشده باشد.
اما نکتهای که خیلی از مستندات رسمی به آن کمتوجهی میکنند این است: این فرآیند به یک چیز حیاتی نیاز دارد — Server-to-Server (S2S) Authentication بین محیط داخلی و Microsoft 365. این یعنی باید یک اعتماد رمزنگاریشده بین فارم شما و تننت Microsoft 365 برقرار شود، که معمولاً از طریق ابزار Hybrid Picker یا اسکریپتهای PowerShell مانند `Set-SPCloudHybridSearchConfiguration` انجام میشود. اگر این اعتماد به هر دلیلی (مثل انقضای گواهی SSL، یا تغییر تنظیمات ADFS) شکسته شود، جستوجوی هیبریدی بهطور کامل و بدون هشدار واضح متوقف میشود؛ و معمولاً کسی که اول متوجه میشود، خود کاربر نهایی است که شکایت میکند «نتایج جستوجو نصفه شدهاند.»
چالش واقعی: کرال شدن محتوا در محیطهای بزرگ
در یک پروژهی واقعی که با یک سازمان دولتی با بیش از دو میلیون آیتم محتوا کار میکردم، بزرگترین چالش این نبود که Hybrid Search را راهاندازی کنیم؛ چالش این بود که فرآیند crawl اولیه (Initial Full Crawl) روزها طول میکشید و در طول این مدت، لود روی سرورهای دیتابیس SQL Server بهشدت بالا میرفت. اگر این کار در ساعات کاری انجام میشد، عملاً کارایی کل فارم برای کاربران عادی افت میکرد. راهحل این بود که برنامهی crawl را بهصورت incremental و در بازههای زمانی مشخص (معمولاً نیمهشب) تنظیم کنیم و مانیتورینگ دقیقی روی Crawl Log بگذاریم تا خطاهای Access Denied یا Timeout را سریع شناسایی کنیم.
یک نکتهی کلیدی دیگر: نتایج جستوجوی هیبریدی بهصورت پیشفرض بر اساس Result Source پیکربندی میشوند. اگر این تنظیمات را درست نکنید، ممکن است کاربر نتایج تکراری ببیند (یک سند هم از منبع محلی و هم از یک کپی سینکشده در OneDrive)، یا حتی بدتر، نتایجی ببیند که به آنها دسترسی ندارد چون Access Control List (ACL) بهدرستی بین دو محیط سینک نشده است.
یکی از رایجترین درخواستهایی که در پروژههای Hybrid میشنوم این است: «ما میخواهیم کاربران فایلهای شخصیشان را که روی My Sites داخلی ذخیره کردهاند، به OneDrive for Business در کلاود منتقل کنیم، اما بدون اینکه کاربر حس کند چیزی خراب شده.» این دقیقاً کاری است که ویژگی Hybrid OneDrive (OneDrive Redirection) برایش طراحی شده.
وقتی این قابلیت فعال است، هر بار که یک کاربر روی لینک «OneDrive» در نوار بالای SharePoint Server کلیک میکند، بهصورت خودکار به OneDrive for Business در کلاود هدایت میشود، حتی اگر خودش هیچوقت بهصورت مستقیم آدرس آن را وارد نکرده باشد. این باعث میشود کاربران بهمرور، بدون نیاز به آموزش گسترده، عادت کنند که فایلهای جدیدشان را در کلاود ذخیره کنند، در حالی که فایلهای قدیمیشان هنوز بهصورت آرشیوی روی My Site داخلی باقی میمانند (یا با ابزارهایی مثل SharePoint Migration Tool بهمرور منتقل میشوند).
اما اینجا یک تلهی رایج وجود دارد که بسیاری از تیمهای IT در آن میافتند: این redirection بهصورت پیشفرض روی همهی کاربران اعمال نمیشود، مگر اینکه Audience را درست تعریف کرده باشید. اگر این تنظیمات (که از طریق Central Administration و یک Audience Group مشخص میشود) درست پیکربندی نشود، ممکن است بخشی از کاربران redirect شوند و بخشی نه، که باعث سردرگمی و تیکتهای پشتیبانی زیاد میشود. توصیهی عملی من این است: این تغییر را همیشه بهصورت فازبندیشده روی گروههای کوچکتر کاربران (مثلاً یک دپارتمان در هر مرحله) پیادهسازی کنید و قبل از گسترش کامل، بازخورد جمع کنید.
یکی از دردسرهایی که کمتر در مقالات آموزشی به آن پرداخته میشود، تعارض بین پروفایلهای کاربری در دو محیط است. در SharePoint Server، User Profile Service مسئول نگهداری اطلاعاتی مثل عنوان شغلی، شماره تلفن، مهارتها و عکس پروفایل است. در SharePoint Online، همین اطلاعات از Azure Active Directory (که این روزها Microsoft Entra ID نام دارد) و Delve/Microsoft Graph تغذیه میشود. وقتی این دو محیط همزمان فعال باشند و کاربران در هر دو سمت پروفایل داشته باشند، سؤال این میشود: کدام یکی منبع حقیقت (Source of Truth) است؟
تجربهی من در چند پروژه این بوده که بهترین رویکرد، تعیین یک مسیر یکطرفه است: اطلاعات باید از Active Directory داخلی، از طریق Azure AD Connect، به Microsoft Entra ID سینک شوند، و از آنجا SharePoint Online این اطلاعات را میخواند. تلاش برای نگهداشتن دو منبع مستقل و سینک دوطرفه، تقریباً همیشه به ناهماهنگی داده منجر میشود؛ مثلاً کاربری عکس پروفایلش را در Delve آپلود میکند اما بعد از چند روز میبیند در SharePoint Server داخلی هنوز عکس قدیمی نمایش داده میشود، چون User Profile Service داخلی هیچ ارتباطی با تغییرات کلاود ندارد مگر اینکه Feature هیبریدی مربوطه بهدرستی فعال شده باشد.
نکتهی فنی مهم: برای فعالسازی Hybrid User Profiles، باید Hybrid Picker Wizard را اجرا کنید که خودش پیشنیازهایی مثل داشتن یک Web Application با Claims-based Authentication و اتصال معتبر S2S دارد. اگر فارم شما هنوز روی Classic-mode Authentication کار میکند (که در فارمهای قدیمی خیلی رایج است)، باید قبل از هر چیز این را به Claims-based تبدیل کنید، که خودش میتواند یک پروژهی جداگانه با ریسکهای خاص خودش باشد.
فرض کنید یک کارمند از خانه لاگین میکند، وارد پورتال شرکت در SharePoint Online میشود، و در منوی بالای صفحه (App Bar) لینکهایی به سایتهای داخلی هم میبیند، مثل «پورتال منابع انسانی» که هنوز روی SharePoint Server میزبانی میشود. این تجربه از طریق قابلیتی به نام Hybrid Sites Features ممکن میشود که در واقع سایتهای داخلی را در نتایج جستوجوی SharePoint Online و در بخش «Sites Followed» یا «Frequent Sites» قابلمشاهده میکند.
این قابلیت بهظاهر ساده است، اما پیشنیازش این است که سایتهای داخلی از طریق یک آدرس قابلدسترس از اینترنت (یا حداقل از طریق یک Reverse Proxy امن مثل Azure Application Proxy یا یک راهحل مشابه) در دسترس باشند، وگرنه لینکها نمایش داده میشوند اما با کلیک، کاربر به یک صفحهی خطا یا timeout میرسد. این دقیقاً همان جایی است که تیم شبکه و تیم SharePoint باید خیلی نزدیک با هم کار کنند، چون این مشکل معمولاً به این دلیل رخ میدهد که DNS داخلی و DNS عمومی بهدرستی تفکیک نشدهاند یا Firewall قوانین لازم را برای ترافیک ورودی ندارد.
قبل از اینکه به مشکلات رایج برسیم، باید روی یک موضوع مکث کنیم که در واقع پایهی همهی سناریوهای بالاست: هویت (Identity). هیچکدام از قابلیتهای هیبریدی که توضیح دادم، بدون یک استراتژی هویت درست کار نمیکنند. عمدهی سازمانها از یکی از این سه مدل استفاده میکنند:
نخست، Password Hash Synchronization که سادهترین مدل است: هش رمزهای عبور از Active Directory داخلی به Microsoft Entra ID سینک میشود. این مدل کمترین پیچیدگی زیرساختی را دارد و برای بسیاری از سازمانهای متوسط کافی است.
دوم، Pass-through Authentication (PTA) که در آن رمز عبور اصلاً به کلاود منتقل نمیشود؛ بهجای آن، یک Agent روی سرور داخلی درخواستهای احراز هویت را در لحظه به Active Directory داخلی ارجاع میدهد. این مدل برای سازمانهایی که سیاستهای سختگیرانهتری دربارهی نگهداری رمز عبور دارند مناسبتر است.
سوم، Federation با ADFS (Active Directory Federation Services) که پیچیدهترین اما در برخی موارد ضروریترین مدل است، مخصوصاً وقتی سازمان به قابلیتهایی مثل Smart Card Authentication یا سیاستهای سفارشی احراز هویت نیاز دارد که در دو مدل قبلی بهسادگی پشتیبانی نمیشوند.
انتخاب اشتباه در این لایه، تبدیل به یکی از پرهزینهترین اشتباهات پروژههای هیبریدی میشود. در یک مورد که من دیدهام، سازمانی ADFS را صرفاً به این دلیل انتخاب کرده بود که «برای امنیت بهتر است»، بدون اینکه واقعاً به یک ویژگی خاص آن نیاز داشته باشد. نتیجه؟ یک زیرساخت با چند سرور ADFS و WAP (Web Application Proxy) که نیاز به نگهداری، patching، و مانیتورینگ مداوم داشت، در حالی که Password Hash Sync بهسادگی همان نیاز را برطرف میکرد با کسری از پیچیدگی عملیاتی.
حالا که سناریوهای اصلی را دیدیم، وقت آن است که به بخشی برسیم که واقعاً ارزش این مقاله را میسازد: مشکلاتی که هر تیم IT که وارد دنیای SharePoint Hybrid میشود، دیر یا زود با آنها روبهرو میشود. اینها را از تجربهی عملی جمع کردهام، نه از یک چکلیست تئوری.
شاید رایجترین مشکلی که در پیادهسازیهای SharePoint Hybrid دیده میشود، از کار افتادن ارتباط S2S بین فارم داخلی و Microsoft 365 است. علائم این مشکل معمولاً اینطور شروع میشود: جستوجوی هیبریدی بهطور ناگهانی نتایج داخلی را نشان نمیدهد، یا OneDrive Redirection دیگر کار نمیکند. وقتی به ULS Logs (لاگهای داخلی SharePoint) نگاه میکنید، معمولاً با خطاهایی مثل «Access Denied» یا «Untrusted certificate» یا مشکلات مربوط به Token روبهرو میشوید که بههیچوجه واضح نمیگویند دقیقاً چه چیزی خراب شده.
دلیل ریشهای در بیشتر موارد یکی از اینهاست: گواهی SSL که برای اعتماد S2S استفاده میشد منقضی شده (و این گواهیها معمولاً هر یک یا دو سال باید تمدید شوند، اما تیمهای عملیاتی اغلب فراموش میکنند چون این کار جزئی از چرخهی تمدید معمول گواهیهای وبسایت نیست)، یا تنظیمات Hybrid Picker بهدلیل یک تغییر در تننت Microsoft 365 (مثلاً تغییر در سیاستهای امنیتی Conditional Access) نامعتبر شده است.
راهکار عملی: من همیشه توصیه میکنم یک اسکریپت مانیتورینگ PowerShell بنویسید که بهصورت هفتگی وضعیت اعتماد S2S را با دستوراتی مثل `Get-SPAzureAccessControlServiceApplicationProxy` و بررسی تاریخ انقضای گواهیها چک کند و در صورت نزدیک شدن به تاریخ انقضا (مثلاً ۳۰ روز قبل)، هشدار ایمیلی بفرستد. این یک اقدام پیشگیرانهی ساده است که میتواند ساعتها زمان عیبیابی اضطراری را ذخیره کند.
یکی از موقعیتهایی که همیشه گروهی از کاربران را گیج میکند این است: نیمی از کارمندان میگویند OneDrive Redirection درست کار میکند، اما نیمی دیگر میگویند هنوز به My Site قدیمی هدایت میشوند. قبل از اینکه فکر کنید تنظیمات Audience اشتباه است (که البته باید حتماً چک شود)، اول باید Cache مرورگر و هرگونه Reverse Proxy یا CDN که بین کاربر و فارم شما قرار دارد را بررسی کنید. صفحات SharePoint گاهی توسط پروکسیهای سازمانی کش میشوند و تا زمانی که این کش پاک نشود یا زمان انقضای آن نگذرد، کاربر همچنان نسخهی قدیمی صفحه را میبیند.
توصیهی من: قبل از هر رولآوت گسترده، حتماً با تیم شبکه هماهنگ کنید که هدرهای Cache-Control بهدرستی روی صفحات کلیدی هیبریدی (مثل صفحهی اصلی My Site) تنظیم شده باشند، و به کاربران آموزش دهید که در صورت مشاهدهی رفتار عجیب، ابتدا یک Hard Refresh (Ctrl+F5) امتحان کنند.
این یکی از خطرناکترین مشکلات از نظر امنیتی است، نه فقط از نظر تجربهی کاربری. فرض کنید یک سند در SharePoint Server محدود به یک گروه خاص از کاربران است. وقتی این سند در نتایج جستوجوی هیبریدی در SharePoint Online ظاهر میشود، SharePoint باید بتواند در لحظهی جستوجو، تشخیص دهد که آیا کاربر فعلی واقعاً اجازهی دیدن آن سند را دارد یا نه. این کار از طریق چیزی به نام Security Trimming انجام میشود.
مشکل زمانی به وجود میآید که مپینگ هویتی بین کاربر داخلی (مثلاً `DOMAIN\username`) و هویت کلاود (`username@company.com`) بهدرستی برقرار نباشد، که معمولاً بهخاطر عدم تطابق در ویژگی ImmutableID یا مشکلات سینک Azure AD Connect اتفاق میافتد. در بدترین حالت، این میتواند منجر به این شود که کاربری در نتایج جستوجو محتوایی را ببیند که واقعاً نباید ببیند، یا برعکس، محتوایی که باید ببیند برایش پنهان بماند. من همیشه در این موارد پیشنهاد میکنم یک تست دورهای امنیتی (Access Review) طراحی کنید که با چند حساب کاربری تست با سطح دسترسی متفاوت، رفتار جستوجو را validate کند، نه فقط یکبار در زمان راهاندازی، بلکه بهصورت مستمر بعد از هر تغییر بزرگ در ساختار گروههای امنیتی.
همانطور که قبلاً اشاره کردم، فارمهای بزرگ با میلیونها آیتم محتوا، در Initial Crawl با مشکلات کارایی مواجه میشوند. اما مشکل فقط به Crawl اول محدود نمیشود. حتی در Incremental Crawlهای روزانه، اگر تعداد تغییرات محتوا در یک روز خیلی زیاد باشد (مثلاً بعد از یک migration داخلی بزرگ)، ممکن است Crawl Component به Timeout بخورد و بخشی از محتوا هیچوقت ایندکس نشود، بدون اینکه خطای واضحی در رابط کاربری نمایش داده شود.
راهکار عملی این است که Crawl Log را بهطور منظم (نه فقط وقتی کاربر شکایت میکند) بررسی کنید، بهخصوص وضعیتهای «Warning» و «Error» را فیلتر کنید، و برای دیتابیسهای Content بسیار بزرگ، فکر کنید که آیا نیاز به تقسیم آنها به چند Content Database کوچکتر دارید یا نه؛ چون کارایی Crawl مستقیماً به معماری دیتابیس نیز مرتبط است، نه فقط به تنظیمات Search Service.
خیلی از فارمهای SharePoint Server قدیمی، پر از راهحلهای سفارشی هستند: Web Partهای نوشتهشده با Full Trust Solutions، Workflowهای SharePoint 2010 یا 2013 که با SharePoint Designer ساخته شدهاند، یا حتی Event Receiverهای سطح Farm. وقتی این فارم را وارد یک معماری هیبریدی میکنید، این راهحلهای سفارشی معمولاً کار خودشان را ادامه میدهند (چون آنها روی همان فارم داخلی اجرا میشوند)، اما مشکل زمانی شروع میشود که بخواهید محتوای مرتبط با آنها را به کلاود منتقل کنید یا آنها را با قابلیتهای Microsoft 365 مثل Power Automate یکپارچه کنید.
واقعیت این است که SharePoint Online بههیچوجه از Full Trust Solutions پشتیبانی نمیکند و مدل توسعه در کلاود کاملاً به سمت SharePoint Framework (SPFx) و APIهای مبتنی بر Microsoft Graph رفته است. این یعنی اگر سازمان شما به این راهحلهای قدیمی وابسته است، بخشی از پروژهی هیبریدی شما باید شامل یک نقشهی بازنویسی (Modernization Roadmap) باشد، نه صرفاً یک اتصال فنی بین دو محیط. نادیدهگرفتن این موضوع باعث میشود سازمانها سالها در حالت هیبریدی بمانند، نه بهخاطر انتخاب استراتژیک، بلکه بهخاطر وابستگی فنی که هیچوقت واقعاً برایش برنامهریزی نشده.
وقتی محیط شما هیبریدی میشود، سطح حمله (Attack Surface) شما هم گستردهتر میشود. این یک نکتهی ساده اما کلیدی است که خیلی وقتها در هیجان راهاندازی قابلیتهای جدید فراموش میشود. یک فارم SharePoint Server که تا امروز فقط از داخل شبکهی سازمانی قابلدسترس بود، برای اینکه بتواند در معماری هیبریدی نقش بازی کند (مثلاً برای Hybrid Sites Features یا برای اینکه Cloud SSA بتواند از طریق اینترنت به آن متصل شود)، معمولاً باید بخشی از سرویسهایش را بهنوعی در معرض اینترنت قرار دهد.
اینجا جایی است که Azure AD Application Proxy یا راهحلهای مشابه Reverse Proxy وارد میشوند. بهجای اینکه مستقیماً پورتهای فارم داخلی را به اینترنت باز کنید (که یک ریسک امنیتی بزرگ است)، این ابزارها یک لایهی میانی امن ایجاد میکنند که ترافیک را احراز هویت و بازرسی میکند قبل از اینکه به فارم داخلی برسد. من در پروژههایی که این لایه بهدرستی طراحی نشده بود دیدهام که تیم امنیت سازمان، پس از یک Penetration Test، پروژهی هیبریدی را متوقف کرده تا این بخش دوباره طراحی شود؛ این یک تأخیر پرهزینه است که با برنامهریزی اولیهی درست کاملاً قابلپیشگیری بود.
نکتهی دیگر، Conditional Access Policies در Microsoft Entra ID است. بسیاری از سازمانها سیاستهایی مثل «فقط از دستگاههای مدیریتشده اجازهی دسترسی به SharePoint Online بدهید» یا «برای دسترسی از خارج کشور، احراز هویت دو مرحلهای الزامی باشد» را فعال میکنند. این سیاستها معمولاً خوب کار میکنند تا وقتی که به یک سرویس هیبریدی برسند که خودش نیاز به یک Service Account با دسترسی خاص دارد (مثلاً همان حسابی که Cloud SSA برای crawl از آن استفاده میکند). اگر این حساب سرویس هم مشمول همان Conditional Access Policyها شود، ممکن است فرآیندهای پسزمینه (Background Jobs) بهطور غیرمنتظره متوقف شوند. راهکار معمول این است که برای حسابهای سرویس، Exclusion یا سیاستهای جداگانه با شرایط امنیتی متناسب (نه لزوماً ضعیفتر، بلکه متفاوت، مثل محدودیت بر اساس IP Range مشخص) تعریف کنید.
یکی از سؤالاتی که همیشه در فاز طراحی باید از خودمان بپرسیم: کاربران ما از کجا به این سرویسها متصل میشوند؟ اگر سازمان شما دفاتر متعدد در نقاط مختلف جهان دارد و فارم SharePoint Server در یک دیتاسنتر مرکزی مستقر است، هر بار که Cloud Search Service Application محتوا را crawl میکند یا کاربری از یک دفتر دوردست به یک سایت هیبریدی متصل میشود، این ترافیک باید مسیر طولانیتری طی کند نسبت به وقتی که همه چیز محلی بود.
در یک پروژه با شرکتی که دفاتر آن در سه قاره پخش بود، ما مجبور شدیم Latency بین دیتاسنتر اصلی (که فارم داخلی در آن بود) و نزدیکترین Point of Presence مایکروسافت را اندازهگیری کنیم و بر اساس آن، انتظارات کاربران را در دفاتر دوردست تنظیم کنیم؛ چون تجربهی جستوجوی هیبریدی برای کاربری در همان شهر دیتاسنتر، ممکن است چند صدم ثانیه طول بکشد، اما برای کاربری در قارهی دیگر، این میتواند چند ثانیه شود، مخصوصاً اگر crawl و لود سرورها هم زمانبندی نشده باشند.
یک نکتهی عملی: همیشه پهنای باند لازم برای فرآیند Initial Full Crawl را جدا از پهنای باند روزمرهی کاربران محاسبه کنید. من در یک پروژه دیدهام که تیم شبکه پهنای باند اینترنت را برای مصرف روزانهی عادی بهدرستی تخمین زده بود، اما وقتی Initial Crawl چند ترابایت داده را در چند روز به سمت کلاود ارسال کرد، این باعث افت شدید سرعت اینترنت برای کل سازمان شد. راهحل، استفاده از QoS (Quality of Service) روی روتر مرکزی برای اولویتبندی ترافیک کاربران عادی نسبت به ترافیک پسزمینهی crawl بود.
یک سوءتفاهم رایج این است که فکر کنیم چون بخشی از بار به کلاود منتقل میشود، فارم داخلی باید سبکتر شود. واقعیت این است که در کوتاهمدت، معماری هیبریدی معمولاً بار بیشتری به فارم داخلی اضافه میکند، نه کمتر؛ چون علاوه بر سرویسدهی معمول به کاربران، فارم شما باید crawl کردن، ارسال داده به ایندکس کلاود، و مدیریت اعتماد S2S را هم انجام دهد. این یعنی سرورهایی که قبلاً با ظرفیت کافی برای بار عادی طراحی شده بودند، ممکن است زیر بار جدید کم بیاورند.
توصیهی عملی من همیشه این بوده: قبل از فعالسازی هر قابلیت هیبریدی جدید، یک دورهی Baseline Monitoring روی مصرف CPU، حافظه، و I/O دیسک سرورهای فارم انجام دهید (حداقل دو هفته)، سپس بعد از فعالسازی، همان معیارها را دوباره اندازهگیری کنید. این کار به شما اجازه میدهد قبل از اینکه کاربران شکایت کنند، متوجه شوید که آیا نیاز به افزایش منابع سرور (مثل اضافهکردن یک Crawl Component جدید روی یک سرور مجزا) دارید یا نه.
یکی از مهمترین درسهایی که از پروژههای متعدد گرفتهام این است: SharePoint Hybrid باید همیشه با یک تاریخ انقضای ذهنی طراحی شود، حتی اگر آن تاریخ چند سال بعد باشد. سازمانهایی که Hybrid را بهعنوان یک راهحل دائمی و بدون برنامهی خروج در نظر میگیرند، معمولاً بعد از چند سال متوجه میشوند که در یک باتلاق فنی گیر کردهاند: دو زیرساخت که باید همزمان patch شوند، دو مدل امنیتی که باید همزمان مانیتور شوند، و دو تیم (یا نصف یک تیم) که باید همزمان دانش هر دو دنیا را داشته باشند.
نقشهی راهی که من معمولاً برای مشتریان پیشنهاد میکنم شامل این مراحل است، هرچند ترتیب و زمانبندی دقیق به شرایط هر سازمان بستگی دارد:
نخست، یک ارزیابی کامل از محتوا و راهحلهای سفارشی انجام دهید. این یعنی باید بدانید دقیقاً چه چیزی روی فارم داخلیتان دارید: چند Site Collection، چند Custom Solution، چند Workflow قدیمی، و چه حجمی از داده. بدون این ارزیابی، هر تصمیم بعدی روی حدس و گمان بنا میشود.
دوم، اولویتبندی بر اساس ریسک و ارزش. بعضی محتواها (مثل پورتالهای فروش یا تیمهای پروژهی جدید) بهراحتی و بدون ریسک زیاد میتوانند مستقیماً به کلاود منتقل شوند. بعضی دیگر (مثل سیستمهای مرتبط با اسناد قانونی که الزامات نگهداری خاص دارند) شاید نیاز به بررسی حقوقی دقیقتری قبل از مهاجرت داشته باشند.
سوم، فعالسازی تدریجی قابلیتهای هیبریدی، شروع از Hybrid Search که کمترین ریسک را دارد و بیشترین ارزش فوری را برای کاربران ایجاد میکند، سپس OneDrive Redirection، و در نهایت قابلیتهای پیچیدهتر مثل Hybrid Sites.
چهارم، مهاجرت واقعی محتوا با ابزارهایی مثل SharePoint Migration Tool یا راهحلهای شخص ثالث مثل ShareGate یا Metalogix، بهصورت فازبندیشده، همراه با تست دقیق مجوزها بعد از هر فاز.
پنجم، بازنویسی یا بازنشستگی راهحلهای سفارشی قدیمی. این معمولاً طولانیترین و پرهزینهترین بخش پروژه است، اما بدون آن، هیچوقت واقعاً از حالت هیبریدی خارج نمیشوید.
اجازه بدهید یک نمونهی ترکیبی (بر اساس چند پروژهی واقعی، بدون افشای هویت مشتریان خاص) را با شما به اشتراک بگذارم که نشان میدهد این مسائل چطور در عمل به هم گره میخورند.
یک شرکت تولیدی با حدود چهار هزار کارمند، فارم SharePoint Server 2016 خود را با حدود ۱.۵ میلیون آیتم محتوا و بیش از سیصد Site Collection اداره میکرد. تصمیم گرفتند به Microsoft 365 مهاجرت کنند، اما بهخاطر یک سیستم مدیریت کیفیت (Quality Management System) که بهشدت به Workflowهای سفارشی SharePoint Designer و چند Web Part با Full Trust Solution وابسته بود، مهاجرت کامل و فوری غیرممکن بود؛ این سیستم مستقیماً با خط تولید کارخانه در ارتباط بود و هرگونه اختلال میتوانست هزینهی مالی مستقیم داشته باشد.
فاز اول پروژه، فعالسازی Hybrid Search بود. این کار در حدود شش هفته طول کشید، که بخش زیادی از آن صرف رفع مشکلات مربوط به اعتماد S2S و تست دقیق Security Trimming شد؛ چون این شرکت گروههای امنیتی بسیار پیچیدهای داشت که از دههها پیش انباشته شده بودند و بسیاری از آنها اصلاً بهروز نشده بودند (کارمندانی که سالها پیش شرکت را ترک کرده بودند هنوز در گروههای امنیتی عضو بودند). این خودش یک هشدار مهم است: پروژهی هیبریدی، فرصت خوبی است برای پاکسازی و مرور مجوزهای قدیمی، نه صرفاً یک اتصال فنی صرف.
فاز دوم، فعالسازی OneDrive Redirection برای دپارتمانهای غیرتولیدی (مثل منابع انسانی، مالی، و فروش) بود که در حدود هزار کاربر را شامل میشد. این فاز بهمراتب سادهتر پیش رفت، عمدتاً چون تیم IT از تجربهی فاز اول یاد گرفته بود که ابتدا باید Audience Groups را دقیق تعریف کند و رولآوت را در دستههای صد نفره انجام دهد.
فاز سوم، که هنوز در زمان نگارش این تجربه ادامه داشت، بازنویسی سیستم مدیریت کیفیت با استفاده از SharePoint Framework و Power Automate بود، بهطوری که بتواند هم با محیط داخلی (که هنوز بهخاطر ارتباط مستقیم با خط تولید نیاز بود) و هم با محیط کلاود سازگار باشد. تخمین زده میشد این فاز حداقل هجده ماه طول بکشد، که نشان میدهد چرا SharePoint Hybrid برای بسیاری از سازمانها بیشتر شبیه یک وضعیت میانمدت چند ساله است تا یک مرحلهی گذرِ چند ماهه.
نکتهای که از این پروژه یاد گرفتم و فکر میکنم برای هر تیمی که وارد این مسیر میشود ارزشمند است: موفقیت پروژهی هیبریدی، خیلی کمتر از آنچه انتظار داریم به تنظیمات فنی PowerShell و ویزاردهای پیکربندی بستگی دارد، و خیلی بیشتر از آنچه انتظار داریم به مدیریت تغییر (Change Management)، ارتباط شفاف با کاربران نهایی، و صبر برای فازبندی درست بستگی دارد.
یک بخش که اغلب در بحثهای فنی SharePoint Hybrid فراموش میشود، سرنوشت Managed Metadata Service (MMS) و ساختار Taxonomy است. در بسیاری از سازمانها، طی سالها یک درخت طبقهبندی پیچیده برای اسناد، محصولات، یا پروژهها در فارم داخلی ساخته شده است. وقتی وارد دنیای هیبریدی میشوید، باید تصمیم بگیرید: آیا این Term Store داخلی باقی میماند و SharePoint Online باید بهنحوی به آن ارجاع دهد، یا اینکه یک Term Store جدید و مستقل در کلاود میسازید و بهمرور محتوای قدیمی را با آن همراستا میکنید؟
واقعیت این است که SharePoint Server و SharePoint Online دو Term Store کاملاً مجزا دارند و هیچ مکانیزم بومی و سادهای برای سینک دوطرفهی خودکار بین آنها وجود ندارد. تجربهی من نشان داده که بهترین رویکرد، تعریف یک Term Store واحد بهعنوان مرجع (که معمولاً باید همان Term Store کلاود باشد، چون آینده به آن سمت میرود) و سپس، برای دورهی گذار، استفاده از یک اسکریپت میانافزار (Middleware Script) است که بهصورت دورهای Termهای جدید ایجادشده در محیط داخلی را با کلاود همگام میکند، تا زمانی که مهاجرت کامل شود. اگر این تصمیم را از ابتدا نگیرید، به مرور دو مجموعهی طبقهبندی ناهماهنگ خواهید داشت که کاربران را در فیلتر کردن و جستوجوی محتوا سردرگم میکند.
نکتهی دیگر مربوط به Content Types است. اگر سازمان شما Content Type Hub در محیط داخلی دارد که Content Typeهای سازمانی را به تمام Site Collectionها منتشر میکند، باید بدانید که SharePoint Online مکانیزم انتشار خودش را دارد که با محیط داخلی مستقل است. تلاش برای نگهداشتن یک منبع واحد Content Type بین دو محیط معمولاً بیشتر از فایده، سردرگمی ایجاد میکند، مگر اینکه با ابزارهای شخص ثالث یا اسکریپتهای سفارشی این هماهنگی را مدیریت کنید. توصیهی عملی: برای محتوای جدید، از همان ابتدا Content Typeها را در کلاود تعریف کنید و فقط برای محتوای قدیمی که هنوز در حال مهاجرت است، اجازه دهید Content Type Hub داخلی به کار خودش ادامه دهد.
یکی از بزرگترین اشتباهاتی که در پروژههای SharePoint Hybrid دیدهام، این است که تیمهای فنی مدل حاکمیتی را بعد از راهاندازی فنی تدوین میکنند، نه قبل از آن. حاکمیت در اینجا یعنی مجموعهای از قوانین روشن دربارهی اینکه: چه نوع محتوایی باید در محیط داخلی بماند و چه نوع محتوایی باید به کلاود منتقل شود؛ چه کسی اجازه دارد Site Collection جدید در هر محیط ایجاد کند؛ چطور تصمیم میگیرید یک سایت هیبریدی است یا خیر؛ و مهمتر از همه، چه سیاست نگهداری داده (Retention Policy) برای هر نوع محتوا در هر محیط اعمال میشود.
بدون یک مدل حاکمیتی روشن، معمولاً اتفاقی میافتد که در چند سازمان مختلف دیدهام: کارمندان، بدون هدایت مشخص، خودشان تصمیم میگیرند که کجا محتوای جدید بسازند. نتیجه یک آشفتگی است که در آن، پروژههای مشابه، بعضی در SharePoint Server و بعضی در SharePoint Online زندگی میکنند، بدون هیچ منطق روشنی، فقط بر اساس اینکه کدام تیم زودتر یاد گرفته چطور یک سایت جدید بسازد. جمعکردن این آشفتگی بعد از چند سال، بسیار سختتر و پرهزینهتر از تعیین یک قانون روشن از روز اول است.
پیشنهاد من: از همان اولین روزی که تصمیم به راهاندازی SharePoint Hybrid میگیرید، یک سند حاکمیتی کوتاه (حتی اگر فقط دو یا سه صفحه باشد) تهیه کنید که به زبان ساده برای کارمندان توضیح دهد: «برای این نوع کار، از این محیط استفاده کنید؛ برای آن نوع کار، از آن محیط.» این سند باید در طول زمان بهروزرسانی شود، اما وجود همان نسخهی اولیهی ساده، بسیار بهتر از نبود هیچ راهنمایی است.
یک سؤال که تقریباً همیشه در جلسات معماری با تیمهای امنیت و ریسک مطرح میشود: «اگر فارم داخلی ما به هر دلیلی (خرابی سختافزاری، حملهی سایبری، یا قطعی برق دیتاسنتر) از کار بیفتد، چه اتفاقی برای تجربهی هیبریدی میافتد؟» پاسخ این است که بستگی دارد کدام قابلیتهای هیبریدی فعال باشند و چطور طراحی شده باشند.
اگر فارم داخلی از کار بیفتد، جستوجوی هیبریدی همچنان بخش کلاود نتایج را نشان میدهد (چون آن بخش از ایندکس مستقل از فارم داخلی نگهداری میشود)، اما نتایج محتوای داخلی بهطور طبیعی دیگر ایندکس نمیشوند تا زمانی که فارم برگردد؛ و کاربرانی که سعی کنند مستقیماً به لینکهای محتوای داخلی کلیک کنند، با خطا مواجه میشوند. این یعنی حتی در یک معماری هیبریدی، محتوای On-Premises همچنان به یک استراتژی Disaster Recovery مستقل و قوی برای خودش نیاز دارد؛ Hybrid بههیچوجه جایگزین Backup و DR داخلی نمیشود، فقط تأثیر یک قطعی را تا حدی محدود میکند (کاربران حداقل بخشی از سرویس، یعنی محتوای کلاود، را همچنان در دسترس دارند).
از طرف دیگر، بسیاری از سازمانها اشتباهاً فکر میکنند که چون به هیبریدی رفتهاند، نیازی به Backup داخلی جداگانه ندارند، یا برعکس، برای محیط کلاود Backup نمیگیرند چون فکر میکنند مایکروسافت این کار را میکند. واقعیت این است که Microsoft 365 مدل مسئولیت مشترک (Shared Responsibility Model) دارد: مایکروسافت مسئول در دسترسبودن زیرساخت است، اما بازیابی داده در سطح آیتم (مثلاً یک سند که به اشتباه حذف یا بازنویسی شده) معمولاً وظیفهی خود سازمان است، از طریق ابزارهایی مثل Microsoft Purview یا راهحلهای Backup شخص ثالث مخصوص Microsoft 365. یک استراتژی هیبریدی کامل باید هر دو جنبه را پوشش دهد: DR برای فارم داخلی، و یک راهحل Backup مستقل برای محتوای کلاود.
یکی از سؤالاتی که تقریباً در هر پروژهی SharePoint Hybrid از طرف مدیریت مالی یا مدیریت ارشد مطرح میشود، این است: «آیا رفتن به حالت هیبریدی، هزینهی ما را کم میکند یا زیاد؟» جواب صادقانه این است: در کوتاهمدت، معمولاً هزینهی شما افزایش مییابد، نه کاهش. دلیلش ساده است: شما همچنان باید هزینههای نگهداری فارم داخلی (لایسنس SharePoint Server، لایسنس ویندوز سرور، هزینهی SQL Server، برق و خنکسازی دیتاسنتر، و نیروی انسانی متخصص) را بپردازید، و در عین حال هزینهی لایسنسهای Microsoft 365 برای کاربرانی که از قابلیتهای کلاود استفاده میکنند را هم اضافه میکنید.
نکتهی مهم دربارهی لایسنس SharePoint Server: برای فعالسازی برخی قابلیتهای هیبریدی (بهخصوص Hybrid Search با Cloud SSA)، معمولاً باید از نسخهای از SharePoint Server استفاده کنید که حداقل با Software Assurance فعال باشد یا از مدل Subscription Edition بهره ببرید، که خودش تغییری در مدل لایسنس سنتی محسوب میشود که تیمهای مالی باید از آن آگاه باشند. توصیهی من این است که پیش از شروع هر پروژهی هیبریدی، یک جلسهی مشترک بین تیم فنی و تیم تدارکات (Procurement) برگزار کنید تا مطمئن شوید لایسنسهای فعلی سازمان واقعاً از قابلیتهای مدنظر پشتیبانی میکنند؛ من بیش از یکبار دیدهام که یک پروژه در میانهی راه متوقف شده، فقط بهخاطر اینکه تازه متوجه شدهاند لایسنس فعلیشان کفایت نمیکند.
از طرف دیگر، ارزش واقعی SharePoint Hybrid نه در کاهش هزینهی مستقیم، بلکه در کاهش ریسک مهاجرت، حفظ سرمایهگذاریهای قبلی، و ایجاد یک مسیر تدریجی و کمریسکتر به سمت کلاود نهفته است. اگر مدیریت ارشد سازمان شما انتظار دارد Hybrid فوراً هزینهها را کاهش دهد، این انتظار باید از همان ابتدا با دادههای واقعی اصلاح شود، وگرنه در میانهی پروژه با یک چالش ذهنیتی بزرگ در سطح مدیریتی مواجه خواهید شد.
آیا SharePoint Hybrid برای سازمانهای کوچک هم منطقی است؟
در بیشتر موارد، نه. پیچیدگی پیادهسازی و نگهداری یک معماری SharePoint Hybrid معمولاً برای سازمانهای کوچک (کمتر از چند صد کاربر) توجیه اقتصادی ندارد، مگر اینکه یک الزام قانونی خاص یا یک وابستگی فنی جدی به یک راهحل سفارشی قدیمی وجود داشته باشد. برای اکثر سازمانهای کوچک و متوسط، مهاجرت مستقیم و کامل به SharePoint Online معمولاً سادهتر، ارزانتر، و کمدردسرتر است.
چه مدت زمان معمولاً طول میکشد تا یک پیادهسازی SharePoint Hybrid پایدار شود؟
بر اساس تجربهی من، حتی برای یک پیادهسازی نسبتاً ساده (فقط Hybrid Search)، بین شش تا دوازده هفته طول میکشد تا به یک وضعیت واقعاً پایدار و بدون مشکلات روزمره برسید، به شرطی که فارم داخلی از قبل سالم و بهروز باشد. اگر فارم شما مشکلات زیرساختی قدیمی (مثل Classic-mode Authentication یا نسخههای قدیمیتر از SharePoint 2013) دارد، این زمان میتواند بهراحتی چند ماه بیشتر شود، چون ابتدا باید آن مشکلات پایهای را حل کنید.
آیا میتوان SharePoint Hybrid را بدون Azure AD Connect پیادهسازی کرد؟
عملاً نه، حداقل نه بهشکلی که برای اکثر سازمانها قابلاستفاده باشد. Azure AD Connect (یا نسخههای جدیدتر آن) ستون فقرات هرگونه هماهنگی هویتی بین Active Directory داخلی و Microsoft Entra ID است. بدون آن، شما مجبور خواهید بود حسابهای کاربری را بهصورت دستی در هر دو محیط مدیریت کنید، که برای بیش از چند ده کاربر عملاً غیرممکن است.
آیا SharePoint Hybrid امنیت سازمان را ضعیفتر میکند؟
نه لزوماً، اما پیچیدهتر میکند. امنیت یک معماری هیبریدی میتواند به همان اندازهی یک معماری تکمحیطی قوی باشد، به شرطی که لایههای ارتباطی بین دو محیط (S2S Trust، Reverse Proxy، Conditional Access) با دقت طراحی و بهطور مستمر مانیتور شوند. مشکل معمولاً زمانی پیش میآید که سازمانها این پیچیدگی اضافه را دستکم میگیرند و منابع کافی برای مانیتورینگ مستمر آن اختصاص نمیدهند.
بعد از فعالسازی Hybrid Search، آیا نیازی به نگهداری Search Service Application قدیمی در فارم داخلی هست؟
بله، معمولاً هنوز به یک Search Service Application محلی نیاز دارید، چون Cloud SSA برای crawl کردن محتوای داخلی، بهنوعی از زیرساخت Search محلی هم استفاده میکند. حذف کامل Search Service Application داخلی قبل از تکمیل کامل مهاجرت محتوا، معمولاً باعث از کار افتادن کامل جستوجو در بخشهایی از فارم میشود که هنوز داخلی باقی ماندهاند.
آیا کاربران نهایی متوجه تفاوت بین محتوای داخلی و کلاود میشوند؟
اگر پیادهسازی بهدرستی انجام شده باشد، تجربهی کاربر باید تا حد زیادی یکپارچه باشد، بهخصوص در جستوجو. اما تفاوتهای ظریفی همیشه باقی میمانند: سرعت بازشدن صفحات ممکن است کمی متفاوت باشد، برخی قابلیتهای مدرن (مثل Co-authoring پیشرفته یا Modern Web Parts) فقط در کلاود در دسترساند، و ظاهر برخی صفحات کلاسیک در فارم داخلی با ظاهر مدرن SharePoint Online یکسان نخواهد بود، مگر اینکه فارم داخلی هم بهروزرسانی و بازطراحی شده باشد.
برای اینکه این مقاله صرفاً در سطح مفهومی باقی نماند، بیایید مراحل عملی راهاندازی یک محیط SharePoint Hybrid پایه (تمرکز روی Hybrid Search، چون معمولاً نقطهی شروع اکثر پروژهها است) را با جزئیات بیشتری بررسی کنیم. این مراحل را میتوان بهعنوان یک نقشهی راه عملی در نظر گرفت، نه یک دستورالعمل قدمبهقدم دقیق که بدون تغییر برای هر سازمان کار کند.
قبل از هر اقدامی، باید مطمئن شوید فارم SharePoint Server شما نسخهی مناسبی دارد (SharePoint Server 2016 با آخرین Cumulative Update، SharePoint Server 2019، یا SharePoint Server Subscription Edition) و تمام Web Applicationهای مرتبط از Claims-based Authentication استفاده میکنند. اگر فارم شما هنوز از Classic-mode استفاده میکند، باید ابتدا این مهاجرت داخلی (که خودش نیازمند برنامهریزی و تست جداگانه است) را انجام دهید. همچنین باید مطمئن شوید که فارم شما به اینترنت (حداقل برای ترافیک خروجی به دامنههای مشخص مایکروسافت) دسترسی دارد.
اگر هنوز Azure AD Connect را پیادهسازی نکردهاید، این باید اولین قدم واقعی شما باشد. باید تصمیم بگیرید کدام مدل هویتی (Password Hash Sync، Pass-through Authentication، یا Federation) برای سازمان شما مناسبتر است؛ برای اکثر سازمانها، Password Hash Sync سادهترین و کمدردسرترین گزینه است، مگر اینکه یک الزام خاص امنیتی یا نظارتی، مدل دیگری را ایجاب کند. پس از نصب، باید فرآیند سینک اولیه را با دقت مانیتور کنید تا مطمئن شوید همهی حسابهای کاربری و گروههای امنیتی مرتبط، بدون خطا به Microsoft Entra ID منتقل شدهاند.
مایکروسافت ابزاری به نام Hybrid Picker (که در نسخههای جدیدتر با نامهای مختلفی در Microsoft 365 Admin Center یا SharePoint Admin Center ظاهر میشود) ارائه میدهد که فرآیند برقراری اعتماد S2S را تا حد زیادی ساده میکند. این ابزار از شما میخواهد که به هر دو محیط (داخلی و کلاود) با حسابهای Admin متصل شوید و سپس بهصورت خودکار گواهیها و تنظیمات لازم را پیکربندی میکند. با این حال، توصیهی من این است که حتی بعد از اجرای این ویزارد، خروجی آن (مثلاً از طریق دستور `Get-SPAzureAccessControlServiceApplicationProxy` یا بررسی تنظیمات Trusted Security Token Issuers) را بهصورت دستی هم بازبینی کنید تا از صحت پیکربندی مطمئن شوید.
این مرحله شامل ایجاد یک Search Service Application جدید در فارم داخلی است که بهجای ذخیرهی ایندکس بهصورت محلی، آن را به SharePoint Online ارسال میکند. باید Content Source مناسب را تعریف کنید (مشخص کنید کدام Site Collectionها باید crawl شوند)، Crawl Schedule را متناسب با حجم محتوا و ساعات کمترافیک تنظیم کنید، و Result Sourceهای لازم را برای نمایش صحیح نتایج در SharePoint Online پیکربندی کنید.
قبل از اینکه این قابلیت را برای همهی کاربران فعال کنید، یک گروه تست کوچک (ده تا بیست کاربر از دپارتمانهای مختلف با سطوح دسترسی متفاوت) تشکیل دهید. این گروه باید موارد مختلف را تست کند: آیا نتایج جستوجوی داخلی بهدرستی در SharePoint Online نمایش داده میشوند؟ آیا Security Trimming بهدرستی کار میکند (یعنی کاربر فقط چیزی را میبیند که واقعاً به آن دسترسی دارد)؟ آیا سرعت نمایش نتایج قابلقبول است؟
بعد از تست موفق، قابلیت را بهصورت فازبندیشده (مثلاً یک دپارتمان در هفته) به کل سازمان گسترش دهید. در طول این فاز، یک کانال ارتباطی مشخص (مثل یک گروه Teams یا یک آدرس ایمیل اختصاصی) برای جمعآوری بازخورد و گزارش مشکلات ایجاد کنید، و به تیم پشتیبانی خود آموزش دهید که چطور مشکلات رایج (که در بخشهای قبلی این مقاله توضیح دادم) را تشخیص دهند.
فراتر از مراحل راهاندازی اولیه، نگهداری بلندمدت یک محیط SharePoint Hybrid نیاز به ابزارهای مانیتورینگ مستمر دارد. چند مورد که در پروژههای مختلف برایم مفید بودهاند را ذکر میکنم:
یک اسکریپت PowerShell زمانبندیشده که هر روز صبح وضعیت Crawl Log را بررسی میکند و اگر تعداد خطاها از یک آستانهی مشخص (مثلاً بیشتر از پنجاه خطای جدید) عبور کند، یک ایمیل هشدار به تیم فنی میفرستد. این کار به شما اجازه میدهد قبل از اینکه کاربران متوجه مشکل جستوجو شوند، خودتان آن را کشف و رفع کنید.
یک داشبورد ساده مبتنی بر Power BI یا حتی یک صفحهی Excel بهروزرسانیشده بهصورت خودکار که وضعیت گواهیهای SSL مرتبط با S2S Trust را نشان میدهد، همراه با تاریخ انقضا و تعداد روزهای باقیمانده. این ابزار ساده میتواند مشکل رایج اول این مقاله (شکست S2S Trust بهخاطر گواهی منقضی) را تا حد زیادی از بین ببرد.
یک فرآیند مرور دورهای مجوزها (Access Review) که حداقل هر شش ماه یکبار انجام میشود و بررسی میکند آیا گروههای امنیتی مورد استفاده در Security Trimming هنوز بهروز و دقیق هستند یا نه. این کار میتواند بهصورت نیمهخودکار با گزارشهای Azure AD دربارهی اعضای گروههای امنیتی و مقایسهی آنها با لیست کارمندان فعلی سازمان انجام شود.
در نهایت، توصیه میکنم برای هر محیط هیبریدی، یک Runbook مستند (سندی که مراحل دقیق عیبیابی مشکلات رایج را شرح میدهد) ایجاد کنید تا در صورت بروز مشکل، حتی یک عضو جدید تیم بتواند بدون نیاز به دانش عمیق قبلی، مراحل اولیهی عیبیابی را دنبال کند. این سند باید شامل لیست دستورات PowerShell کلیدی، مسیر بررسی ULS Logs، و اطلاعات تماس با تیمهای مربوطه (شبکه، امنیت، Active Directory) باشد.
نکتهای که هر تیم فنی باید در ذهن داشته باشد این است که سرمایهگذاری مایکروسافت روی قابلیتهای جدید عمدتاً به سمت SharePoint Online و Microsoft 365 رفته، نه به سمت SharePoint Server. این یعنی با گذر زمان، فاصلهی قابلیتی بین این دو محیط بیشتر میشود: ویژگیهای مبتنی بر هوش مصنوعی مثل Copilot، تجربههای مدرن صفحهی اصلی، و بسیاری از بهبودهای امنیتی جدید، عمدتاً یا فقط در کلاود عرضه میشوند. این بدان معنا نیست که SharePoint Server داخلی بهطور ناگهانی از کار میافتد یا بیفایده میشود، اما هر سازمانی که تصمیم به نگهداری بلندمدت یک معماری هیبریدی میگیرد، باید این واقعیت را در برنامهریزی خود لحاظ کند: فاصلهی تجربهی کاربری بین دو محیط، با گذر زمان، بهطور طبیعی بیشتر میشود، نه کمتر.
این موضوع یک پیامد عملی مهم دارد: اگر سازمان شما برنامه دارد برای مدت طولانی (بیش از سه تا پنج سال) در حالت هیبریدی باقی بماند، باید یک برنامهی بهروزرسانی مستمر برای فارم داخلی هم داشته باشد، نه فقط یک نصب یکباره که بعد از آن فراموش شود. Cumulative Updateهای منظم، مانیتورینگ امنیتی، و در صورت لزوم ارتقا به نسخههای جدیدتر (مثل مهاجرت از SharePoint 2016 به Subscription Edition) باید بخشی از برنامهی عملیاتی بلندمدت شما باشد، دقیقاً به همان اندازهای که برنامهریزی برای محیط کلاود اهمیت دارد.
اگر شما در جایگاهی هستید که باید دربارهی رفتن به سمت SharePoint Hybrid تصمیم بگیرید، مهمترین سؤالی که باید از خودتان بپرسید این نیست که «آیا از نظر فنی امکانپذیر است؟» (تقریباً همیشه امکانپذیر است)، بلکه این است: «آیا سازمان من منابع، دانش، و صبر لازم برای نگهداری یک زیرساخت دوگانه را در طول زمانی که نیاز است، دارد؟» تجربهی من نشان داده که پاسخ صادقانه به این سؤال، بیشتر از هر ابزار یا اسکریپت فنی، تعیینکنندهی موفقیت یا شکست پروژهی SharePoint Hybrid است.
سازمانهایی که این مسیر را با دیدی واقعبینانه، برنامهریزی فازبندیشده، و توجه جدی به مانیتورینگ و مدیریت تغییر آغاز میکنند، معمولاً به یک وضعیت پایدار و کارآمد میرسند که هم ارزش سرمایهگذاریهای قبلی را حفظ میکند و هم مسیر روشنی به سمت آیندهی کلاود باز میگذارد. سازمانهایی که این مسیر را با عجله و بدون آمادگی کافی شروع میکنند، معمولاً سالها با مشکلاتی دستوپنجه نرم میکنند که از همان روز اول قابلپیشبینی بودند. امیدوارم این مقاله، با تمرکز روی سناریوهای واقعی و مشکلاتی که کمتر در مستندات رسمی به آنها پرداخته میشود، به شما در طراحی یک مسیر آگاهانهتر برای SharePoint Hybrid کمک کرده باشد.
بعد از سالها کار روی این نوع پروژهها، اگر بخواهم چند توصیه را خلاصه کنم که واقعاً فرق ایجاد میکنند، اینها هستند:
مانیتورینگ را از روز اول جدی بگیرید، نه بعد از اولین بحران. بسیاری از مشکلاتی که در این مقاله توضیح دادم (انقضای گواهی، Timeout در crawl، ناهماهنگی مجوز) قابلپیشبینی هستند اگر یک سیستم مانیتورینگ فعال داشته باشید. ابزارهایی مثل SharePoint Health Analyzer بهتنهایی کافی نیستند؛ شما به مانیتورینگ سفارشی برای وضعیت S2S Trust و Crawl Health نیاز دارید.
تیم پشتیبانی خود را برای سؤالات دوگانه آموزش دهید. وقتی کاربری تیکت میزند «جستوجو کار نمیکند»، تیم Help Desk شما باید بداند که این میتواند به دلایل کاملاً متفاوتی در دو محیط مختلف رخ دهد. اگر تیم پشتیبانی شما فقط با یکی از این دو دنیا آشنا باشد، زمان حل مشکل بهشدت افزایش مییابد.
قبل از فعالسازی هر قابلیت جدید، یک محیط تست (اگر ممکن است، حتی یک فارم تست هیبریدی کوچک) داشته باشید. خیلی از مشکلاتی که توضیح دادم، در محیط تست با ابعاد کوچکتر بسیار سریعتر و بیخطرتر قابلکشف بودند تا در محیط Production با هزاران کاربر فعال.
اسناد پیکربندی را دقیق نگه دارید. یکی از بزرگترین مشکلاتی که در پروژههای طولانیمدت هیبریدی دیدهام این است که فرد یا تیمی که پیکربندی اولیهی S2S Trust یا Hybrid Picker را انجام داده، بعد از یک یا دو سال سازمان را ترک کرده، و تیم جدید هیچ سندی از اینکه چرا و چطور این تنظیمات انجام شدهاند ندارد. این یک ریسک عملیاتی واقعی است که با یک صفحهی سادهی Wiki داخلی و بهروز، کاملاً قابلپیشگیری است.
انتظارات کاربران را مدیریت کنید، نه فقط زیرساخت را. بسیاری از شکایات کاربران دربارهی SharePoint Hybrid، در واقع شکایت از خود تکنولوژی نیست، بلکه شکایت از عدم اطلاعرسانی است. اگر به کاربران از قبل توضیح دهید که «بهزودی وقتی روی OneDrive کلیک کنید، به یک محیط جدید هدایت میشوید و این طبیعی است»، بسیاری از تیکتهای پشتیبانی هیچوقت ایجاد نمیشوند.
برای کسانی که میخواهند این مسیر را شروع کنند، این فهرست را بهعنوان نقطهی شروع (نه یک راهنمای کامل) در نظر بگیرید:
آیا نسخهی فارم SharePoint Server شما (2016 یا 2019) از قابلیتهای هیبریدی مدنظر پشتیبانی میکند؟ آیا فارم شما در حال حاضر روی Claims-based Authentication است یا هنوز Classic-mode دارد؟ آیا Azure AD Connect را با مدل هویتی مناسب (Password Hash Sync، PTA، یا Federation) پیادهسازی کردهاید؟ آیا یک برنامهی مشخص برای تمدید گواهیهای SSL مرتبط با S2S Trust دارید؟ آیا گروههای امنیتی و مجوزهای موجود را در سال گذشته مرور کردهاید یا هنوز انباشته از دسترسیهای قدیمی هستند؟ آیا تیم شبکه از الزامات پهنای باند برای Initial Crawl آگاه است؟ آیا یک محیط تست برای اعتبارسنجی تغییرات قبل از اعمال روی Production دارید؟ آیا مستندات و برنامهی مدیریت تغییر برای کاربران نهایی آماده کردهاید؟ ایا با امنیت در شیرپوینت اشنایی دارید؟
اگر پاسخ به بیش از دو یا سه مورد از این سؤالات «نه» یا «نمیدانم» است، پیشنهاد من این است که قبل از فعالسازی هرگونه قابلیت هیبریدی در محیط Production، این شکافها را پر کنید. عجله در این نوع پروژهها معمولاً هزینهی بیشتری نسبت به صبر اولیه ایجاد میکند.
اگر یک پیام از این مقاله باید در ذهن شما بماند، این است: SharePoint Hybrid صرفاً یک سری گزینهی فعال/غیرفعال در Central Administration نیست؛ یک تصمیم معماری و استراتژیک است که روی امنیت، عملکرد، تجربهی کاربری، و حتی ساختار تیم IT شما تأثیر میگذارد. سازمانهایی که در این مسیر موفقتر بودهاند، معمولاً آنهایی هستند که این را از ابتدا بهعنوان یک سفر چندمرحلهای با نقاط بازبینی مشخص دیدهاند، نه یک پروژهی «نصب و راهاندازی» ساده.
اگر در حال حاضر در ابتدای این مسیر هستید، بهترین کاری که میتوانید انجام دهید این است: با کوچکترین و کمریسکترین قابلیت (معمولاً Hybrid Search) شروع کنید، از آن یاد بگیرید، سیستم مانیتورینگ و مستندسازی خود را از همان ابتدا جدی بگیرید، و همیشه یک نقشهی خروج ذهنی برای اینکه چه زمانی و چطور میخواهید کاملاً به کلاود مهاجرت کنید یا به یک وضعیت هیبریدی پایدارتر برسید، داشته باشید. تکنولوژی این کار را ممکن میکند؛ اما موفقیت واقعی از برنامهریزی دقیق، صبر، و توجه به جزئیاتی میآید که در مستندات رسمی بهندرت به آنها اشاره میشود.
در خبرنامه ما مشترک شوید و آخرین اخبار و به روزرسانی های را در صندوق ورودی خود مستقیماً دریافت کنید.

دیدگاه بگذارید