management مدیریت کاربر OpenShift / OKD با ارائه دهنده بی هویت HTPasswd – Squad Security Security

این راهنما نحوه پیکربندی HTPasswd را به عنوان ارائه دهنده خوشه OCP / OKD توضیح می دهد.

می توانید سرور OpenShift OAuth را برای استفاده از چندین ارائه دهنده هویت پیکربندی کنید ، یعنی:

HTPasswd نام کاربری و رمزهای عبور به صورت پنهانی ، که اعتبارهای ایجاد شده با استفاده از htpasswd را ذخیره می کند.
LDAP پیکربندی ارائه دهنده هویت LDAP را برای تأیید نام کاربری و کلمه عبور در سرور LDAPv3 با استفاده از تأیید اعتبار ساده ، تنظیم کنید.
Keystone

با سرور OpenStack Keystone v3.

OpenID Connect

با ارائه دهنده تأیید اعتبار OpenID Connect با استفاده از کد FLow ادغام می شود.

GitHub

پیکربندی ارائه دهنده تأیید اعتبار GitHub برای تأیید نام کاربری و رمزهای عبور با استفاده از GitHub یا OAuth GitHub Enterprises. [19659013] HTPasswd OAuth Provider

این گزینه کاربران را به صورت پنهانی تأیید می کند ، که شامل نام های کاربری و رمزهای عبور تولید شده با استفاده از دستور htpasswd از پروژه سرور Apache HTTP است.

به عنوان سرپرست خوشه ، می توانید داده ها را مخفیانه تغییر دهید. [19659015] به روز رسانی نام جنسیت به چه معنی است؟ نام های کاربری و کلمه های عبور استفاده شده برای تأیید اعتبار.

مدیریت کاربر خوشه ای با ارائه دهنده هویت HTPasswd فقط برای محیط های توسعه با تعداد اندکی کاربر مناسب است.

در اکثر محیط های تولید با صدها یا هزاران کاربر ، ارائه دهنده مجوز قدرتمندتری لازم است که با سازمان IDM.

مدیریت کاربر OpenShift / OKD با ارائه دهنده تأیید هویت HTPasswd

برای افزودن ارائه دهنده عدم توکار دیگر به OpenShift / OKD ، باید به خوشه خود دسترسی داشته باشید OpenShift دارای سرپرست خوشه است.

اگر شما در حال کار با یک خوشه OpenShift هستید که به تازگی نصب شده اید ، دو روش برای تأیید صحت درخواست های API وجود دارد:

  • با یک کاربر مجازی و رمز عبور kubeadmin ، که نشانه دسترسی OAuth را فراهم می کند.
  • با استفاده از پرونده kubeconfig ، در که دارای یک گواهینامه مشتری X.509 داخلی است که هرگز منقضی نمی شود.

در این راهنما از روش احراز هویت kubeconfig برای اضافه کردن ارائه دهنده HTPasswd به OpenShift استفاده خواهیم کرد.

مشتری اکتبر برای این عمل لازم است.

بستگی دارد با این وجود ، ممکن است محل پرونده kubeconfig صادر شود.

 صادر کننده KUBECONFIG = / root / auth / kubeconfig 

اطمینان حاصل کنید که همه چیز با بررسی گره های موجود در خوشه کار می کند.

 $ oc گره ها را بدست آورید 

می توانید از پارامتر –config دستور oc استفاده کنید:

 $ oc --config / path / to / kubeconfig گرفتن گره ها 

برای تأیید اعتبار با کاربر مجازی kubeadm ، شما یک فرمان مشابه دستور زیر را اجرا می کنید.

 $ oc log -u kubeadmin -p KubeadmUserPassword 

پیکربندی غرامت ارائه دهنده HTPasswd

بیایید با ایجاد پرونده htpasswd لازم که در آن حساب ها ذخیره خواهد شد ، شروع کنیم. اطلاعات کاربر.

شما باید را در مورد بسته [din] 19509004] نصب کنید که فرمان htpasswd را فراهم می کند.

 --- CentOS / RHEL / Fedora ---
$ sudo yum -y ابزارهای httpd را نصب کنید

--- اوبونتو / دبیان ---
$ sudo apt ابزارهای apache2 را نصب کنید

--- Arch Linux / Manjaro
$ sudo pacman -S apache 

ایجاد پرونده HTPasswd

پرونده جدید htpasswd موجود را ایجاد کنید یا به روز کنید.

 $ htpasswd -c -B -b ocp_users.htpasswd user1 password1 

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

 $ htpasswd -Bb ocp_users.htpasswd user2 password2
$ htpasswd -Bb ocp_users.htpasswd user3 password3 

تأیید کنید که پرونده ایجاد شده است.

 $ cat ocp_users.htpasswd
user1: 2y $ 05 $ $ VNgzIy33djzSlOLkHqiR6.CG9oQaPM4CZz4q86Z4s4m23gtllV7I.
user2: $ 2y $ 05 $ 0grDO248lSANnOWOlqY2BO / B6 / CWm6yJGSYBfZgDnJFBsVrBIIaTW
user3: $ 2y $ 05 $ pqp6mo9oGk7E2AIfawDKg.ntUIUjIMRidYvR017mRxdhs5.ctWED2 

برای حذف کاربر از htpasswd ، دستور زیر را اجرا کنید:

 $ htpasswd -D ocp_users.ht
حذف گذرواژه برای کاربر user3 

ایجاد یک راز HTPasswd

ما باید مخفی را که پرونده کاربر HTPasswd موجود است قبل از اینکه بتوانیم از تأیید اعتبار HTPasswd استفاده کنیم ، تعیین کنیم.

 $ oc ایجاد مخفی عمومی htpass-secret.
  --from-file = htpasswd =. / ocp_users.htpasswd 
  -n openshift-config 

پیکربندی منابع کاربر OAuth

برای استفاده از ارائه دهنده هویت HTPasswd ، باید منابع کاربر OAuth ویرایش شود تا یک ورودی به آرایه ارائه دهندگان. Spec.identity اضافه کند.

بیایید یک پرونده جدید ایجاد کنیم.

 $ vim htpasswd-oauth.yaml 

محتوای زیر را اضافه کنید و ویرایش کنید.

 apiVersion: config.openshift.io/v1
نوع: OAuth
ابرداده:
  نام: خوشه
مشخصات:
  IdentityProviders:
  - نام: گذرواژه محلی
    نقشه برداری متد: ادعا
    نوع: HTPasswd
    htpasswd:
      پروندهData:
        نام: htpass-secret 

از کجا:

  • ocp-htpasswd-ارائه دهنده نام ارائه دهنده است. این نام به شکل نام کاربری ارائه دهنده اضافه شده است تا نام را ایجاد کند.
  • htpass-secret نام یک پرونده مخفی موجود است. با استفاده از htpasswd پرونده ایجاد شده است.

یک CR اختصاصی اعمال کنید:

 oc اعمال -f htpasswd-oauth.yaml 

اکنون می توانید " گذرواژه محلی " را روی صفحه ورود به سیستم OpenShift انتخاب کنید. برای تأیید اعتبار با ارائه دهنده HTPasswd با استفاده از اعتبار اضافه شده ،

همچنین می توانید با استفاده از دستور oc وارد خوشه ای از CLI شوید:

 $ oc log -u  

پس از درخواست ، گذرواژه را وارد کنید.