Automation Suite
2022.10
False
Bannerhintergrundbild
Automation Suite-Installationsanleitung
Letzte Aktualisierung 24. Apr. 2024

Aktivieren von SSO für ArgoCD

Überblick

Das Skript uipathctl.sh ist erforderlich, um die SSO-Authentifizierung zu aktivieren. Weitere Informationen zum Skript und zu den Parametern, die Sie verwenden müssen, finden Sie unter Verwenden von uipathctl.sh.

Vorbereiten der Konfigurationsdateien

Sie müssen die RBAC-Datei und die Connector-Datei generieren, bevor Sie SSO für ArgoCD aktivieren.

Die RBAC-Datei

Die RBAC-Datei enthält Zugriffsregeln. Weitere Informationen zu den integrierten Rollendefinitionen finden Sie in der ArgoCD-Dokumentation. Weitere Informationen zu den ArgoCD-Kontotypen und deren Berechtigungen finden Sie unter Verwalten des Clusters in ArgoCD. Wir empfehlen, diese Rollen beim Definieren Ihrer Gruppen zu verwenden, aber Sie können auch Ihre eigenen Berechtigungen erstellen.

Konfigurieren der RBAC-Datei

  1. Erstellen Sie eine Datei mit dem Namen policy.csv , fügen Sie den folgenden Inhalt hinzu und speichern Sie die Datei:
    p, role:uipath-sync, applications, get, */*, allow
    p, role:uipath-sync, applications, sync, */*, allow
    g, argocdro, role:uipath-syncp, role:uipath-sync, applications, get, */*, allow
    p, role:uipath-sync, applications, sync, */*, allow
    g, argocdro, role:uipath-sync
  2. Associate your RBAC groups with the built-in admin role and the UiPath® argocdro read-only role, by appending the following lines to the policy.csv RBAC file:
    g, <your_ldap_readonly_group_name>, role:uipath-sync
    g, <your_ldap_admin_group_name>, role:adming, <your_ldap_readonly_group_name>, role:uipath-sync
    g, <your_ldap_admin_group_name>, role:admin
  3. Speichern Sie die aktualisierte policy.csv RBAC-Datei.

Beispiel:

Angenommen, Ihre LDAP-Gruppe für ArgoCD-Administratoren ist „Administratoren“ und die LDAP-Gruppe für schreibgeschützte ArgoCD-Benutzer ist „Readers“. Die RBAC-Datei sollte wie folgt lauten:

p, role:uipath-sync, applications, get, */*, allow
p, role:uipath-sync, applications, sync, */*, allow
g, argocdro, role:uipath-sync
g, Readers, role:uipath-sync
g, Administrators, role:adminp, role:uipath-sync, applications, get, */*, allow
p, role:uipath-sync, applications, sync, */*, allow
g, argocdro, role:uipath-sync
g, Readers, role:uipath-sync
g, Administrators, role:admin

Weitere Anwendungsfälle finden Sie in der Standard-RBAC-Datei.

# Built-in policy which defines two roles: role:readonly and role:admin,
# and additionally assigns the admin user to the role:admin role.
# There are two policy formats:
# 1. Applications, logs, and exec (which belong to a project):
# p, <user/group>, <resource>, <action>, <project>/<object>
# 2. All other resources:
# p, <user/group>, <resource>, <action>, <object>

p, role:readonly, applications, get, */*, allow
p, role:readonly, certificates, get, *, allow
p, role:readonly, clusters, get, *, allow
p, role:readonly, repositories, get, *, allow
p, role:readonly, projects, get, *, allow
p, role:readonly, accounts, get, *, allow
p, role:readonly, gpgkeys, get, *, allow
p, role:readonly, logs, get, */*, allow

p, role:admin, applications, create, */*, allow
p, role:admin, applications, update, */*, allow
p, role:admin, applications, delete, */*, allow
p, role:admin, applications, sync, */*, allow
p, role:admin, applications, override, */*, allow
p, role:admin, applications, action/*, */*, allow
p, role:admin, applicationsets, get, */*, allow
p, role:admin, applicationsets, create, */*, allow
p, role:admin, applicationsets, update, */*, allow
p, role:admin, applicationsets, delete, */*, allow
p, role:admin, certificates, create, *, allow
p, role:admin, certificates, update, *, allow
p, role:admin, certificates, delete, *, allow
p, role:admin, clusters, create, *, allow
p, role:admin, clusters, update, *, allow
p, role:admin, clusters, delete, *, allow
p, role:admin, repositories, create, *, allow
p, role:admin, repositories, update, *, allow
p, role:admin, repositories, delete, *, allow
p, role:admin, projects, create, *, allow
p, role:admin, projects, update, *, allow
p, role:admin, projects, delete, *, allow
p, role:admin, accounts, update, *, allow
p, role:admin, gpgkeys, create, *, allow
p, role:admin, gpgkeys, delete, *, allow
p, role:admin, exec, create, */*, allow

g, role:admin, role:readonly
g, admin, role:admin# Built-in policy which defines two roles: role:readonly and role:admin,
# and additionally assigns the admin user to the role:admin role.
# There are two policy formats:
# 1. Applications, logs, and exec (which belong to a project):
# p, <user/group>, <resource>, <action>, <project>/<object>
# 2. All other resources:
# p, <user/group>, <resource>, <action>, <object>

p, role:readonly, applications, get, */*, allow
p, role:readonly, certificates, get, *, allow
p, role:readonly, clusters, get, *, allow
p, role:readonly, repositories, get, *, allow
p, role:readonly, projects, get, *, allow
p, role:readonly, accounts, get, *, allow
p, role:readonly, gpgkeys, get, *, allow
p, role:readonly, logs, get, */*, allow

p, role:admin, applications, create, */*, allow
p, role:admin, applications, update, */*, allow
p, role:admin, applications, delete, */*, allow
p, role:admin, applications, sync, */*, allow
p, role:admin, applications, override, */*, allow
p, role:admin, applications, action/*, */*, allow
p, role:admin, applicationsets, get, */*, allow
p, role:admin, applicationsets, create, */*, allow
p, role:admin, applicationsets, update, */*, allow
p, role:admin, applicationsets, delete, */*, allow
p, role:admin, certificates, create, *, allow
p, role:admin, certificates, update, *, allow
p, role:admin, certificates, delete, *, allow
p, role:admin, clusters, create, *, allow
p, role:admin, clusters, update, *, allow
p, role:admin, clusters, delete, *, allow
p, role:admin, repositories, create, *, allow
p, role:admin, repositories, update, *, allow
p, role:admin, repositories, delete, *, allow
p, role:admin, projects, create, *, allow
p, role:admin, projects, update, *, allow
p, role:admin, projects, delete, *, allow
p, role:admin, accounts, update, *, allow
p, role:admin, gpgkeys, create, *, allow
p, role:admin, gpgkeys, delete, *, allow
p, role:admin, exec, create, */*, allow

g, role:admin, role:readonly
g, admin, role:admin

Die LDAP-Connector-Datei

Die LDAP-Connector-Datei enthält die LDAP-Parameter, die zum Konfigurieren von SSO für ArgoCD erforderlich sind.

Hinweis: Wenn Sie bereits über eine LDAP Connector-Datei (ldap_connector.yaml) verfügen, fahren Sie mit Aktivieren von SSO für ArgoCD fort.

Führen Sie die folgenden Schritte aus, um SSO über LDAP zu konfigurieren:

  1. Generieren Sie die LDAP-Vorlagendatei, indem Sie den folgenden Befehl ausführen. Die Connector-Vorlagendatei wird in demselben Verzeichnis generiert, in dem Sie den Befehl ausführen.
    ./uipathctl.sh sso-generate-connector --sso-connector-type ldap --install-type [online|offline] --accept-license-agreement./uipathctl.sh sso-generate-connector --sso-connector-type ldap --install-type [online|offline] --accept-license-agreement
  2. Kopieren Sie die Ausgabe, die bei --- beginnt, und speichern Sie sie als ldap_connector.yaml .
    Beispiel für eine openLDAP Connector-Datei:
    ---
    type: ldap
    # Required field for connector id.
    id: ldap
    # Required field for connector name.
    name: OpenLDAP
    config:
      host: openldap:389
      insecureNoSSL: true
      startTLS: false
      bindDN: cn=admin,dc=example,dc=org
      bindPW: adminpassword
      usernamePrompt: Email Address
      userSearch:
        baseDN: ou=People,dc=example,dc=org
        filter: "(objectClass=person)"
        username: mail
        idAttr: DN
        emailAttr: mail
        nameAttr: cn
      # Group search queries for groups given a user entry.
      groupSearch:
        baseDN: ou=Groups,dc=example,dc=org
        filter: "(objectClass=groupOfNames)"
        userMatchers:
          - userAttr: DN
            groupAttr: member
        nameAttr: cn---
    type: ldap
    # Required field for connector id.
    id: ldap
    # Required field for connector name.
    name: OpenLDAP
    config:
      host: openldap:389
      insecureNoSSL: true
      startTLS: false
      bindDN: cn=admin,dc=example,dc=org
      bindPW: adminpassword
      usernamePrompt: Email Address
      userSearch:
        baseDN: ou=People,dc=example,dc=org
        filter: "(objectClass=person)"
        username: mail
        idAttr: DN
        emailAttr: mail
        nameAttr: cn
      # Group search queries for groups given a user entry.
      groupSearch:
        baseDN: ou=Groups,dc=example,dc=org
        filter: "(objectClass=groupOfNames)"
        userMatchers:
          - userAttr: DN
            groupAttr: member
        nameAttr: cn
    Beispiel für eine Active Directory LDAP Connector-Datei:
    ---
    id: ldap
    name: ActiveDirectory
    type: ldap
    config:
      bindDN: cn=admin,cn=Users,dc=example,dc=local
      bindPW: "<admins's password>"
      groupSearch:
        baseDN: dc=example,dc=local
        filter: "(objectClass=group)"
        nameAttr: cn
        userMatchers:
          - userAttr: distinguishedName
            groupAttr: member
      host: "ldaphost:389"
      insecureNoSSL: true
      insecureSkipVerify: true
      startTLS: false
      userSearch:
        baseDN: cn=Users,dc=example,dc=local
        emailAttr: userPrincipalName
        filter: (objectClass=person)
        idAttr: DN
        nameAttr: cn
        username: userPrincipalName
      usernamePrompt: Email Address---
    id: ldap
    name: ActiveDirectory
    type: ldap
    config:
      bindDN: cn=admin,cn=Users,dc=example,dc=local
      bindPW: "<admins's password>"
      groupSearch:
        baseDN: dc=example,dc=local
        filter: "(objectClass=group)"
        nameAttr: cn
        userMatchers:
          - userAttr: distinguishedName
            groupAttr: member
      host: "ldaphost:389"
      insecureNoSSL: true
      insecureSkipVerify: true
      startTLS: false
      userSearch:
        baseDN: cn=Users,dc=example,dc=local
        emailAttr: userPrincipalName
        filter: (objectClass=person)
        idAttr: DN
        nameAttr: cn
        username: userPrincipalName
      usernamePrompt: Email Address
  3. Aktualisieren Sie die LDAP-Connector-Datei mit den erforderlichen Informationen und speichern Sie sie. Wir empfehlen die Verwendung von LDAPS.

Aktivieren von SSO für ArgoCD

Nachdem Sie den RBAC und die Connector-Datei vorbereitet haben, können Sie SSO für ArgoCD aktivieren.

Verwenden von LDAP

Aktivieren Sie das SSO für ArgoCD, indem Sie den folgenden Befehl in dem Verzeichnis ausführen, in dem die Connector-Datei gespeichert ist:

./uipathctl.sh sso-apply-overlays --install-type [online|offline] --accept-license-agreement --sso-connector-file ldap_connector.yaml --sso-rbac-file policy.csv./uipathctl.sh sso-apply-overlays --install-type [online|offline] --accept-license-agreement --sso-connector-file ldap_connector.yaml --sso-rbac-file policy.csv
Hinweis: Nachdem Sie den vorherigen Befehl ausgeführt haben, sollten Sie eine SSO-Anmeldeschaltfläche auf der ArgoCD-Anmeldeseite sehen. Geben Sie den Benutzernamen und das Kennwort Ihrer Unternehmensdomäne an.
  • Überblick
  • Vorbereiten der Konfigurationsdateien
  • Die RBAC-Datei
  • Die LDAP-Connector-Datei
  • Aktivieren von SSO für ArgoCD
  • Verwenden von LDAP

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
UiPath Logo weiß
Vertrauen und Sicherheit
© 2005-2024 UiPath. All rights reserved.