Рубрики
Uncategorized

Keystone, LDAP и многочисленные поставщики идентификации в OpenShift

Сегодня было важным — я переместил наш кластер OpenShift и рабочую нагрузку с AWS в Orock Cloud … Tagged с 100daysOfCode, Kubernetes, DevOps, Luctireed.

Сегодня было важным — я переместил наш кластер OpenShift и рабочую нагрузку с AWS в облако Orock, которое запускает Red Hat Cloud Suite Top вниз. Большинство рабочих нагрузок было легко мигрировать, и, хотя я перетасовал вещи вокруг, я подумал, что развернут управление идентификацией Red Hat в облако Orock и интегрировать его с нашим новым кластером OpenShift.

Несколько заметок для тех, кто может не знать много об экосистеме Red Hat:

  • Red Hat Cloud Suite Включает все, что вам нужно для запуска собственного частного облака, похожего на AWS, Azure, GCP и т. Д.
  • Red Hat OpenShift Container Platform это платформа Enterprise Kubernetes, которая облегчает жизнь каждого.
  • Управление идентификацией Red Hat Является ли поддержка Freeipa, которое завершает кучу услуг, таких как DNS, LDAP, PKI и многое другое. Я использую его в основном для магазина LDAP.
  • LDAP аналогичен Active Directory в том смысле, что он обеспечивает иерархическую директиву и систему аутентификации на основе деревьев.
  • Keystone — еще один механизм аутентификации предприятия, который является частью предложения IAAS OpenStack

В любом случае, так как этот кластер OpenShift работает в частном облаке OpenStack, он использует Keystone для аутентификации моего пользователя. Я использую Red Hat IDM/LDAP для аутентификации пользователей Workshop, потому что часто легче интегрироваться в различные решения — и я не хочу, чтобы 100 учетных записей пользователей учащихся занимали место в Keystone рядом с моим фактическим пользователем кластера -админи.

Так что мне нужно много методов аутентификации для OpenShift.

1. Втяните в свой IDM/LDAP CA

Скорее всего, вы используете сертификат авторитета сертификата, который означает, что он не в обычных магазинах ключей. Нам нужна копия этого на наших мастерах OpenShift, и мы можем легко ее вытащить:

$ openssl s_client -connect idm.example.com -showcerts 2>/dev/null | sed --quiet '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | csplit --prefix=outfile - "/-----END CERTIFICATE-----/+1" "{*}" --elide-empty-files --quiet
$ sudo cp outfile01 /etc/ssl/certs/idm-ca.pem
$ sudo chmod 600 /etc/ssl/certs/idm-ca.pem

Это создаст два файла, последний из которых, вероятно, будет вашим сертификатом CA. Затем следующие команды скопируют его на место.

2. Изменить файл/etc/origin/master/master-config.yaml

Если вы бросаете мульти-мастеров, вероятно, легче изменить файл Ansible Host и изменить openshift_master_identity_providers переменная и запустите пейзаторы развертывания, но для этого примера мы изменим /etc/origin/master/master-config.yaml напрямую.

...
oauthConfig:
  identityProviders:
  - name: keystone
    challenge: true
    login: true
    mappingMethod: claim
    provider:
      apiVersion: v1
      domainName: exampleDoamin
      kind: KeystonePasswordIdentityProvider
      url: https://api.us-east-1.dacloud.com:13000/v3/
  - name: ldap
    challenge: true
    login: true
    mappingMethod: claim
    provider:
      apiVersion: v1
      kind: LDAPPasswordIdentityProvider
      attributes:
        id:
        - dn
        email:
        - mail
        name:
        - cn
        preferredUsername:
        - uid
      bindDN: "uid=binddn,cn=accounts,dc=example,dc=com"
      bindPassword: "superSecretPass"
      ca: /etc/ssl/certs/idm-ca.pem
      insecure: false
      url: "ldaps://idm.example.com/cn=accounts,dc=example,dc=com?uid"
...

3. Перезагрузить мастера OpenShift

Эта манифест конфигурации теперь позволяет кластеру OpenShift аутентифицировать с помощью либо Keystone Метод или LDAP метод Прежде чем это займет, все мастерам нужно перезапустить, поэтому запустите следующие команды на ваших мастерах OpenShift Masters:

$ sudo /usr/local/bin/master-restart api && sudo /usr/local/bin/master-restart controllers

После того, как мастера перезагружаются, вы сможете войти в OpenShift с любыми поставщиками личности!

Оригинал: «https://dev.to/kenmoini/keystone-ldap-and-multiple-identity-providers-in-openshift-1d9k»