فقط جیمیل: پیکربندی S/MIME برای رمزگذاری سمت کلاینت

نسخه‌های پشتیبانی‌شده برای این ویژگی: Frontline Plus؛ Enterprise Plus؛ Education Standard و Education Plus. نسخه خود را مقایسه کنید

برای استفاده از S/MIME با رمزگذاری سمت کلاینت (CSE) گوگل ورک‌اسپیس برای جیمیل، باید API جیمیل را فعال کنید و به آن اجازه دسترسی به کل سازمان خود را بدهید. سپس، برای هر کاربر، باید از API جیمیل برای آپلود گواهی S/MIME (افزونه‌های ایمیل اینترنتی امن/چندمنظوره) (کلید عمومی) و فراداده کلید خصوصی به جیمیل استفاده کنید. اگر از یک سرویس کلید رمزگذاری استفاده می‌کنید، باید فراداده کلید خصوصی کاربران را نیز با استفاده از سرویس کلید خود رمزگذاری (یا "بسته‌بندی") کنید.

در هر زمانی، می‌توانید با آپلود گواهی‌های S/MIME جدید و فراداده‌های کلید خصوصی رمزگذاری شده توسط سرویس جدید خود، به یک سرویس کلید متفاوت تغییر دهید.

الزامات

برای تکمیل مراحل پیکربندی S/MIME برای کاربران، به موارد زیر نیاز دارید:

  • امتیازات فوق مدیریتی برای حساب گوگل سازمان شما، که برای دسترسی در سطح دامنه به API جیمیل به آن نیاز دارید.
  • دسترسی به ابزارهای سرویس کلید رمزگذاری سازمان شما یا کارکنان پشتیبانی آنها.
  • تجربه کار با APIها و اسکریپت‌های پایتون

درباره S/MIME

S/MIME یک پروتکل استاندارد صنعتی و پذیرفته‌شده برای امضای دیجیتالی و رمزگذاری پیام‌های ایمیل است تا یکپارچگی و امنیت پیام تضمین شود. Gmail CSE برای ارسال و دریافت داده‌های MIME امن به استاندارد S/MIME 3.2 IETF متکی است. S/MIME از فرستندگان و گیرندگان ایمیل می‌خواهد که گواهی‌های X.509 خود را که توسط Gmail قابل اعتماد هستند، داشته باشند.

توجه: به عنوان یک روش جایگزین، می‌توانید از S/MIME بدون لایه اضافی رمزگذاری و حریم خصوصی که CSE ارائه می‌دهد، استفاده کنید. فقط در صورتی از این جایگزین استفاده کنید که نیازی به جلوگیری از رمزگشایی داده‌های خود توسط سرورهای گوگل با CSE نداشته باشید. برای جزئیات بیشتر، به «فعال کردن S/MIME میزبانی شده برای رمزگذاری پیام» مراجعه کنید.

قبل از اینکه شروع کنی

مطمئن شوید که مراحل زیر را انجام داده‌اید:

  1. یک سرویس کلیدی انتخاب کنید .
  2. به ارائه دهنده هویت خود (IdP) متصل شوید .
  3. سرویس کلید خارجی یا رمزگذاری کلید سخت‌افزاری خود را تنظیم کنید .
  4. یک سرویس کلید یا رمزگذاری کلید سخت‌افزاری را به واحدها یا گروه‌های سازمانی اختصاص دهید .

    اگر از چندین سرویس کلیدی استفاده می‌کنید، مطمئن شوید که آنها به واحدهای سازمانی یا گروه‌های پیکربندی مناسب اختصاص داده شده‌اند.

تنظیم API جیمیل

توجه: استفاده از APIها نیاز به دانش برنامه‌نویسی دارد.

مرحله ۱: فعال کردن Gmail API

  1. یک پروژه GCP جدید ایجاد کنید. برای جزئیات بیشتر، به ایجاد و مدیریت پروژه‌ها مراجعه کنید.

    به شناسه پروژه توجه کنید: از آن برای اعطای دسترسی در سطح دامنه به API استفاده خواهید کرد.

  2. به کنسول API گوگل بروید و Gmail API را برای پروژه جدید فعال کنید. برای جزئیات بیشتر، به فعال کردن API در پروژه Google Cloud خود بروید.

مرحله ۲: ایجاد یک حساب کاربری سرویس در سطح دامنه

  1. در کنسول گوگل کلود، به صفحه حساب‌های سرویس بروید و یک حساب سرویس در سطح دامنه ایجاد کنید. برای جزئیات بیشتر، به بخش ایجاد و مدیریت حساب‌های سرویس بروید.
  2. یک کلید خصوصی حساب سرویس ایجاد کنید و کلید را در یک فایل JSON روی سیستم محلی خود، مانند svc_acct_creds.json ، ذخیره کنید. این فایل حاوی اطلاعات احراز هویتی است که هنگام تنظیم Gmail برای کاربران استفاده خواهید کرد. برای جزئیات بیشتر، به بخش «ایجاد و مدیریت کلیدهای حساب سرویس» بروید.

مرحله ۳: به API جیمیل دسترسی دامنه-محور بدهید

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

  1. دستورالعمل‌های مربوط به کنترل دسترسی API با واگذاری اختیار در سطح دامنه را دنبال کنید.
  2. وقتی از شما خواسته شد، موارد زیر را وارد کنید:

    شناسه کلاینت: شناسه کلاینت حساب سرویس ایجاد شده در مرحله 2 بالا.

    دامنه‌های OAuth: gmail.settings.readonly و gmail.settings.basic یا gmail.settings.sharing

فعال کردن Gmail CSE برای کاربران

CSE را برای واحدها یا گروه‌های سازمانی Gmail فعال کنید. برای جزئیات بیشتر، به روشن یا خاموش کردن رمزگذاری سمت کلاینت بروید.

توجه: برای واحدهای سازمانی، می‌توانید تمام ایمیل‌ها (نوشتن، پاسخ دادن و ارسال) را به صورت پیش‌فرض رمزگذاری کنید. کاربر همچنان می‌تواند در صورت نیاز رمزگذاری را غیرفعال کند. این کار مستلزم داشتن افزونه Assured Controls یا Assured Controls Plus است .

تنظیم گواهینامه‌های CSE S/MIME برای کاربران

پس از تنظیم Gmail API و فعال کردن Gmail CSE برای کاربران در کنسول مدیریت، می‌توانید گواهی‌های CSE S/MIME و فراداده‌های کلید خصوصی را برای کاربران خود تنظیم کنید.

مرحله ۱: آماده‌سازی گواهی‌های S/MIME و فراداده‌های کلید خصوصی

برای هر کاربری که از Gmail CSE برای ارسال یا دریافت ایمیل استفاده می‌کند:

با استفاده از یک مرجع صدور گواهینامه (CA)، یک جفت کلید عمومی/خصوصی S/MIME با یک زنجیره گواهینامه ایجاد کنید. گواهی برگ S/MIME باید شامل آدرس Gmail اصلی کاربر به عنوان نام موضوع یا موضوع افزونه SAN باشد.

شما می‌توانید هر یک از موارد زیر را انجام دهید:

  • از یک گواهی ریشه CA مورد اعتماد گوگل استفاده کنید: برای مشاهده فهرستی از گواهی‌های ریشه، به گواهی‌های CA مورد اعتماد Gmail برای S/MIME مراجعه کنید.
  • از یک CA که مورد اعتماد گوگل نیست استفاده کنید: برای مثال، برای استفاده از CA خودتان، می‌توانید گواهی ریشه آن را در کنسول مدیریت اضافه کنید. برای جزئیات بیشتر، به مدیریت گواهی‌های معتبر برای S/MIME بروید.

    توجه: اگر از یک CA استفاده می‌کنید که مورد اعتماد گوگل نیست و کاربران ایمیل‌های رمزگذاری شده سمت کلاینت را به خارج از سازمان شما ارسال می‌کنند، گیرنده نیز باید به CA اعتماد کند.

مرحله ۲: بسته‌بندی گواهی‌ها و فراداده‌های کلید خصوصی

از سرویس رمزگذاری کلید خود برای رمزگذاری یا "بسته‌بندی" فراداده‌های کلیدهای خصوصی S/MIME استفاده کنید. برای انجام این کار با سرویس کلید خود تماس بگیرید یا دستورالعمل‌های ارائه شده توسط آنها را دنبال کنید.

اگر از رمزگذاری کلید سخت‌افزاری استفاده می‌کنید — مطمئن شوید که از این مرحله صرف نظر می‌کنید و فراداده‌های کلید خصوصی را برای کاربرانی که از رمزگذاری کلید سخت‌افزاری استفاده می‌کنند، بسته‌بندی نمی‌کنید . در این حالت، بسته‌بندی فراداده لازم نیست زیرا کلیدهای خصوصی کاربران برای Gmail روی کارت‌های هوشمند آنها قرار دارد. این کار مستلزم داشتن افزونه Assured Controls یا Assured Controls Plus است .

مرحله ۳: گواهی‌های S/MIME و فراداده‌های کلید خصوصی کاربران را در Gmail بارگذاری کنید

از API جیمیل برای آپلود زنجیره گواهی S/MIME کلید عمومی هر کاربر و فراداده کلید خصوصی در جیمیل استفاده کنید و با ایجاد یک هویت، آنها را به عنوان کلیدهای ترجیحی برای کاربران تنظیم کنید.

توجه: برای آپلود گواهینامه‌ها باید از API جیمیل استفاده کنید، نه کلاینت جیمیل. همچنین توجه داشته باشید که هنگام فعال کردن CSE برای جیمیل، قابلیت آپلود گواهینامه‌ها از کلاینت جیمیل غیرفعال می‌شود.

مراحل زیر را برای هر کاربر، با استفاده از فایل کلید خصوصی که هنگام ایجاد یک حساب سرویس دامنه برای احراز هویت دانلود کرده‌اید، انجام دهید:

  1. زنجیره گواهی و فراداده کلید خصوصی را با استفاده از فراخوانی keypairs.create از API جیمیل آپلود کنید.
  2. با استفاده از فراخوانی identities.create از API جیمیل، جفت‌کلید را برای آدرس ایمیل اصلی کاربر فعال کنید .

    فراخوانی identities.create به شناسه جفت کلید که در بدنه پاسخ فراخوانی keypairs.create برگردانده شده است، نیاز دارد.

    نکته: فعال کردن جفت کلید برای آدرس ایمیل کاربر:

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

برای انجام این مراحل، از اسکریپتی استفاده کنید که با Gmail API رابط کاربری دارد. می‌توانید یکی از موارد زیر را انجام دهید:

  • فیلمنامه خودت را بنویس.
  • از نمونه اسکریپت پایتونی که گوگل ارائه می‌دهد استفاده کنید. برای دستورالعمل‌ها، بعداً در همین صفحه به «استفاده از اسکریپت پایتون گوگل برای آپلود گواهی‌نامه‌ها و کلیدهای فشرده‌شده کاربران در جیمیل» مراجعه کنید.

    توجه: این اسکریپت فقط برای کاربرانی اعمال می‌شود که از یک سرویس کلید برای رمزگذاری محتوای Gmail استفاده می‌کنند . برای هر کاربری که از رمزگذاری کلید سخت‌افزاری استفاده می‌کند، باید اسکریپت متفاوتی برای بارگذاری فراداده کلید خصوصی باز نشده خود ایجاد کنید.

بعد از آپلود گواهینامه‌ها، ممکن است تا ۲۴ ساعت طول بکشد تا در جیمیل در دسترس قرار گیرند، هرچند معمولاً این اتفاق خیلی سریع‌تر رخ می‌دهد.

(اختیاری) از اسکریپت نمونه پایتون گوگل برای آپلود گواهی‌نامه‌های کاربران و کلیدهای خصوصی فشرده‌شده به جیمیل استفاده کنید.

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

توجه: این اسکریپت از شما ۳ محدوده دسترسی درخواست می‌کند که می‌توانید برای اعطای دسترسی‌های دامنه‌ای به API جیمیل ( که قبلاً در این صفحه ذکر شده‌اند ) از آنها استفاده کنید: gmail.settings.readonly ، gmail.settings.basic و gmail.settings.sharing . برای استفاده از اسکریپت، می‌توانید هر سه محدوده را فعال کنید یا محدوده‌ای را که استفاده نمی‌کنید از اسکریپت حذف کنید.

اسکریپت را دانلود کنید

بسته اسکریپت پایتون (.zip) را روی رایانه خود (مک، لینوکس یا ویندوز) دانلود کنید و فایل‌ها را در دایرکتوری کاری خود استخراج کنید.

ایجاد یک محیط مجازی و نصب ماژول‌ها

با استفاده از خط فرمان از دایرکتوری کاری خود، دستورات زیر را وارد کنید:

اسکریپت را فراخوانی کنید

آپلود گواهینامه‌ها و کلیدهای کاربر

مرحله ۱: ایجاد یک دایرکتوری برای ذخیره تمام کلیدهای خصوصی رمزگذاری شده

  • برای مثال، می‌توانید دایرکتوری $root/wrapped_keys ایجاد کنید.
  • نام فایل هر کلید خصوصیِ فشرده‌شده باید آدرس ایمیل کامل کاربر با پسوند .wrap باشد. برای مثال: $root/wrapped_keys/user1@example.com.wrap
  • مطمئن شوید که فایل کلید خصوصیِ فشرده‌شده دارای یک شیء JSON با دو فیلد الزامی است:

مرحله ۲: ایجاد یک دایرکتوری برای ذخیره همه گواهینامه‌ها

  • گواهینامه‌ها باید در قالب PEM P7 باشند، بنابراین، می‌توانید دایرکتوری $root/p7pem_certs را ایجاد کنید.
  • مطمئن شوید که فایل گواهی شامل زنجیره کامل مرجع صدور گواهی ریشه (CA) است.
  • نام فایل هر گواهی باید آدرس ایمیل کامل کاربر با پسوند .p7pem باشد. برای مثال: $root/p7pem_certs/user1@example.com.p7pem

اگر فایل P7B دارید: می‌توانید از کامنت openssl زیر برای تبدیل آن به فرمت PEM P7 استفاده کنید:

مرحله ۳: جفت کلیدها و هویت‌های کاربران را آپلود کنید

برای این مرحله، به فایل JSON حاوی اطلاعات احراز هویت حساب سرویس نیاز دارید که در مرحله 2: ایجاد حساب سرویس در بالا، در رایانه خود ذخیره کرده‌اید.

ساده‌ترین راه برای آپلود جفت کلیدها و هویت‌های کاربران، اجرای دستور insert است. توجه داشته باشید که هر دستور باید یک آرگومان داشته باشد - برای مثال:

به عنوان یک راه حل جایگزین، می‌توانید برای هر کاربر مراحل زیر را انجام دهید:

  1. دستور insert_keypair را اجرا کنید و شناسه جفت کلید را یادداشت کنید.
  2. insert_identity با استفاده از آن شناسه جفت کلید اجرا کنید.

همچنین می‌توانید با اجرای دستور list_keypair شناسه جفت کلید را دریافت کنید.

مرحله ۴: تأیید کنید که کاربران دارای جفت کلید CSE و هویت هستند

با اجرای دستورات زیر برای هر کاربر، مطمئن شوید که جفت کلیدها و هویت‌های معتبری در Gmail دارند:

list_keypair

list_identity

برای تغییر به یک سرویس کلیدی دیگر برای Gmail CSE

اگر می‌خواهید برای Gmail CSE به یک سرویس کلید متفاوت تغییر دهید، مراحل ۲ و ۳ را در بخش «تنظیم گواهی‌های CSE S/MIME برای کاربران» که در بالا ذکر شد، با استفاده از سرویس کلید جدید خود برای قرار دادن کلیدهای خصوصی تکرار کنید.

توجه: آپلود گواهینامه‌های جدید برای کاربران، محتوا را به سرویس کلید جدید منتقل نمی‌کند. با این حال، کاربران می‌توانند همچنان به ایمیل‌های رمزگذاری شده با گواهینامه‌های قبلی و فراداده‌های کلید خصوصی که توسط سرویس کلید قدیمی رمزگذاری شده‌اند، دسترسی داشته باشند.

انتقال پیام‌ها به Gmail به عنوان ایمیل رمزگذاری شده سمت کلاینت

اکنون که Gmail CSE تنظیم شده است، می‌توانید پیام‌ها را به صورت اختیاری وارد کنید. برای جزئیات بیشتر، به «انتقال پیام‌ها به Gmail به عنوان ایمیل رمزگذاری شده سمت کلاینت» مراجعه کنید.