Aptli

Autorisierung

Autorisierung definiert, was ein Benutzer tun kann oder nicht kann, nachdem er Zugriff auf Ihre Anwendung erhalten hat. (./authentication)

Das Autorisierungsmodell von Aptli kombiniert sowohl permissive als auch restriktive Elemente für enorme Flexibilität:

  1. Admin-Rechte sichtbar durch die Benutzereinstellungen Admin-Rechte überprüfen und
  2. Ein restriktives Modell von Rollen erreicht durch Mitgliedschaft Rollenbeschränkungen

Admin-Rechte

Admin-Rechte sind permissiv. Das bedeutet, dass die Berechtigung Benutzern gewährt werden muss, aber nur um Informationen zu ändern oder Status zu ändern. Zum Beispiel erlaubt usersUpdate einem Benutzer, einige Profildetails eines anderen Benutzers zu ändern. Dies würde Name, Titel, Abteilung usw. einschließen, während Änderungen an E-Mail, Passwörtern, SSO und Validierungsdaten ausgeschlossen sind. Ohne dies können Benutzer nur ihr eigenes Profil bearbeiten.

usersLogout ist erforderlich, um einen Benutzer hard lock zu setzen oder abzumelden, und usersDelete ist erforderlich, um das Konto eines Benutzers zu löschen. usersCreate kann ein Konto wiederherstellen oder ein einzigartiges neues erstellen mit den oben genannten Feldrestriktionen.

Fast alle Datenmodelle verhalten sich auf diese Weise und nur 3 Admin-Rechte setzen sich über alle hinweg:

  • appSettingSchemasModify das die Änderung von anwendungsebenen Einstellungen wie erlaubte Domains, Timeouts und Serverinformationen erlaubt
  • adminRightsModify das Benutzern erlaubt, Admin-Rechte mit anderen Benutzern zu teilen und zu erweitern.
  • viewDeleted das Benutzern erlaubt, gelöschte Datensätze zu sehen. Dies ist nahezu universell, kann aber teilweise durch Rollenbeschränkungen überschrieben werden.

Rollenbeschränkungen

Rollen sind restriktiv. Das bedeutet, dass die Zuweisung zu einer Rolle das Anzeigen und Ändern von Datensätzen mit bestimmten Merkmalen verhindert. Rollen sind eine Sammlung von Rollenbeschränkungen und bestehen aus Mitgliedern. Nur der Besitzer einer Rolle kann die Mitglieder ändern oder jemand mit RoleUpdate Admin-Rechten.

Rollenbeschränkungen kommen mit einer grundlegenden Einrichtung von Modell, Feld, Vergleich, Filterwert und den Lese-/Bearbeiten-/Erstellen-/Löschen-Berechtigungen. Zum Beispiel, nehmen wir an, es gab Vermögenswerte, die nicht von konkurrierenden Auftragnehmern A und B sichtbar sein sollten. Um den Zugriff auf B's Informationen zu verhindern, tun Sie Folgendes:

  • Erstellen Sie eine Rolle namens Auftragnehmer A und fügen Sie eine Rollenbeschränkung mit folgenden Details hinzu:
  • Setzen Sie das Modell als Punkt, um die Punkt-Features darzustellen
  • Setzen Sie ein Feld mit den Informationen wie owner
  • Setzen Sie einen Vergleich wie =
  • Setzen Sie Filterwert auf Auftragnehmer B
  • Setzen Sie lesen, bearbeiten, erstellen, löschen auf true, was bedeutet, dass sie es nicht sehen oder ändern können.

Sobald abgeschlossen, fügen Sie Ihre Auftragnehmer A Mitglieder zur Rolle hinzu, und Mitglieder von Auftragnehmer A werden nichts sehen können, wo der Besitzer Auftragnehmer B ist.

Admin-Rechte zusammen mit Rollenbeschränkungen verwenden

Standardmäßig können alle Benutzer außer dem Admin alles sehen, aber nicht alles ändern. Das breit gewährte Schreibzugriff kann durch Datensätze eingeschränkt werden, um rigorose Prozesskontrollen zu definieren, die einige nützliche Trennungen bieten:

  • Nach Arbeitsstufe (d.h. Verhinderung, dass diejenigen, die Arbeit berichten, die Qualitätssicherungsberichte danach sehen)
  • Nach Vermögenswert (d.h. Infrastruktur wie Pfähle und Kanäle vs. aktive Ausrüstung und Elektrokabel von anderen)
  • Nach physischen und logischen Konzepten (d.h. Beziehungen wie Kapazität und Verbrauch zwischen Büros vs. der Standort und die Merkmale der Büros selbst)

Authentifizierung und Autorisierung für neue Benutzer anpassen

Die Änderung einer dieser Einstellungen erfordert Zugriff auf "AppSettingSchemasModify" im Benutzerprofil. Dies wird standardmäßig Super-Admins bei Zugriff auf die Anwendung gewährt, kann aber von anderen Admins geteilt werden. Um die Admin-Rechte eines Benutzers zu sehen, zeigen Sie deren Profil unter Benutzern an (http://your host/admin/users) und sehen Sie Admin-Rechte.

Admin-Rechte überprüfen

Folgendes kann angepasst werden, um die (Standards) zu überschreiben:

  • Rollen für neue Benutzer
  • Admin-Rechte für neue Benutzer