شما میتوانید Google Cloud Search را طوری تنظیم کنید که علاوه بر محتوای Google Workspace، نتایج محتوای SharePoint داخلی سازمان شما را نیز برگرداند. شما از رابط Google Cloud Search SharePoint On-Prem استفاده میکنید و آن را برای دسترسی به یک منبع داده SharePoint خاص پیکربندی میکنید.
ملاحظات مهم
تنظیمات SharePoint ارجمند
رابط Cloud Search SharePoint On-Prem همیشه تنظیمات Search Visibility در SharePoint را رعایت میکند، که قابل لغو نیست. برای اسناد پیشنویس، مجوزهای حساب کاربری (که رابط برای دسترسی به SharePoint Online از آن استفاده میکند) کنترل میکنند که کدام اسناد پیشنویس ایندکس شده و بازگردانده شوند. اگر حساب فقط مجوزهای "خواندن کامل" را داشته باشد، رابط تنظیمات "مشاهده آیتم پیشنویس" در SharePoint را رعایت میکند.
همچنین میتوانید کانکتور را طوری پیکربندی کنید که نتایج را بر اساس دسترسی حساب کاربری محدود کند. میتوانید از Google principals و external principals برای تعریف ACLها استفاده کنید. برای اعمال تنظیمات امنیتی برای محتوای SharePoint، شناسههای خارجی زیر را با Google Directory همگامسازی کنید:
- کاربران اکتیو دایرکتوری
- گروههای اکتیو دایرکتوری
- گروههای محلی SharePoint (با کاربران و گروههای Active Directory به عنوان عضو)
برای همگامسازی کاربران و گروههای AD، از Google Cloud Directory Sync استفاده میکنید که گروههای نگاشت هویتشده را فعال میکند. برای همگامسازی گروههای محلی SharePoint، از SharePoint Identity Connector استفاده میکنید.
کانکتور همچنین باید برای دریافت اطلاعات بیشتر جهت همگامسازی Principals، با AD جستجو انجام دهد. برای مثال، جستجو با AD به کانکتور اجازه میدهد موارد زیر را انجام دهد:
- SID یک گروه دامنه را به sAMAccountName مربوطه نگاشت کنید.
- یک کاربر sAMAccountName را به آدرس ایمیل برای عضویت در گروههای محلی SharePoint نگاشت کنید.
بهینهسازی جستجو
شما میتوانید با پیکربندی رابط برای نمایش نتایج جستجوی مرتبطتر، تجربه کاربران خود را بهبود بخشید.
برای استفاده از API، مقادیر پارامترهای تولید HTML را در فایل پیکربندی کانکتور SharePoint Online تنظیم کنید. این پارامترها به شما امکان میدهند تعیین کنید کدام فیلدها تأثیر بیشتر یا کمتری روی تطابقها داشته باشند.
برای تنظیم یک طرحواره، دستورالعملهای موجود در «ایجاد و ثبت طرحواره» را دنبال کنید. هنگام تنظیم یک طرحواره:
برای نگاشت نام انواع محتوای SharePoint به تعاریف شیء مربوطه، رابط با حذف کاراکترهای پشتیبانی نشده، نامهای نوع محتوا را عادیسازی میکند. برای تعاریف شیء، Cloud Search API فقط از AZ، az و 0-9 به عنوان کاراکترهای معتبر پشتیبانی میکند. به عنوان مثال، نوع محتوای "Announcements" به تعریف شیء "Announcements" نگاشت میشود. نوع محتوای "News Article" به "NewsArticle" (بدون فاصله) نگاشت میشود.
وقتی رابط نمیتواند تعریف یک شیء را با تعریف شیء دیگری مطابقت دهد، رابط از نوع شیء جایگزین (
itemMetadata.objectType) استفاده میکند. درباره پارامترهای پیکربندی فراداده بیشتر بدانید.برای نگاشت نامهای ویژگیهای SharePoint به تعاریف ویژگیها، رابط با رمزگشایی کاراکترهای کدگذاری شده با هگز و حذف پیشوندهای "ows_" و سپس حذف کاراکترهای پشتیبانی نشده (همه کاراکترها به جز AZ، az و 0-9 به عنوان کاراکترهای معتبر) نامهای ویژگی را عادیسازی میکند.
مدیریت پیامهای مایکروسافت اوتلوک
وقتی رابط هنگام ایندکس کردن محتوا با فایلهای .msg مایکروسافت اوتلوک مواجه میشود، نوع رسانه را برای فایلها نادیده میگیرد و آنها را به صورت application/vnd.ms-outlook.
پیکربندیهای چند مستاجری
اگر SharePoint شما یک پیادهسازی چند-مستاجری است، که در آن چندین سایت مشتری در یک برنامه وب میزبانی میشوند، باید حالت مجموعه سایت را در فایل پیکربندی پیکربندی کنید. در پیادهسازیهای چند-مستاجری، شما فقط برای مجموعه سایت خود مجوز دریافت میکنید و نمیتوانید مجوزهای Full Read را دریافت کنید، همانطور که توسط کانکتور SharePoint On-Prem لازم است.
برای فعال کردن حالت جمعآوری سایت:
- به حساب کاربری رابط، مجوزهای مدیریتی مجموعه سایت را بدهید.
-
sharepoint.serverدر فایل پیکربندی کانکتور خود روی آدرس اینترنتی مجموعه سایت، مانندhttp://sharepoint.example.com/sites/sitecollectionتنظیم کنید. نیازی نیست که آدرس اینترنتی دقیقاً از همان حروف کوچک و بزرگ در SharePoint استفاده کند. - مقدار
sharepoint.siteCollectionOnlyدر فایل پیکربندی کانکتور خود رویtrueتنظیم کنید.
اگر چندین مجموعه سایت برای فهرستبندی در یک محیط چند مستاجری دارید، باید برای هر یک از مجموعههای سایت یک نمونه کانکتور پیکربندی کنید.
محدودیتهای شناختهشدهی کانکتور
- زمانی که طول میکشد تا رابط تغییرات اقلام موجود در پایگاههای داده را تشخیص دهد، با افزایش تعداد پایگاههای دادهای که رابط مانیتور میکند، افزایش مییابد.
- مصرف حافظه با تعداد کاربران و گروههای منحصر به فردی که در ACL ها برای هر مجموعه سایت استفاده میکنید، افزایش مییابد.
- شما میتوانید کانکتور را با هویتهای فقط از یک دامنه Active Directory پیکربندی کنید.
- برخی از اصول رایج اکتیو دایرکتوری و ویندوز، مانند
Everyone،BUILTIN\UsersوAll Authenticated Users، پشتیبانی نمیشوند. - اعلانهای حذف آنی نیستند و ممکن است بیش از ۴ ساعت طول بکشد تا یک رابط تشخیص دهد که کاربر محتوایی را از مخزن منبع حذف کرده است.
الزامات سیستم
| الزامات سیستم | |
|---|---|
| سیستم عامل |
|
| نرمافزار |
|
| احراز هویت |
|
کانکتور را مستقر کنید
پیشنیازها
یک کلید خصوصی Google Workspace ایجاد کنید که حاوی شناسه حساب سرویس شما باشد. برای آشنایی با نحوه دریافت کلید خصوصی، به پیکربندی دسترسی به API جستجوی ابری گوگل (Configure access to the Google Cloud Search API) بروید.
مدیر Google Workspace شما باید یک منبع داده برای جستجو اضافه کند . شناسه منبع داده را ثبت کنید.
اگر رابط نتایج را بر اساس ACLها (نتایج عمومی نیستند) برگرداند، مدیر Google Workspace شما باید دو منبع هویت ایجاد کند و شناسههای آنها را به شما بدهد:
- یک منبع هویت برای همگامسازی کاربران و گروههای Active Directory.
- یک منبع هویت برای گروههای محلی SharePoint
مدیر همچنین باید شناسه مشتری Google Workspace سازمان شما را دریافت کرده و در اختیار شما قرار دهد.
یاد بگیرید که چگونه این مقادیر را در Map user identity در Cloud Search دریافت کنید.
یک حساب کاربری برای رابط تنظیم کنید که در سیاست کاربری، مجوزهای خواندن کامل برنامه وب SharePoint را داشته باشد.
اگر برنامه وب SharePoint مجموعه سایت ریشه ندارد، یکی ایجاد کنید.
اگر هر یک از مجموعههای سایت قفل نوشتن دارند، با حسابی که دارای امتیازات مدیر است وارد سرور SharePoint شوید و اسکریپت
PrepareWriteLockedSites.ps1را اجرا کنید.برای دریافت معیارهای منبع داده برای پیکربندی کانکتور خود، با حسابی که دارای امتیازات مدیریت مزرعه است وارد سرور SharePoint شوید و
diagnose_sp.ps1را اجرا کنید.خروجی، تعداد برنامههای وب، اسناد و عضویت در گروههای کاربری را گزارش میدهد. از این اطلاعات برای تخمین تعداد نمونههای کانکتور مورد نیاز، میزان حافظه مورد نیاز و تعداد اسناد استفاده کنید.
مرحله ۱. نرمافزار اتصالدهندهی Google Cloud Search SharePoint On-Prem را نصب کنید.
مخزن کانکتور را از گیتهاب کپی کنید.
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
نسخه مورد نظر کانکتور را بررسی کنید:
$ git checkout tags/latest_versionکه در آن:
latest_version= مقداری مانندv1-0.0.5کانکتور را بسازید.
$ mvn packageبرای رد کردن تستها هنگام ساخت کانکتور، به جای
mvn packagemvn package -DskipTestsرا اجرا کنید.فایل زیپ کانکتور را در دایرکتوری نصب محلی خود کپی کنید:
$ cp target/google-cloudsearch-sharepoint-connector-latest_version.zip installation-dir $ cd installation-dir $ unzip google-cloudsearch-sharepoint-connector-latest_version.zip $ cd google-cloudsearch-sharepoint-connector-latest_version
مرحله 2. فایل پیکربندی کانکتور SharePoint On-Prem را ایجاد کنید
در همان دایرکتوری که کانکتور نصب شده است، یک فایل ایجاد کنید. گوگل توصیه میکند که نام فایل را
connector-config.propertiesبگذارید تا برای اجرای کانکتور نیازی به پارامترهای خط فرمان اضافی نباشد. اگر قصد دارید نمونههای کانکتور زیادی را اجرا کنید، جزئیاتی را به نام آن اضافه کنید تا آن را از بقیه متمایز کند.پارامترها را به صورت جفتهای کلید/مقدار به محتویات فایل اضافه کنید، مانند مثال زیر:
### Sharepoint On-Prem Connector configuration ### # Required parameters for data source access api.sourceId=08ef8becd116faa4546b8ca2c84b2879 api.serviceAccountPrivateKeyFile=service_account.json api.identitySourceId=08ef8becd116faa475de26d9b291fed9 # Required parameters for SharePoint on-premises access sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection sharepoint.siteCollectionOnly=true sharepoint.username=contoso\\admin sharepoint.password=pa$sw0rd sharepoint.stripDomainInUserPrincipals=true # Required parameters for AD lookup adLookup.host=dc.contoso.com adLookup.username=contoso\\admin adLookup.password=pa$sw0rd api.referenceIdentitySources=CONTOSO,contoso api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aa # Optional parameters for schema mapping contentTemplate.sharepointItem.title=Title contentTemplate.sharepointItem.unmappedColumnsMode=APPENDبرای توضیحات دقیق هر پارامتر، به مرجع پارامترهای پیکربندی مراجعه کنید.
(اختیاری) در صورت نیاز، پارامترهای کانکتور اضافی را پیکربندی کنید. برای جزئیات بیشتر، به پارامترهای کانکتور ارائه شده توسط گوگل مراجعه کنید.
مرحله ۳. برای HTTPS، SharePoint را به عنوان یک میزبان قابل اعتماد اضافه کنید
اگر SharePoint برای استفاده از HTTPS پیکربندی شده است، یک گواهی SharePoint دریافت کنید تا آن را به عنوان یک میزبان قابل اعتماد برای اتصال اضافه کنید.
در رایانهای که رابط را اجرا میکند، یک مرورگر باز کنید و به SharePoint بروید.
در صفحه هشداری که باز میشود، روی «من خطرات را درک میکنم و استثنا اضافه میکنم » کلیک کنید. صفحه پیامی مانند «این اتصال غیرقابل اعتماد است» را نشان میدهد زیرا گواهی خود امضا شده است و توسط یک مرجع صدور گواهی معتبر امضا نشده است.
وقتی دکمهی «مشاهده» در دسترس قرار گرفت، روی آن کلیک کنید.
به برگه جزئیات بروید و روی «صادرات» کلیک کنید.
گواهی را در دایرکتوری کانکتور با نام
sharepoint.crtذخیره کنید.برای بستن پنجرهها، روی Close و سپس Cancel کلیک کنید.
یک خط فرمان باز کنید و دستور زیر را وارد کنید:
$ keytool -importcert -keystore cacerts.jks -storepass changeit -file sharepoint.crt -alias sharepointوقتی از شما پرسیده شد «به این گواهی اعتماد دارید؟»، پاسخ بله بدهید.
مرحله ۴. تنظیم گزارشگیری
در دایرکتوری که شامل فایل باینری کانکتور است، پوشهای به نام
logsایجاد کنید.در همان دایرکتوری (نه
logs)، یک فایل با کدبندی Latin1 به نامlogging.propertiesایجاد کنید.متن زیر را به
logging.propertiesاضافه کنید:handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler # Default log level .level = INFO # uncomment line below to increase logging level for SharePoint APIsa #com.google.enterprise.cloudsearch.sharepoint.level=FINE # uncomment line below to increase logging level to enable API trace #com.google.api.client.http.level = FINE java.util.logging.ConsoleHandler.level = INFO java.util.logging.FileHandler.pattern=logs/connector-sharepoint.%g.log java.util.logging.FileHandler.limit=10485760 java.util.logging.FileHandler.count=10 java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
مرحله ۵. پیکربندی کانکتور هویت SharePoint On-Prem
این مرحله برای اعمال ACL های مبتنی بر هویت SharePoint On-Prem به نتایج جستجو ضروری است. اگر کانکتور را با ACL های عمومی تنظیم کرده باشید، میتوانید از این مرحله صرف نظر کنید.
در همان دایرکتوری که کانکتور SharePoint Online نصب شده است، یک فایل ایجاد کنید و نام آن را
sharepoint-onprem-identity-connector.configقرار دهید.پارامترها را به صورت جفتهای کلید/مقدار به محتویات فایل اضافه کنید، مانند مثال زیر:
### SharePoint On-prem identity connector configuration ### # Required parameters for data source access api.customerId=C05d3djk8 api.serviceAccountPrivateKeyFile=service_account.json api.identitySourceId=08ef8becd116faa475de26d9b291fed9 # Required parameters for SharePoint access sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection sharepoint.siteCollectionOnly=true sharepoint.username=contoso\\admin sharepoint.password=pa$sw0rd sharepoint.stripDomainInUserPrincipals=true # Required parameters for AD lookup adLookup.host=dc.contoso.com adLookup.username=contoso\\admin adLookup.password=pa$sw0rd api.referenceIdentitySources=CONTOSO,contoso api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aaمقادیر تقریباً مشابه کانکتور SharePoint On-Prem هستند، با این تفاوت که به جای
api.sourceId، پارامترapi.customerIdاست. مقدارapi.customerId، شناسه مشتری است که از ادمین Google Workspace خود دریافت کردهاید.
مرحله ۶. رابط SharePoint On-Prem را راهاندازی کنید
در مراحل زیر، شما Principalها را در Active Directory داخلی و مجموعه سایت SharePoint به هویتهای موجود در سرویس Cloud Identity نگاشت میکنید. این همگامسازی با Google Cloud Directory Sync (GCDS) و رابط هویت SharePoint On-Prem انجام میشود.
پس از اینکه GCDS کاربران و گروهها را همگامسازی کرد، برای همگامسازی گروههای مجموعه سایت SharePoint، رابط هویت SharePoint On-Prem را اجرا کنید. در نهایت، رابط SharePoing On-Prem را برای فهرستبندی و ارائه نتایج به کاربران Cloud Search خود اجرا کنید.
اگر قبلاً این کار را نکردهاید، GCDS را پیکربندی و اجرا کنید . مطمئن شوید که گروههای نگاشتشده با هویت را فعال کردهاید .
رابط هویت SharePoint On-Prem را اجرا کنید:
$ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-version.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-onprem-identity-connector.configکانکتور SharePoint On-Prem را اجرا کنید. از دستور زیر برای امنیت سایت SharePoint خود استفاده کنید:
HTTP (نیازی به میزبان قابل اعتماد نیست):
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jarHTTPS (افزودن SharePoint به عنوان میزبان مورد اعتماد):
$ java -Djavax.net.ssl.trustStore=cacerts.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStorePassword=changeit -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
مرجع پارامترهای پیکربندی
دسترسی به منبع داده
| تنظیم | پارامتر |
| شناسه منبع داده | api.sourceId= 1234567890abcdefالزامی. شناسه منبع داده جستجوی ابری گوگل که توسط مدیر Google Workspace تنظیم شده است. |
| مسیر فایل کلید خصوصی حساب کاربری سرویس | api.serviceAccountPrivateKeyFile= PrivateKey.jsonالزامی. مسیر فایل کلید حساب سرویس جستجوی ابری گوگل. |
دسترسی در محل SharePoint
| تنظیم | پارامتر |
| آدرس سرور شیرپوینت | sharepoint.server= http://yoursharepoint.example.com/الزامی. آدرس اینترنتی سرور SharePoint به عنوان یک نام میزبان کاملاً واجد شرایط، مانند http://yoursharepoint.example.com/. اگر نام میزبان کاملاً واجد شرایط نیست، باید DNS override را روی میزبان رابط تنظیم کنید. |
| نام کاربری شیرپوینت | sharepoint.username= YOURDOMAIN\\ConnectorUserزمانی که کانکتور را روی لینوکس یا روی دستگاه ویندوزی که بخشی از دامنه SharePoint Server AD نیست، اجرا میکنید، مورد نیاز است. |
| رمز عبور شیرپوینت | sharepoint.password= user_passwordزمانی که کانکتور را روی لینوکس یا روی دستگاه ویندوزی که بخشی از دامنه SharePoint Server AD نیست، اجرا میکنید، مورد نیاز است. |
| استفاده از احراز هویت زنده برای اتصال به SharePoint | sharepoint.username= AdaptorUser Live Authentication Id |
| استفاده از احراز هویت ADFS برای اتصال به SharePoint | sharepoint.username= AdaptorUser@yourdomain.com |
فهرستبندی مجموعه سایتها
| تنظیم | پارامتر |
| نوع فهرست | sharepoint.siteCollectionOnly= boolean اختیاری است، به جز برای استقرارهای چند مستاجری SharePoint ( بیشتر بدانید ). برای اینکه کانکتور |
نگاشت هویت شیرپوینت
| تنظیم | پارامتر |
| شناسه منبع هویت | api.identitySourceId= 1234567890abcdefالزامی. شناسه منبع هویت برای همگامسازی گروههای محلی SharePoint. شناسه منبع جستجوی Google Cloud که توسط مدیر Google Workspace تنظیم شده است، همانطور که در افزودن منبع داده برای جستجو توضیح داده شده است. |
| منابع هویت مرجع | api.referenceIdentitySources= CONTOSO,contosoفهرستی از منابع هویت مرجع برای مدیران دایرکتوری فعال که با کاما از هم جدا شدهاند. مقدار با نام NETBIOS اکتیو دایرکتوری مدیران دایرکتوری فعال مرجع مطابقت دارد. |
| شناسههای منبع هویت مرجع | api.referenceIdentitySource. DOMAIN .id= identity-source-idالزامی. شناسه منبع هویت برای همگامسازی مدیران اکتیو دایرکتوری. |
جستجوی دایرکتوری فعال
| تنظیم | پارامتر |
| میزبان اکتیو دایرکتوری | adLookup.host= hostالزامی. نام میزبان دایرکتوری فعال، مانند dc.contoso.com، یا آدرس IP. |
| پورت جستجوی اکتیو دایرکتوری | adLookup.port= portاختیاری. پیشفرض ۳۸۹ است. برای SSL از ۶۸۶ استفاده کنید. |
| روش جستجوی اکتیو دایرکتوری | adLookup.method= valueاختیاری. پیشفرض «استاندارد» است. برای اتصالات HTTPS، روی «ssl» تنظیم کنید. |
| کاربر جستجوی اکتیو دایرکتوری | adLookup.username= CONTOSO\user1الزامی. کاربر مجاز به انجام جستجو در دایرکتوری فعال. |
| رمز عبور جستجوی اکتیو دایرکتوری | adLookup.password= password123 الزامی. رمز عبور برای کاربر مشخص شده توسط |
تولید محتوای HTML
| تنظیم | پارامتر |
| فیلد عنوان قالب HTML | contentTemplate.sharePointItem.title= Titleفیلد SharePoint که به عنوان عنوان الگوی HTML برای HTML تولید شده استفاده میشود. |
| فیلدهای با کیفیت جستجوی بالای محتوای HTML | contentTemplate.sharePointItem.quality.high= highField1 [, highField2 ,...]فهرستی از فیلدها که با کاما از هم جدا شدهاند تا به عنوان فیلدهای باکیفیت در HTML تولید شده گنجانده شوند. وقتی عبارات جستجوی جستجو با این فیلدها مطابقت داشته باشند، نتایج رتبه بالاتری میگیرند. |
| فیلدهای کیفیت جستجوی رسانه محتوای HTML | contentTemplate.sharePointItem.quality.medium= mediumField1 [, mediumField2 ,...]فهرستی از فیلدها که با کاما از هم جدا شدهاند تا به عنوان فیلدهای با کیفیت متوسط در HTML تولید شده گنجانده شوند. |
| فیلدهای جستجوی با کیفیت پایین محتوای HTML | contentTemplate.sharePointItem.quality.low= lowField1 [, lowField2 ,...]فهرستی از فیلدها که با کاما از هم جدا شدهاند تا به عنوان فیلدهای بیکیفیت در HTML تولید شده گنجانده شوند. |
| ستونهای نگاشتنشدهی محتوای HTML | contentTemplate.sharepointItem.unmappedColumnsMode= APPENDنحوهی مدیریت ستونهای نگاشتنشده توسط رابط. مقدار پیشفرض، APPEND یا IGNORE است.
|