آزمایش اولیه مجوز دسترسی به شبکه خصوصی: مسیری برای انتقال وب سایت ها با HTTPS، آزمایش اولیه مجوز دسترسی به شبکه خصوصی: مسیری برای انتقال وب سایت ها با HTTPS

یفان لو
Yifan Luo

پس زمینه

کروم 94 یک بلوک برای دسترسی به شبکه خصوصی از وب‌سایت‌های عمومی غیر ایمن معرفی کرد. دسترسی مداوم به شبکه خصوصی از طریق آزمایش منسوخ شدن زمینه‌های غیرایمن، چالش‌هایی را در انتقال وب‌سایت‌های آسیب‌دیده به HTTPS نشان داده است. یکی از نگرانی‌های رایج دشواری انتقال دستگاه‌های خصوصی به HTTPS است که منجر به نقض مختلط بررسی محتوا می‌شود.

برای رسیدگی به چالشی که قبلاً ذکر شد، یک درخواست مجوز جدید تحت یک آزمایش اولیه از Chrome 120 در دسترس است

درخواست مجوز به عنوان گزینه جدید

با افزودن ویژگی targetAddressSpace جدید به عنوان یک گزینه واکشی، درخواست می تواند از بررسی محتوای مختلط صرف نظر کند.

مثال:

fetch("http://router.local/ping", {
  targetAddressSpace: "private",
});

مطابق با دسترسی به شبکه خصوصی: با معرفی پروازهای پیش از پرواز ، هر درخواست شبکه خصوصی قبل از یک درخواست قبل از پرواز انجام می شود. این درخواست پیش از پرواز شامل یک هدر جدید است، Access-Control-Request-Private-Network: true ، و پاسخ مربوطه باید شامل سرصفحه Access-Control-Allow-Private-Network: true باشد.

برای انطباق با درخواست مجوز جدید، از دستگاه‌ها خواسته‌ایم که دو سرصفحه پاسخ جدید را وارد کنند: Private-Network-Access-Name و Private-Network-Access-ID .

Private-Network-Access-Name: <some human-readable device name>
Private-Network-Access-ID: <the MAC address of the device>

مثال:

Private-Network-Access-Name: "My Smart Toothbrush"
Private-Network-Access-ID: "01:23:45:67:89:0A"

Private-Network-Access-ID : یک مقدار 48 بیتی ارائه شده به صورت 6 بایت هگزادسیمال که با دو نقطه از هم جدا شده اند. Private-Network-Access-Name : نام معتبری به عنوان رشته ای که با عبارت منظم ECMAScript مطابقت دارد /^[a-z0-9_-.]+$/ . حداکثر طول نام 248 واحد کد UTF-8 است.

نسخه ی نمایشی

می توانید نسخه ی نمایشی را در: https://private-network-access-permission-test.glitch.me/ بررسی کنید.

برای آزمایش اولیه ثبت نام کنید

برای اطمینان از اینکه درخواست مجوز دسترسی به شبکه خصوصی به توسعه‌دهندگان کمک می‌کند محدودیت‌های زمینه ایمن را برای دسترسی به شبکه خصوصی اتخاذ کنند، ما آنها را از نسخه ۱۲۰ تا ۱۲۲ به عنوان نسخه آزمایشی اصلی در Chrome در دسترس قرار می‌دهیم.

برای فعال کردن وب سایت خود برای استفاده از درخواست مجوز، برای آزمایش اصلی ثبت نام کنید:

  1. برای مبدا خود یک نشانه درخواست کنید .
  2. از توکن به یکی از روش های زیر استفاده کنید:
    • در HTML شما: html <meta http-equiv="Origin-Trial" content="TOKEN_GOES_HERE">
    • در جاوا اسکریپت شما: js const meta = document.createElement('meta'); meta.httpEquiv = 'Origin-Trial'; meta.content = 'TOKEN_GOES_HERE'; document.head.append(meta);
    • در سرصفحه های HTTP: text Origin-Trial: TOKEN_GOES_HERE

برای هر گونه بازخورد یا پیشنهاد در مورد این ویژگی، لطفاً یک مشکل را در مخزن GitHub ثبت کنید.

منابع