رابط Microsoft Windows File Systems را مستقر کنید

می‌توانید Google Cloud Search را راه‌اندازی کنید تا علاوه بر محتوای Google Workspace، نتایج حاصل از اشتراک‌گذاری‌های Microsoft Windows سازمانتان را نیز بازگرداند. شما از رابط Google Cloud Search File Systems استفاده می‌کنید و آن را برای دسترسی به اشتراک‌گذاری‌های مشخص شده ویندوز پیکربندی می‌کنید. یک نمونه کانکتور می تواند چندین اشتراک ویندوز مایکروسافت را پشتیبانی کند.

ملاحظات مهم

به روز رسانی خودکار مداوم

به طور پیش‌فرض، هنگام راه‌اندازی کانکتور، کانکتور مسیرهای شروع (مقادیر از fs.src در فایل پیکربندی کانکتور) را به طور مداوم نظارت می‌کند. هنگامی که سیستم فایل تغییرات محتوا یا کنترل‌های دسترسی را گزارش می‌دهد، کانکتور برای خزیدن مجدد در سیستم فایل فعال می‌شود. این خزیدن مجدد می تواند منابع فشرده باشد. برای خاموش کردن نظارت بر سیستم فایل، fs.monitorForUpdates روی false تنظیم کنید. استفاده از منابع اتصال دهنده را به میزان قابل توجهی کاهش می دهید، اما زمانی که کانکتور تغییرات را منعکس می کند، به تأخیر می افتید. بیشتر بدانید

کنترل دسترسی DFS

سیستم DFS کنترل دسترسی را روی پیوندهای خود اعمال می کند و معمولاً هر پیوند DFS دارای ACL خاص خود است. یکی از مکانیسم‌هایی که DFS استفاده می‌کند، شمارش مبتنی بر دسترسی (ABE) است که می‌تواند پیوندهای DFS را که به کاربر بازگردانده می‌شود محدود کند. کاربران ممکن است تنها زیرمجموعه ای از پیوندهای DFS یا حتی تنها یک پیوند را در زمانی که ABE دایرکتوری های خانه میزبان را جدا می کند، دریافت کنند. هنگامی که کانکتور از یک سیستم DFS عبور می کند، کانکتور به پیوند DFS ACL و Share ACL هدف احترام می گذارد و Share ACL از DFS ACL به ارث می رسد.

محدودیت های شناخته شده

  • سیستم فایل : رابط File Systems از درایوهای نقشه‌برداری شده و درایوهای محلی پشتیبانی نمی‌کند.
  • سیستم فایل توزیع شده : یک درایو نگاشت شده به یک UNC DFS به درستی کار نمی کند. برخی از ACL ها به درستی خوانده نمی شوند.
  • رابط File Systems از فضاهای نام و پیوندهای سیستم فایل توزیع شده (DFS) پشتیبانی می کند. با این حال، اتصال دهنده پیوندهای DFS را فقط در فضای نام DFS پشتیبانی می کند، نه پوشه های معمولی در فضای نام DFS.
  • پیوندهای فایل برگردانده شده در cloudsearch.google.com قابل کلیک نیستند. پیوندهای فایلی که توسط Query API بازگردانده می‌شوند نیز در اکثر مرورگرها قابل کلیک نیستند.

سیستم مورد نیاز

سیستم مورد نیاز
سیستم عامل
  • ویندوز سرور 2016
  • ویندوز سرور 2012
  • ویندوز سرور 2008 R2
نرم افزار
  • جاوا JRE 1.8 روی رایانه نصب شده است که رابط Google Cloud File Systems را اجرا می کند
پروتکل های سیستم فایل
  • بلوک پیام سرور (SMB) - SMB1
  • بلوک پیام سرور (SMB) - SMB2
  • سیستم فایل توزیع شده (DFS)

پشتیبانی نمی شود: فایل سیستم های محلی ویندوز، سیستم فایل شبکه Sun (NFS) 2.0، سیستم فایل شبکه Sun (NFS) 3.0 یا سیستم فایل لینوکس محلی.

کانکتور را مستقر کنید

پیش نیازها

قبل از استقرار رابط Cloud Search File Systems، مطمئن شوید که محیط شما دارای تمام اجزای پیش‌نیاز زیر است:

  • اطلاعات Google Workspace برای ایجاد روابط بین Google Cloud Search و منبع داده مورد نیاز است:

    • کلید خصوصی Google Workspace (که شامل شناسه حساب سرویس است). برای اطلاعات در مورد دریافت کلید خصوصی، به پیکربندی دسترسی به Google Cloud Search REST API بروید.
    • شناسه منبع داده Google Workspace. برای کسب اطلاعات در مورد دریافت شناسه منبع داده، به افزودن منبع داده برای جستجو بروید.
    • شناسه منبع هویت برای کسب اطلاعات در مورد نحوه دریافت شناسه منبع هویت، به ایجاد منبع هویت بروید. اگر فهرست راهنمای Google Workspace خود را با Active Directory همگام‌سازی می‌کنید، منبع هویت را با GCDS تنظیم کنید.

    سرپرست Google Workspace برای سازمان شما معمولاً می‌تواند این اعتبارنامه‌ها را برای شما دریافت کند.

  • اطمینان حاصل کنید که حساب ویندوز دارای مجوزهای کافی است، همانطور که در بخش زیر توضیح داده شده است.

مجوزهای حساب Microsoft Windows مورد نیاز است

حساب مایکروسافت ویندوز که کانکتور تحت آن اجرا می شود باید مجوزهای کافی برای انجام اقدامات زیر را داشته باشد:

  • محتوای پوشه ها را فهرست کنید
  • محتوای اسناد را بخوانید
  • ویژگی های فایل ها و پوشه ها را بخوانید
  • مجوزهای خواندن (ACL) هم برای فایل ها و هم برای پوشه ها
  • مجوزهای ویژگی های اساسی را بنویسید

عضویت در یکی از گروه های زیر به یک حساب ویندوز مجوزهای کافی مورد نیاز کانکتور را می دهد:

  • مدیران
  • کاربران قدرت
  • اپراتورهای چاپ
  • اپراتورهای سرور

مرحله 1. رابط Google Cloud Search File Systems را نصب کنید

  1. مخزن کانکتور را از GitHub دریافت کنید و آن را بسازید.

    برای استفاده از git در سرور ویندوز:

    1. کلون کردن مخزن:

      > git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git
      > cd windows-filesystems-connector
    2. نسخه مورد نظر کانکتور را بررسی کنید:

      > git checkout tags/v1-0.0.3

    برای دانلود مستقیم از GitHub:

    1. به https://github.com/google-cloudsearch/windows-filesystems-connector بروید.
    2. روی Clone کلیک کنید یا را دانلود کنید.
    3. بسته را از حالت فشرده خارج کنید.
    4. انتقال به دایرکتوری جدید:
      > cd windows-filesystems-connector
  2. کانکتور را بسازید. در صورت لزوم، Apache Maven را نصب کنید.

    > mvn package

    برای رد شدن از آزمایش ها هنگام ساخت کانکتور، mvn package -DskipTests به جای mvn package اجرا کنید.

  3. فایل zip رابط را در دایرکتوری نصب محلی خود کپی کنید:

    > cp target/google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip installation-dir
    > cd installation-dir
    > unzip google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip
    > cd google-cloudsearch-windows-filesystems-connector-v1-0.0.3

مرحله 2. فایل پیکربندی کانکتور را ایجاد کنید

  1. در همان دایرکتوری نصب کانکتور، یک فایل ایجاد کنید و نام آن را connector-config.properties بگذارید.

  2. پارامترها را به عنوان جفت کلید/مقدار به محتویات فایل اضافه کنید، مانند مثال زیر:

    ### File system connector configuration ###
    
    # Required parameters for Cloud Search data source and identity source access
    api.serviceAccountPrivateKeyFile=/path/to/file.json
    api.sourceId=0123456789abcde
    api.identitySourceId=a1b1c1234567
    
    # Required parameters for file system access
    fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace;\\\\dfshost\\dfsnamespace\\link
    
    # Optional parameters for file system monitoring
    traverse.abortAfterExceptions=500
    fs.monitorForUpdates = true
    fs.preserveLastAccessTime = IF_ALLOWED
    

    برای توضیحات دقیق هر پارامتر، به مرجع پارامترهای پیکربندی بروید.

  3. (اختیاری) در صورت نیاز سایر پارامترهای رابط را پیکربندی کنید. برای جزئیات، به پارامترهای رابط ارائه شده توسط Google بروید.

مرحله 3. ورود به سیستم را فعال کنید

  1. پوشه ای به نام logs در دایرکتوری ایجاد کنید که حاوی کانکتور باینری است.
  2. یک فایل ASCII یا UTF-8 با نام logging.properties در دایرکتوری که حاوی کانکتور باینری است ایجاد کنید و محتوای زیر را اضافه کنید:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = WARNING
    com.google.enterprise.cloudsearch.level = INFO
    com.google.enterprise.cloudsearch.fs.level = INFO
    
    # 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-fs.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

مرحله 4. (اختیاری) پیکربندی انواع رسانه

به طور پیش فرض، رابط سعی می کند نوع رسانه را برای هر فایل با تشخیص نوع رسانه ارائه شده توسط JDK شناسایی کند. در مایکروسافت ویندوز، JDK برای تعیین انواع رسانه برای فایل ها به رجیستری ویندوز متکی است. یک ورودی رجیستری از دست رفته می تواند باعث ایجاد یک نوع رسانه تهی برای فایل های خاص شود.

در صورت لزوم، می‌توانید نوع رسانه‌ای را تعیین کنید که هر پیوند موجود را بازنویسی کند یا از یک نوع رسانه تهی جلوگیری کند.

  1. در دایرکتوری رابط، یک فایل رمزگذاری شده لاتین-1 با نام mime-type.properties ایجاد کنید.
  2. پسوند فایل و انواع رسانه مربوط به آنها را مانند مثال های زیر وارد کنید:

    xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    one=application/msonenote
    txt=text/plain
    pdf=application/pdf
    

مرحله 5: کانکتور File Systems را اجرا کنید

پس از نصب و پیکربندی کانکتور File Systems، برای راه اندازی آن در دستگاه میزبان، دستوری مانند مثال زیر را اجرا کنید:

> java -jar google-cloudsearch-windows-filesystems-connector-v1-0.0.3.jar -Djava.util.logging.config.file=logging.properties[ -Dconfig=my.config]

اگر مسیر فایل پیکربندی با پیش‌فرض متفاوت است (در همان دایرکتوری باینری با نام connector-config.properties ) مشخص کنید.

مرجع پارامترهای پیکربندی

دسترسی به منبع داده

تنظیم پارامتر
شناسه منبع داده api.sourceId= 1234567890abcdef

مورد نیاز. شناسه منبع جستجوی Google Cloud که توسط سرپرست Google Workspace تنظیم شده است.

مسیر فایل کلید خصوصی حساب سرویس api.serviceAccountPrivateKeyFile= ./PrivateKey.json

مورد نیاز. فایل کلید حساب سرویس Google Cloud Search برای دسترسی به رابط Google Cloud File Systems.

شناسه منبع هویت api.identitySourceId= x0987654321

مورد نیاز. شناسه منبع هویت جستجوی Cloud که توسط سرپرست Google Workspace برای همگام‌سازی شناسه‌های فهرست فعال با استفاده از GCDS تنظیم شده است.

دسترسی به فایل سیستم

تنظیم پارامتر
فایل سیستم های منبع fs.src= path1 [, path2 , ...]

مورد نیاز. سیستم های فایل منبع را به عنوان یک یا چند منبع UNC مشخص کنید که توسط جداکننده پیکربندی شده توسط fs.src.separator از هم جدا شده اند. اگر از کاراکترهای غیر لاتین 1 استفاده می کنید، آنها را با جاوا یونیکد escape کدگذاری کنید.

شخصیت جداکننده مسیر

تنظیم پارامتر
شخصیت جداکننده مسیر fs.src.separator= separator-character

جداکننده پیش فرض ";" است. اگر مسیرهای منبع شما حاوی نیم ویرگول است، می توانید جداکننده دیگری مانند کاما ("") تنظیم کنید که با کاراکترهای مسیرهای شما تضاد نداشته باشد و توسط خود نحو فایل ویژگی رزرو نشده باشد.

اگر مقدار fs.src.separator یک رشته خالی باشد، مقدار fs.src به عنوان یک مسیر واحد در نظر گرفته می شود.

رفتار رابط

تنظیم پارامتر
دامنه ویندوز fs.supportedDomain= domain

برای اجازه دادن به کاربرانی که با GCDS راه‌اندازی شده‌اند، از طریق جستجوی ابری به اسناد دسترسی پیدا کنند. به عنوان یک نام دامنه NetBIOS واحد Active Directory مشخص کنید.

شامل حساب ها در ACLS fs.supportedAccounts= account-1[, account-2,...]

فهرستی از حساب‌های محدود شده با کاما برای گنجاندن در ACL بدون توجه به اینکه حساب‌های داخلی هستند یا خیر.

مقدار پیش‌فرض BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users است.

حساب‌های داخلی را از ACL حذف کنید fs.builtinGroupPrefix= prefix

پیشوند حساب های داخلی را مشخص کنید. حسابی که با این پیشوند شروع می شود، یک حساب داخلی محسوب می شود و از ACL ها حذف می شود.

مقدار پیش فرض BUILTIN\\ است

امکان نمایه سازی فایل ها و پوشه های پنهان fs.crawlHiddenFiles= boolean

روی true تنظیم کنید تا اتصال دهنده بتواند فایل‌ها و پوشه‌های پنهان را بخزد (در سیستم‌های فایل ویندوز، اگر ویژگی پنهان DOS تنظیم شده باشد، یک فایل یا پوشه مخفی در نظر گرفته می‌شود.) مقدار پیش‌فرض false است.

فهرست‌بندی پوشه‌های خزیده‌شده و شمارش‌های فضای نام DFS را مجاز کنید fs.indexFolders= boolean

وقتی روی true (پیش‌فرض) تنظیم می‌شود، وقتی رابط یک پوشه را می‌خزد، رابط یک شی CONTAINER_ITEM ایجاد می‌کند. وقتی روی false تنظیم شود، رابط به جای آن یک شی VIRTUAL_CONTAINER_ITEM ایجاد می‌کند.

نظارت بر تغییر سیستم فایل را فعال کنید fs.monitorForUpdates= boolean

وقتی روی true (پیش‌فرض) تنظیم می‌شود، تغییرات در محتوا یا کنترل‌های دسترسی باعث می‌شود کانکتور دوباره خزیده شود. وقتی مانیتورینگ را خاموش می‌کنید (روی false تنظیم می‌کنید)، استفاده از منابع کانکتور را به میزان قابل توجهی کاهش می‌دهید، اما زمانی که کانکتور تغییرات را منعکس می‌کند به تأخیر می‌افتد.

حداکثر اندازه کش دایرکتوری ها را تنظیم کنید fs.directoryCacheSize= number-of-entries

حداکثر اندازه کش دایرکتوری. کانکتور از حافظه پنهان برای شناسایی پوشه های مخفی استفاده می کند تا از فهرست بندی فایل ها و پوشه ها در پوشه های مخفی جلوگیری کند.

پیش فرض 50000 ورودی است که معمولاً 10 تا 15 مگابایت RAM مصرف می کند.

حفظ مهر زمانی و کنترل خزیدن

تنظیم پارامتر
حفظ مهر زمانی آخرین دسترسی fs.preserveLastAccessTime= value

وقتی رابط فایل‌ها و پوشه‌ها را می‌خزد، کانکتور می‌تواند آخرین مهر زمانی دسترسی فایل‌ها و پوشه‌ها را به زمان خزیدن تغییر دهد. وقتی آخرین زمان‌های دسترسی حفظ نمی‌شود، سیستم‌های پشتیبان‌گیری و بایگانی ممکن است فایل‌ها و پوشه‌های مناسب را به دلیل بازدید از رابط، به ذخیره‌سازی ثانویه منتقل نکنند.

به طور پیش فرض، کانکتور تلاش می کند آخرین زمان دسترسی را حفظ کند ( fs.preserveLastAccessTime روی ALWAYS تنظیم شده است). هنگامی که کاربر پیمایش دارای امتیاز کافی برای نوشتن ویژگی های فایل نیست، رابط ممکن است نتواند آخرین زمان دسترسی به فایل را بازیابی کند. وقتی روی ALWAYS تنظیم می‌شود، رابط درخواست‌های خزیدن برای سیستم فایل را رد می‌کند تا آخرین مهرهای زمانی دسترسی فایل‌ها را تغییر ندهد.

مقادیر ممکن:

  • ALWAYS : رابط سعی می کند آخرین زمان دسترسی را هنگام خزیدن فایل ها و پوشه ها حفظ کند. اولین باری که کانکتور نمی تواند آخرین زمان دسترسی را حفظ کند، کانکتور تمام درخواست های خزیدن بعدی برای سیستم فایل را رد می کند تا از تغییر مُهرهای زمانی آخرین دسترسی جلوگیری کند.
  • IF_ALLOWED : رابط سعی می کند آخرین زمان دسترسی را در حین خزیدن فایل ها و پوشه ها حفظ کند. حتی زمانی که ممکن است برخی از مهرهای زمانی حفظ نشوند، به خزیدن ادامه می‌دهد.
  • NEVER : کانکتور سعی نمی کند آخرین زمان دسترسی را حفظ کند زیرا فایل ها و پوشه ها را می خزند.
فقط فایل هایی را که پس از یک تاریخ مشخص به آنها دسترسی پیدا کرده اند خزیدن fs.lastAccessedDate= YYYY-MM-DD

خزیدن محتوا فقط در صورتی که آخرین زمان دسترسی بعد از تاریخ مشخص شده باشد. مقدار پیش فرض disabled است.

تاریخ را در قالب تاریخ ISO8601 مشخص کنید: YYYY-MM-DD. به عنوان مثال، اگر مقدار 2010-01-01 باشد، رابط فقط محتوایی را که پس از آغاز سال 2010 به آن دسترسی پیدا کرده است می خزد.

اگر fs.lastAccessedDate مشخص کنید، نمی‌توانید مقداری برای fs.lastAccessedDays نیز تعیین کنید.

فقط فایل‌هایی را که در چند روز گذشته به آن‌ها دسترسی پیدا کرده‌اند خزیدن fs.lastAccessedDays= number-of-days

خزیدن محتوا فقط در صورتی که آخرین زمان دسترسی به تعداد روزهای قبل از حضور باشد. مقدار پیش فرض disabled است.

از این ویژگی برای منقضی شدن محتوای ایندکس شده قبلی که مدتی است به آن دسترسی نداشته اید استفاده کنید. به عنوان مثال، روی 365 تنظیم کنید تا فقط در صورتی که در سال گذشته به آن دسترسی داشته باشید، محتوا را بخزد.

اگر fs.lastAccessedDays مشخص کنید، نمی‌توانید مقداری برای fs.lastAccessedDate نیز تعیین کنید.

فقط فایل‌هایی را که پس از تاریخ معینی اصلاح شده‌اند، خزیدن fs.lastModifiedDate= YYYY-MM-DD

خزیدن محتوا فقط در صورتی که آخرین زمان اصلاح شده بعد از تاریخ مشخص شده باشد. مقدار پیش فرض disabled است.

تاریخ را در قالب تاریخ ISO8601 مشخص کنید: YYYY-MM-DD. به عنوان مثال، اگر مقدار 2010-01-01 باشد، رابط فقط محتوایی را می خزد که پس از آغاز سال 2010 اصلاح شده است.

اگر fs.lastModifiedDate مشخص کنید، نمی‌توانید مقداری برای fs.lastModifiedDays نیز تعیین کنید.

فقط فایل‌هایی را بخزید که در چند روز گذشته اصلاح شده‌اند fs.lastModifiedDays= number-of-days

خزیدن محتوا فقط در صورتی که آخرین زمان تغییر در تعداد روزهای قبل از ارائه باشد. مقدار پیش فرض disabled است.

از این ویژگی برای منقضی شدن محتوای ایندکس شده قبلی که مدتی است اصلاح نشده است استفاده کنید. به عنوان مثال، روی 365 تنظیم کنید تا فقط در صورتی که محتوا در سال گذشته اصلاح شده باشد، خزیده شود.

اگر fs.lastModifiedDays مشخص کنید، نمی‌توانید مقداری برای fs.lastModifiedDate نیز تعیین کنید.

رد شدن از کنترل دسترسی اشتراک گذاری فایل

به طور پیش‌فرض، کانکتور یکپارچگی کنترل دسترسی را هنگامی که فهرست‌های کنترل دسترسی (ACL) را به API نمایه‌سازی می‌فرستد، از جمله ACLهای موجود در اشتراک فایل، حفظ می‌کند. با این حال، در برخی از پیکربندی‌ها، ممکن است کانکتور مجوزهای کافی برای خواندن اشتراک ACL را نداشته باشد. در این موارد، کانکتور هیچ فایلی را که در آن اشتراک فایل نگهداری می شود در نتایج جستجو بر نمی گرداند.

می توانید رابط را طوری تنظیم کنید که اشتراک ACL را نادیده بگیرد تا محتوا همیشه در نتایج جستجو برگردانده شود. در این مورد، API نمایه‌سازی به جای سهم واقعی ACL، یک سهم کاملا مجاز ACL دریافت می‌کند.

تنظیم پارامتر
رد شدن از کنترل دسترسی اشتراک گذاری فایل fs.skipShareAccessControl= boolean

برای اعمال اشتراک ACL ها، روی false (پیش فرض) تنظیم کنید. برای نادیده گرفتن ACL های اشتراک گذاری روی true تنظیم کنید.