مواد پر جائیں۔
محفوظ دستاویزات۔ اپنی تنصیب کا ورژن منتخب کریں۔

تصدیق

گمنام رسائی، Basic Auth، خفیہ کردہ سیشنز اور HTTPS۔

تائید شدہ تصدیق

گمنام رسائی اور اصل htpasswd Basic Auth دستیاب ہیں۔ بیرونی Bearer خدمات اور OIDC دستیاب نہیں۔ اس اجرا میں صارف انتظام نہیں۔

رجسٹری سائیڈ Basic Auth

ایک bcrypt پاس ورڈ ہیش کے ساتھ htpasswd فائل بنائیں۔ مندرجہ ذیل مثال ایک عارضی آفیشل اپاچی کنٹینر استعمال کرتی ہے۔ مثال کی اسناد کو تبدیل کریں اور نتیجے میں فائل کی حفاظت کریں:

mkdir -p auth
docker run --rm --entrypoint htpasswd httpd:2   -Bbn your-user choose-a-strong-password > auth/htpasswd

مثال Distribution ترتیبات:

auth:
  htpasswd:
    realm: Registry
    path: /auth/htpasswd

تیار کردہ فائل کو /auth/htpasswd پر رجسٹری کنٹینر میں ماؤنٹ کریں۔ رجسٹری کنفیگریشن Crateview کنفیگریشن سے الگ ہے۔ ریموٹ رسائی کے لیے HTTPS استعمال کریں۔ Basic Auth ایک انکوڈنگ ہے، ٹرانسپورٹ انکرپشن نہیں۔ مشترکہ شیل کی تاریخ یا عوامی مثالوں میں اصلی پاس ورڈ چھوڑنے سے گریز کریں۔

UI سیشنز

Nitro سرور رجسٹری کے خلاف اسناد کی توثیق کرتا ہے۔ یہ انہیں ایک انکرپٹڈ، HttpOnly، SameSite=Strict کوکی میں اسٹور کرتا ہے۔ براؤزر JavaScript اور localStorage کو اسناد موصول نہیں ہوتی ہیں۔ سیشن آٹھ گھنٹے بعد ختم ہو جاتے ہیں۔

بے ترتیب پروڈکشن سیشن کا راز مرتب کریں:

openssl rand -base64 32

کم از کم 32 حروف کے ساتھ تیار کردہ قدر کو NUXT_SESSION_PASSWORD کے بطور استعمال کریں۔ لوڈ بیلنسر کے پیچھے ہر فرنٹ اینڈ مثال کو ایک ہی قدر کا استعمال کرنا چاہئے۔ کنفیگریشن کے بغیر، Crateview ایک پروسیس لوکل سیکریٹ تیار کرتا ہے، اس لیے دوبارہ شروع کرنے سے موجودہ سیشنز باطل ہو جاتے ہیں۔

HTTPS اور لاگ آؤٹ

جب عوامی درخواست پروٹوکول HTTPS ہوتا ہے تو سیشن کوکی Secure کا استعمال کرتی ہے۔ ریورس پراکسی کے فارورڈ کردہ پروٹوکول کو صحیح طریقے سے ترتیب دیں۔ سائن آؤٹ کرنے سے UI سیشن صاف ہو جاتا ہے۔ یہ رجسٹری صارفین کو حذف یا ترمیم نہیں کرتا ہے۔

Docker اور دیگر CLI کلائنٹس اپنی عام رجسٹری اسناد کا استعمال کرتے ہوئے /v2/** پراکسی کے ذریعے براہ راست تصدیق کرتے ہیں۔ ویب UI میں سائن ان کرنے سے Docker CLI خود بخود سائن ان نہیں ہوتا ہے۔