DE102019129762B3 - Process and system for the implementation of an identity and access management system - Google Patents

Process and system for the implementation of an identity and access management system Download PDF

Info

Publication number
DE102019129762B3
DE102019129762B3 DE102019129762.1A DE102019129762A DE102019129762B3 DE 102019129762 B3 DE102019129762 B3 DE 102019129762B3 DE 102019129762 A DE102019129762 A DE 102019129762A DE 102019129762 B3 DE102019129762 B3 DE 102019129762B3
Authority
DE
Germany
Prior art keywords
unit
code
computer
functionality
slave computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102019129762.1A
Other languages
German (de)
Inventor
Jürgen Biermann
Daniel Deckers
Timothy Clayton Hobbs
Tobias Hülsken
Heiko Hütter
Andre Priebe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Service Layers GmbH
Original Assignee
Service Layers GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Service Layers GmbH filed Critical Service Layers GmbH
Priority to DE102019129762.1A priority Critical patent/DE102019129762B3/en
Priority to US17/774,523 priority patent/US20220394030A1/en
Priority to EP20200422.2A priority patent/EP3819798A1/en
Priority to PCT/DE2020/100870 priority patent/WO2021089083A1/en
Application granted granted Critical
Publication of DE102019129762B3 publication Critical patent/DE102019129762B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/42User authentication using separate channels for security data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Verfahren zur Ausführung eines Identity und Access Management Systems, bei dem wenigstens eine Schicht vorgesehen ist und ein Master-Computer mit wenigstens einem Slave-Computer kommuniziert,- wobei der Master-Computer wenigstens eine Komponente umfasst, die jeweils als ein Rechenwerk und/oder als ein Speicherwerk und/oder als wenigstens eine Arbeitskomponente ausgebildet ist, wobei- jeweils Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente des Master-Computers erzeugt werden, und- die jeweiligen Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der Funktionalität der weiteren Arbeitskomponente in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden,- wobei der Master-Computer mit Hilfe des Rechenwerks gesteuert wird, und zur Steuerung wenigstens ein Softwareprogrammprodukt arbeitet, wobei- jeweils Einheiten der Funktionalität des Softwareprogrammprodukts in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden,- wobei das Rechenwerk und/oder das Speicherwerk und/oder die weitere Arbeitskomponente und/oder das Softwareprogrammprodukt des Master-Computers in Abhängigkeit wenigstens eines Parameters des wenigstens einen Slave-Computers konfiguriert werden, und- die jeweilige Konfigurierung in einen Code übersetzt wird und in codierter Form vom Master-Computer zu dem Slave-Computer übertragen wird,- wobei in einem Speicherwerk des Slave-Computers Daten und/oder Informationen eines Nutzers abgespeichert werden, und- in einem Rechenwerk des Slave-Computers aus den Daten und/oder aus den Informationen ein persönliches Profil zur Identifizierung und/oder zur Authentifizierung und/oder zu Autorisierung des Nutzers erstellt wird,- wobei die in einen Code übersetzten Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder die in einen Code übersetzten Einheiten der Funktionalität der weiteren Arbeitskomponente und/oder des Softwareprogrammprodukts und/oder die Konfiguration vom Master-Computer in das Rechenwerk und/oder in das Speicherwerk und/oder in die weitere Arbeitskomponente sowie in wenigstens eine Laufzeitumgebung (Kubernetes) des Slave-Computers übertragen werden,- wobei die Daten und/oder Informationen des Nutzers im Rechenwerk und/oder im Speicherwerk und/oder in der weiteren Arbeitskomponente des Slave-Computers mit Hilfe der übertragenen Funktionalitäten des Softwareprogrammprodukts be- und/oder verarbeitet werden,- und die vom Master-Computer zum Slave-Computer übertragenen, in einen Code übersetzten Einheiten der Funktionalitäten auf das Rechenwerk und/oder das Speicherwerk und/oder auf die weitere Arbeitskomponente und/oder auf das Softwareprogrammprodukt des Slave-Computers einwirken.Method for executing an identity and access management system, in which at least one layer is provided and a master computer communicates with at least one slave computer, - the master computer comprising at least one component, each as an arithmetic unit and / or as a storage unit and / or is designed as at least one working component, each unit of the functionality of the arithmetic unit and / or of the storage unit and / or the further working component of the master computer being generated, and - the respective units of the functionality of the arithmetic unit and / or of the storage unit and / or the functionality of the further work component are translated into code and transmitted in coded form from the master computer to the slave computer, - the master computer being controlled with the aid of the arithmetic logic unit, and at least one software program product working to control , whereby- each units of the functionality of the software pr ogrammprodukts are translated into a code and are transmitted in coded form from the master computer to the slave computer, - the arithmetic unit and / or the storage unit and / or the further work component and / or the software program product of the master computer depending on at least one parameter of the at least one slave computer, and the respective configuration is translated into a code and transmitted in coded form from the master computer to the slave computer, with data and / or information of a User are stored, and a personal profile for identification and / or authentication and / or authorization of the user is created in an arithmetic logic unit of the slave computer from the data and / or from the information, - the units translated into a code the functionality of the arithmetic unit and / or the storage unit and / or the translated into a code units of the functionality of the further working component and / or the software program product and / or the configuration from the master computer to the arithmetic unit and / or to the storage unit and / or to the further working component and to at least one runtime environment (Kubernetes) of the slave computer - the data and / or information of the user being processed and / or processed in the arithmetic unit and / or in the storage unit and / or in the further working component of the slave computer with the aid of the transferred functionalities of the software program product, - and the master Computer to the slave computer, translated into a code units of the functionalities act on the arithmetic unit and / or the storage unit and / or on the further work component and / or on the software program product of the slave computer.

Description

Die Erfindung betrifft ein Verfahren und ein zugehöriges System zur Ausführung eines Identity und Access Management Systems. Bei dem Verfahren und dem System ist wenigstens eine Schicht zur Strukturierung von Informationen und/oder Daten vorgesehen. Bei dem Verfahren und dem zugehörigen System kommuniziert ein Master-Computer mit wenigstens einem Slave-Computer.The invention relates to a method and an associated system for executing an identity and access management system. In the case of the method and the system, at least one layer is provided for structuring information and / or data. In the method and the associated system, a master computer communicates with at least one slave computer.

Aus der DE 2013 102 487 A 1 ist ein Verfahren bekannt, mit dem ein Zugriff auf digitale Daten gesteuert wird.From the DE 2013 102 487 A 1, a method is known with which access to digital data is controlled.

Aus der US 8 392 420 B2 ist eine Architektur für die Verwaltung digitaler Identitätsinformationen in einem Netzwerk bekannt, wie z.B. das World Wide Web. Die Informationen werden vom Benutzer in einem oder mehreren Profil/en organisiert, das/die die Art der verschiedenen Beziehungen zwischen dem Benutzer und anderen Einheiten widerspiegelt/en. Jeder Einheit wird Zugang zu vorbestimmten Profilen gewährt oder verweigert.From the US 8 392 420 B2 discloses an architecture for managing digital identity information in a network such as the World Wide Web. The information is organized by the user into one or more profile (s) that reflect the nature of the various relationships between the user and other entities. Each unit is granted or denied access to predetermined profiles.

Die WO 2019 / 204 366 A1 umfasst ein Verfahren, das auf einen ersten Computer bezogen ist. Das Verfahren umfasst das Empfangen von Sicherheitsdienstdaten von einem ersten digitalen Datenspeicher sowie das Erzeugen von verborgenen Sicherheitsdienstdaten durch Generierung einer Vielzahl von Anteilen der Sicherheitsdienstdaten. Das Verfahren umfasst zusätzlich das Bilden und Speichern einer lesbaren Kopie der verborgenen Sicherheitsdienstdaten unter Verwendung einer Vielzahl von entschlüsselten Anteilen der Daten. Die WO 2019/204 366 A1 offenbart weiter einen Server, der einen Computer, ein Datenzentrum, eine virtuelle Maschine oder eine virtuelle Computerinstanz repräsentiert. Der Server kann ein Hypervisor umfassen. Es kann ein Computer offenbart sein, der ein containerisiertes Programmsystem wie z.B. DOCKER oder KUBERNETES ausführt.The WO 2019/204 366 A1 includes a method related to a first computer. The method comprises receiving security service data from a first digital data memory and generating hidden security service data by generating a plurality of portions of the security service data. The method additionally includes forming and storing a readable copy of the hidden security service data using a plurality of decrypted portions of the data. The WO 2019/204 366 A1 further discloses a server representing a computer, data center, virtual machine or virtual computer instance. The server can include a hypervisor. A computer can be disclosed which executes a containerized program system such as DOCKER or KUBERNETES.

Die EP 2 355 474 B1 betrifft ein drahtloses, tragbares Telefon sowie ein System und ein Verfahren zur Übertragung von autorisierten Funktionen oder von sonstigen Telefonfunktionen, welche mit dem tragbaren Telefon verbunden sind, auf ein zweites Telefon.The EP 2 355 474 B1 relates to a wireless portable telephone and a system and method for transferring authorized functions or other telephone functions which are connected to the portable telephone to a second telephone.

Das Verfahren umfasst ein mobiles Endgerät mit einer Netzwerkschnittstelle. Es ist ein räumlich begrenztes Netzwerksegment vorgesehen, das eine netzwerktechnische Lösung bereitstellt. Die netzwerktechnische Lösung sichert zu, dass die Lokalisierung des mobilen Endgeräts stattfindet. Gleichfalls erfolgt die Identifikation des Netzwerksegmentes. Darüber hinaus ist ein Nutzungsserver angeordnet, der den Zugriff auf digitale Daten steuert und die Einhaltung spezifischer Rechte zusichert.The method comprises a mobile terminal with a network interface. A spatially limited network segment is provided that provides a network solution. The network solution ensures that the localization of the mobile device takes place. The network segment is also identified. In addition, there is a usage server that controls access to digital data and ensures compliance with specific rights.

Identity und Access Management Verfahren sind im Stand der Technik für digitale Märkte bekannt. Diese stellen Funktionen bereit, um Anwendern den Zugriff auf IT-Systeme zu ermöglichen. Bei allen Identitäten geht es primär um Effizienz, Compliance, Benutzerfreundlichkeit und Sicherheit. Anwender können alle Inhaber digitaler Identitäten sein, zum Beispiel Consumer, Mitarbeiter, B2B-Partner, Alumni oder Bewerber.Identity and access management methods are known in the prior art for digital markets. These provide functions to enable users to access IT systems. All identities are primarily about efficiency, compliance, usability and security. Users can be all owners of digital identities, for example consumers, employees, B2B partners, alumni or applicants.

Sie sind wichtig, um zum Beispiel Produkte und Dienstleistungen weltweit zuverlässig in die Märkte einführen zu können. Hierzu stehen oftmals nur sehr enge Zeitfenster zur Verfügung. Insbesondere bei digitalen Dienstleistungen ist der Faktor „time-to-market“ ein entscheidender Erfolgsfaktor. Damit wird die Zeitspanne bezeichnet, mit der neue Produkte und/oder Dienstleistungen ab der Entwicklung in einen Markt eingeführt werden können.They are important, for example, in order to be able to reliably launch products and services on the markets around the world. There are often only very narrow time windows available for this. In the case of digital services in particular, the "time-to-market" factor is a decisive success factor. This describes the time span with which new products and / or services can be introduced into a market from the time of development.

Zusätzlich bieten digitale Plattformen die Möglichkeit, neue Geschäftsmodelle zu erproben und im Markt einzusetzen.In addition, digital platforms offer the opportunity to try out new business models and use them in the market.

Die Geschwindigkeit und die Flexibilität, mit der sich die neuen Geschäftsmodelle im jeweiligen Markt implementieren lassen, ist ein entscheidender Wettbewerbsfaktor geworden.The speed and flexibility with which the new business models can be implemented in the respective market has become a decisive competitive factor.

Nicht minder wichtig ist die Geschwindigkeit, mit der sich die Geschäftsmodelle testen und/oder auf den jeweiligen Marktgegebenheiten anpassen lassen. Ein weiterer Wettbewerbsfaktor besteht darin, mit welcher Geschwindigkeit sich ein neues Geschäftsmodell in eine bereits bestehende Infrastruktur integrieren lässt.No less important is the speed with which the business models can be tested and / or adapted to the respective market conditions. Another competitive factor is the speed at which a new business model can be integrated into an existing infrastructure.

Die Schnittstellen zwischen dem in den Markt eingeführten Produkt und/oder der Dienstleistung und dem jeweiligen Anwender stellen ein neues Spannungsfeld dar. Hierbei ist zu klären, um wen es sich bei dem jeweiligen Anwender handelt. Die Identität des Anwenders muss zuverlässig bestätigt werden können. Darüber hinaus ist festzuhalten, wie sich eine konsistente Erfahrung des Anbieters mit dem neuen Produkt und/oder der neuen Dienstleistung über sämtliche zugehörigen Geräteschnittstellen festhalten lässt.The interfaces between the product and / or service launched on the market and the respective user represent a new area of tension. It must be clarified who the respective user is. It must be possible to reliably confirm the identity of the user. In addition, it must be recorded how a consistent experience of the provider with the new product and / or the new service can be recorded across all associated device interfaces.

Hierzu ist es wesentlich, ein leistungsfähiges Identity und Access Management System (IAM) zu implementieren.For this it is essential to implement a high-performance Identity and Access Management System (IAM).

Identity und Access Management (IAM)Identity and Access Management (IAM)

Ein Identity und Access Management System stellt einen Rahmen bereit, in dem Strategien und Technologien umfasst sind, mit denen sichergestellt wird, dass die richtige Person, vorzugsweise in einem Unternehmen, über die erforderlichen Zugriffsrechte verfügt.An identity and access management system provides a framework in which strategies and Technologies are included to ensure that the right person, preferably in an organization, has the necessary access rights.

Mit der Autorisierung werden der jeweiligen Person bestimmte Rechte gegenüber Dritten eingeräumt. Durch die Authentifizierung führt die Person den Nachweis, dass ihm/ihr die oben genannten Rechte eingeräumt worden sind. Durch die Identifizierung stellt die Person sicher, dass er/sie wiederholbar von Dritten wiedererkannt werden kann. Auf die Begriffe Authentifizierung, Autorisierung und Identifizierung wird weiter unten näher eingegangen.With the authorization, the respective person is granted certain rights towards third parties. Through the authentication, the person proves that he / she has been granted the rights mentioned above. Through the identification, the person ensures that he / she can be repeatedly recognized by third parties. The terms authentication, authorization and identification are discussed in more detail below.

Das Identity und Access Management System bezieht sich vorzugsweise, aber nicht ausschließlich, auf den Umgang mit Kunden. In diesem Zusammenhang ist der Begriff „Customer Identity und Access Management (CIAM) gebräuchlich.The Identity and Access Management System relates primarily, but not exclusively, to dealing with customers. In this context, the term “Customer Identity and Access Management (CIAM) is used.

Das Identity und Access Management System kann aber auch auf andere Zusammenhänge, wie zum Beispiel Mitarbeiter, B2B-Partner, Alumni oder Bewerber, angewandt werden.The Identity and Access Management System can also be applied to other contexts, such as employees, B2B partners, alumni or applicants.

Aus Vereinfachungsgründen wird die Erfindung nachfolgend exemplarisch, im Zusammenhang mit Kunden, unter dem Begriff „Customer Identity und Access Management“, näher erläutert.For reasons of simplification, the invention is explained in more detail below by way of example, in connection with customers, under the term “Customer Identity and Access Management”.

Ebenso wird im Weiteren die Wortfolge „Customer Identity und Access Management“ inhaltlich gleich verwendet mit der Wortfolge „Customer Identity und Access Management System“.In the following, the word sequence “Customer Identity and Access Management” is used in the same way as the word sequence “Customer Identity and Access Management System”.

Das Customer Identity und Access Management klärt im Sinn der Erfindung die Identität des Kunden (wer ist wer?). Sie klärt darüber hinaus, was der jeweilige Kunde tun darf (wer darf was?).Customer Identity and Access Management clarifies the identity of the customer (who is who?) In the sense of the invention. It also clarifies what the respective customer can do (who can do what?).

Das Customer Identity und Access Management bildet die Identität des Kunden in allen ihren Facetten sicher und zuverlässig ab. Mithilfe des Customer Identity und Access Managements kann die Identität des Kunden zuverlässig überprüft und geschützt werden.Customer Identity and Access Management depicts the customer's identity in all its facets securely and reliably. With the help of Customer Identity and Access Management, the customer's identity can be reliably checked and protected.

Die Sicherstellung der Identität des Kunden steht dabei im Vordergrund. Zur Sicherstellung der Identität kann ein Passwort vergeben werden. Es kann darüber hinaus ein Zwei-Faktor-Authentifizierungssystem zur Anwendung gebracht werden. Weiterhin können biometrische Merkmale des Kunden mit unterschiedlichen technischen Verfahren abgefragt werden.The focus is on ensuring the customer's identity. A password can be assigned to ensure identity. A two-factor authentication system can also be used. Furthermore, biometric features of the customer can be queried using different technical methods.

Nach Feststellung der Identität des Kunden (Identifizierung) und nach der Klärung der Frage, was der jeweilige Kunde tun darf (Authentifizierung) wird ein digitales Profil des Kunden erstellt und/oder ein bestehendes digitales Profil verfeinert.After determining the identity of the customer (identification) and after clarifying the question of what the respective customer is allowed to do (authentication), a digital profile of the customer is created and / or an existing digital profile is refined.

Das digitale Profil eines Kunden kann Stammdaten umfassen. Diese sind vorzugsweise, aber nicht ausschließlich, die Adresse des Kunden, sein Geburtsdatum und die Kontaktdaten.A customer's digital profile can include master data. These are preferably, but not exclusively, the customer's address, date of birth and contact details.

Die Stammdaten, die im digitalen Profil des Kunden festgeschrieben sind, können darüber hinaus Vorlieben und/oder Interessen und/oder Eigentumsverhältnisse des Kunden umfassen.The master data that is set in the customer's digital profile can also include the customer's preferences and / or interests and / or ownership.

Das digitale Profil des Kunden kann zu einer Erhöhung der Sicherheit genutzt werden. Hat zum Beispiel ein Kunde seinen Sitz in Deutschland und meldet sich aus einem weit entfernten Land an, kann das System unter anderem zusätzliche Merkmale des Benutzers verlangen, um seine Identität nachzuweisen und Missbrauch vorzubeugen.The customer's digital profile can be used to increase security. For example, if a customer is based in Germany and logs on from a far away country, the system can, among other things, request additional user characteristics in order to prove their identity and prevent misuse.

Zudem ermöglicht es das digitale Profil des Kunden, den Kunden näher kennen zu lernen. Die Bedürfnisse des jeweiligen Kunden können besser eingeschätzt werden.In addition, the customer's digital profile enables them to get to know the customer better. The needs of the respective customer can be better assessed.

Aufgrund des digitalen Profils können dem Kunden, noch bevor er einen entsprechenden Bedarf angemeldet hat, relevante Angebote zur richtigen Zeit und in den richtigen Umständen unterbreitet werden.Due to the digital profile, relevant offers can be made to the customer at the right time and in the right circumstances, even before they have registered a corresponding need.

Die Erstellung eines digitalen Profils erfordert die Einwilligung des Kunden zur Erhebung und/oder zur weiteren Verarbeitung seiner Daten. Die Daten und/oder Informationen des digitalen Profils des Kunden können für das sogenannte E-Mail-Marketing und/oder zur Durchführung einer Customer-Data-Analyse genutzt werden.The creation of a digital profile requires the customer's consent for the collection and / or further processing of his data. The data and / or information in the customer's digital profile can be used for so-called e-mail marketing and / or to carry out a customer data analysis.

Das Customer Identity und Access Management ermöglicht es dem Kunden, seine Identität gegenüber vorzugsweise einer Computersoftware und/oder einer Computerplattform mittels eines Passworts darzulegen.Customer Identity and Access Management enables the customer to present his identity to computer software and / or a computer platform, preferably using a password.

Mithilfe des Passworts kann sich der Kunde vorzugsweise in einem Webshop einloggen. Er kann sich mithilfe seines Passworts in einem datengesicherten, personalisierten Bereich, vorzugsweise einer Plattform, eigenständig bewegen.With the help of the password, the customer can preferably log into a web shop. With the help of his password, he can move around independently in a data-secured, personalized area, preferably a platform.

Mithilfe des Customer Identity und Access Managements kann sich der Kunde vorzugsweise, aber nicht ausschließlich, über einen „Single-Sign-On“ einheitlich und komfortabel Zugang zu einem breit aufgestellten Angebotssystem verschaffen. Mit dem „Single-Sign-On“-Zugang verschafft sich der Nutzer über eine einmalige Identifizierung und/oder eine einmalige Authentifizierung Zugang auf alle Rechner und/oder Dienstleistungen z.B. an seinem Arbeitsplatz, für die er vorzugsweise lokal berechtigt ist (Autorisation).With the help of Customer Identity and Access Management, the customer can preferably, but not exclusively, gain uniform and convenient access to a broadly based offer system via a “single sign-on”. With the “single sign-on” access, the user gains access via a one-time identification and / or a one-time authentication all computers and / or services, for example at his workplace, for which he is preferably authorized locally (authorization).

Dank des „Single-Sign-On“-Systems kann der Nutzer von seinem Arbeitsplatz auf alle weiteren Rechner und/oder Dienstleistungen zugreifen, ohne sich jedes Mal erneut identifizieren und autorisieren lassen zu müssen.Thanks to the “single sign-on” system, the user can access all other computers and / or services from his workstation without having to be identified and authorized again each time.

Voraussetzung ist lediglich, dass der Nutzer für den Zugang auf die vorbestimmten Rechner und/oder vorbestimmten Dienstleistungen berechtigt, also autorisiert ist.The only requirement is that the user is authorized, that is to say authorized, to access the predetermined computers and / or predetermined services.

Eine jeweils erneute Identifizierung und Authentifizierung ist für den Zugang zu den vorbestimmten Rechnern und für die vorbestimmten Dienstleistungen nicht mehr erforderlich.A renewed identification and authentication is no longer necessary for access to the predetermined computers and for the predetermined services.

Das Identity und Access Management kann weiter eine konsequente Datenintegration mittels eines CRM-Systems umfassen.Identity and access management can also include consistent data integration using a CRM system.

Unter dem CRM-System versteht die Erfindung ein Customer-Relationship-Management.The invention understands the CRM system to be customer relationship management.

Innerhalb des Customer-Relationship-Managements richtet ein Anbieter sein Unternehmen gezielt und konsequent auf den Kunden aus.Within customer relationship management, a provider aligns its company specifically and consistently with the customer.

Im Rahmen eines Kundenbeziehungsmanagements oder im Rahmen der Kundenpflege gestaltet der Anbieter eines Produkts und/oder einer Dienstleistung systematisch seine Kundenbeziehungsprozesse.As part of customer relationship management or customer care, the provider of a product and / or service systematically designs its customer relationship processes.

Das Customer-Relationship-Management umfasst die Dokumentation und die Verwaltung seiner Beziehungen mit den Kunden. Mithilfe des Customer-Relationship-Managements können die Beziehungen zwischen dem Anbieter von Gütern- und/oder Dienstleistungen und den Kunden langfristig vertieft und ausgerichtet werden.Customer relationship management includes the documentation and administration of its relationships with customers. With the help of customer relationship management, the relationships between the provider of goods and / or services and the customer can be deepened and aligned in the long term.

Das Customer-Relationship-Management ermöglicht dem Anbieter vorzugweise, aber nicht ausschließlich einen 360°-Blick auf seinen Kunden.Customer relationship management allows the provider preferably, but not exclusively, a 360 ° view of their customers.

Das Customer-Relationship-Management eröffnet dem Anbieter weitere Berührungspunkte mit seinem Kunden. Die Berührungspunkte können z.B. eine Website sein oder eine Smartphone-App.Customer relationship management opens up additional points of contact for the provider with his customers. The points of contact can e.g. be a website or a smartphone app.

Die Berührungspunkte zwischen dem Anbieter und dem Kunden können auch durch einen Serviceberater des Anbieters gewährleistet werden. Darüber hinaus können die Berührungspunkte mit dem Kunden über einen Händler vor Ort und/oder eine Telefon-Hotline aufgebaut werden.The points of contact between the provider and the customer can also be guaranteed by a service advisor from the provider. In addition, the points of contact with the customer can be established via a local dealer and / or a telephone hotline.

Das Customer Identity und Access Management ermöglicht es, dem Anbieter, sein Angebotsportfolio zu straffen und/oder zu verbessern.Customer Identity and Access Management enables providers to streamline and / or improve their portfolio.

Angebote an den Kunden können gezielt und zeitnah zugestellt werden.Offers to customers can be delivered promptly and in a targeted manner.

Daten und/oder Informationen zum Verhalten des Kunden können gesammelt und/oder strukturiert und/oder gespeichert werden.Data and / or information on the behavior of the customer can be collected and / or structured and / or stored.

Innerhalb des Customer Identity und Access Managements können Daten und/oder Informationen zur Ausbildung des Kunden-Profils aus unterschiedlichsten Quellen zusammengefasst und/oder ausgewertet werden.Within the Customer Identity and Access Management, data and / or information for the development of the customer profile can be summarized and / or evaluated from a wide variety of sources.

Im Rahmen des Customer Identity und Access Managements kann sich der Anbieter von Gütern und/oder Dienstleistungen, vorzugsweise im Speicherwerk seines Computers, eine Plattform anlegen, auf die er und/oder auch der Kunde zugreifen kann.In the context of customer identity and access management, the provider of goods and / or services can create a platform, preferably in the memory of his computer, which he and / or the customer can access.

Mithilfe der Plattform kann der Anbieter eine Schnittstelle zu Applikationen anderer Anbieter von Gütern und Dienstleistungen schaffen.With the help of the platform, the provider can create an interface to applications from other providers of goods and services.

Die sogenannte Open API beschreibt ein Schema zur einheitlichen Spezifizierung und Beschreibung einer Programmschnittstelle, auch Application Programming Interface (API) genannt, sodass andere Systeme und Entwickler diese leicht verstehen, nutzen und integrieren können.The so-called Open API describes a scheme for the uniform specification and description of a program interface, also called Application Programming Interface (API), so that other systems and developers can easily understand, use and integrate it.

Das Customer Identity und Access Management deckt auf diese Weise unterschiedliche Funktionen ab. Es bildet einen zentralen Erfolgsfaktor vorzugsweise, aber nicht ausschließlich, für digitale Geschäftsprozesse.In this way, customer identity and access management covers different functions. It is a key success factor, preferably, but not exclusively, for digital business processes.

Das Customer Identity und Access Management erfordert ein kurzes Zeitintervall zwischen der Erstellung des Produkts und/oder der Dienstleistung und der Einführung in den Markt.Customer Identity and Access Management requires a short time interval between the creation of the product and / or service and its launch on the market.

Die Güter und/oder Dienstleistungen müssen vom Anbieter nationalen und internationalen Kunden in gleicher Weise und unter den gleichen Bedingungen angeboten werden können.The provider must be able to offer the goods and / or services to national and international customers in the same way and under the same conditions.

Die Produkte und/oder Dienstleistungen müssen dabei den Kunden auf nationaler wie auf internationaler Ebene verlässlich verfügbar sein.The products and / or services must be reliably available to customers at both national and international level.

Mergers und Acquisitions müssen flexibel unterstützt werden können. Geschäftsmodelle müssen neu entwickelt werden und ohne Zeitverlust eingesetzt werden können.Mergers and acquisitions must be supported flexibly. Business models must be redeveloped and deployed without wasting time.

Die Kostenstruktur für das Angebot von Gütern und/oder Dienstleistungen müssen dem Kunden gegenüber transparent und kalkulierbar präsentiert werden.The cost structure for the offer of goods and / or services must be presented to the customer in a transparent and calculable way.

Bekannte Customer Identity und Access Management Systeme werden im Rahmen eines Produktansatzes an die Bedürfnisse des Kunden angepasst.Well-known customer identity and access management systems are adapted to the needs of the customer as part of a product approach.

Dieser Ansatz erweist sich jedoch vielfach als sehr zeitaufwendig und/oder kostenintensiv. Ein hoher Schulungs- und Wartungsaufwand führt in gleicher Weise zu hohen Kosten.However, this approach often proves to be very time-consuming and / or cost-intensive. A high training and maintenance effort leads to high costs in the same way.

Cloud-ServicesCloud services

Die Erfindung versteht unter „Cloud-Services“ vorzugsweise eine „IT-Infrastruktur“, die vorzugsweise über das Internet verfügbar gemacht wird. Innerhalb des „Cloud-Services“ werden dem Nutzer zusätzlicher Speicherplatz und/oder ergänzende Rechenleistung zur Verfügung gestellt.The invention understands “cloud services” to mean an “IT infrastructure” that is preferably made available via the Internet. Within the "cloud service", the user is provided with additional storage space and / or additional computing power.

Innerhalb der „Cloud-Services“ kann der Nutzer auch Anwendungssoftware als Dienstleistung erhalten.Within the “cloud services”, the user can also receive application software as a service.

Bekannte Cloud-Dienstleister bieten dem Nutzer vorzugsweise Identity-as-a-Service-Lösungen (IDaaS) an.Well-known cloud service providers preferably offer the user Identity-as-a-Service (IDaaS) solutions.

Bekannte Cloud-Dienstleistungen sind z.B. Auth0 oder OKTA, die ausschließlich online zur Verfügung stehen.Well-known cloud services are e.g. Auth0 or OKTA, which are only available online.

Die vorgenannten Cloud-Services sind standardisierte Lösungen. Die Lösungen bieten dem Nutzer aber nur in sehr geringem Maße Raum für individuelle Anpassungsmaßnahmen.The aforementioned cloud services are standardized solutions. However, the solutions only offer the user very little space for individual adaptation measures.

Identity-as-a-ServiceIdentity-as-a-Service

Die Erfindung versteht unter dem Begriff „Identity-as-a-Service“ (IDaaS) vorzugsweise, aber nicht umfassend, eine Authentifizierungs-Infrastruktur. Die Authentifizierungs-Infrastruktur wird vorzugsweise von einem Serviceprovider eingerichtet, betrieben und verwaltet. Die „Identity-as-a-Service“-Dienstleistung ist vorzugsweise eine „Single-Sign-On“-Dienstleistung für „Cloud-Services“.The invention understands the term “Identity-as-a-Service” (IDaaS) preferably, but not comprehensively, an authentication infrastructure. The authentication infrastructure is preferably set up, operated and managed by a service provider. The “Identity-as-a-Service” service is preferably a “single sign-on” service for “cloud services”.

„Identity-as-a-Service“-Dienstleistungen führen zu höherer Standardisierung."Identity-as-a-Service" services lead to higher standardization.

Unzulänglichkeiten von Verfahren zur Ausführung eines Identity und Access Managements aus dem Stand der TechnikInadequacies of methods for performing identity and access management from the prior art

Die Installation eines Softwareprogrammproduktes für ein Identity und Access Management System ist vielfach sehr zeitaufwendig und daher kostenintensiv. Das zugehörige Softwareprogrammprodukt umfasst eine Vielzahl von Komponenten, die installiert werden müssen. Die Installation, vorzugsweise im Rahmen eines Cluster-Betriebs, ist zeitlich sehr aufwendig, auch wenn sie einem stets gleichen Schema folgt.The installation of a software program product for an identity and access management system is often very time-consuming and therefore cost-intensive. The associated software program product includes a variety of components that must be installed. The installation, preferably in the context of a cluster operation, is very time-consuming, even if it always follows the same scheme.

Die Bereitstellung der Infrastruktur zur Implementierung von Verfahren zur Ausführung eines Identity und Access Management Systems in die vorgegebene Nutzerumgebung erweist sich oftmals als sehr zeitaufwendig, da viele Fachabteilungen des Nutzers involviert sind.The provision of the infrastructure for the implementation of procedures for the execution of an identity and access management system in the given user environment often turns out to be very time-consuming, since many departments of the user are involved.

Soll eine ansatzweise vergleichbare Infrastruktur herkömmlich hergestellt werden, müssen zum Beispiel mindestens zwei Server mit zugehörigem Betriebssystem pro Region bereitgestellt werden. Andernfalls wäre die hergestellte Lösung nicht hochverfügbar, weil der Ausfall eines Servers direkt zum Ausfall des Systems führt. Es muss ein Netzwerk mit einer entsprechenden Firewall installiert werden. Darüber hinaus sind sogenannte Load-Balancer und/oder Zertifikate erforderlich.If a somewhat comparable infrastructure is to be established conventionally, at least two servers with an associated operating system must be provided per region, for example. Otherwise the solution produced would not be highly available because the failure of a server leads directly to the failure of the system. A network with an appropriate firewall must be installed. In addition, so-called load balancers and / or certificates are required.

Bei einer herkömmlichen Installation muss die spezifisch für das System notwendige Infrastruktur hergestellt werden, die besondere Anforderungen stellt an vorzugsweise, aber nicht ausschließlich, Firewalls, Netzwerkkonfiguration, Zertifikaten, Loadbalancern etc. Da in Unternehmen häufig verschiedene Abteilungen / Teams für diese Komponenten zuständig sind, sind die Prozesse häufig aufwendig und dauern lange.In the case of a conventional installation, the infrastructure specifically required for the system must be created, which has special requirements for preferably, but not exclusively, firewalls, network configuration, certificates, load balancers, etc. As different departments / teams are often responsible for these components in companies the processes are often complex and take a long time.

Häufig wird bei herkömmlicher Installation nur ein äußerst geringer Automatisierungsgrad überhaupt hergestellt oder erreicht. Das hat dann konkret zur Folge, dass zum Beispiel bei einer Ausgliederung von Unternehmensteilen für den ausgegliederten Teil das komplette Vorhaben erneut durchgeführt werden muss.Often with conventional installation only an extremely low degree of automation is even produced or achieved. The specific consequence of this is that, for example, if parts of the company are outsourced, the entire project must be carried out again for the outsourced part.

Die Automatisierungen sind daher vergleichsweise teuer in der Implementierung und nicht auf andere Nutzer übertragbar.The automations are therefore comparatively expensive to implement and cannot be transferred to other users.

Sogenannte Software-as-a-Service-Lösungen (SaaS-Lösungen) sind bei vielen Nutzern als mögliche Alternativen nicht einsetzbar. Mehrere Nutzer werden als sogenannte „Mandanten“ auf einem einzigen System eingerichtet.So-called software-as-a-service solutions (SaaS solutions) cannot be used as possible alternatives for many users. Several users are set up as so-called "clients" on a single system.

Individuelle Anforderungen des Nutzers (einzelner Mandant) können lediglich in geringem Umfang, oder gar nicht berücksichtigt werden. Der Nutzer (Mandant) hat keine Möglichkeit, insbesondere ein Softwareprogrammprodukt bei der Installation (Deployment) des Identity und Access Management Systems auf seine individuellen Anforderungen und Gegebenheiten anzupassen.Individual requirements of the user (individual client) can only be taken into account to a limited extent or not at all. The user (client) has no way of adapting, in particular, a software program product to his or her individual requirements and circumstances during the installation (deployment) of the identity and access management system.

Auf die Strategie und/oder dem Projektplan (Roadmap) zur Installation des Identity und Access Management Systems hat der Nutzer keinen Einfluss.The user has no influence on the strategy and / or the project plan (roadmap) for installing the identity and access management system.

Bekannte Identity und Access Management Systeme setzen den Nutzer vielfach in große Abhängigkeit vom jeweiligen System. Aus diesem Grund zögern die Nutzer vielfach vor der Implementierung bekannter Identity und Access Management Systeme.Well-known identity and access management systems often place the user in great dependence on the respective system. For this reason, users are often reluctant to implement known identity and access management systems.

Der Nutzer hat darüber hinaus keinen Einfluss auf den Zeitpunkt, zu dem Änderungen am Identity und Access Management System durchgeführt werden.In addition, the user has no influence on the point in time at which changes are made to the identity and access management system.

Die Installation eines Identity und Access Management Systems und/oder eines zugehörigen Softwareprogrammprodukts erweist sich als zeitlich sehr aufwändig.The installation of an identity and access management system and / or an associated software program product turns out to be very time-consuming.

Den Nutzern unterlaufen unabhängig voneinander systembedingt dieselben Fehler. Ein effektives Lernen aus den Fehlern über unabhängige Systeme und Softwareproduktprogramme hinweg, kann vielfach nicht erfolgen.The users make the same errors independently of one another due to the system. Effective learning from errors across independent systems and software product programs is often not possible.

Bekannte Identity und Access Management Systeme und/oder zugehörige Softwareprogrammprodukte umfassen eine Vielzahl von Standardaufgaben, die - systembedingt - von jedem Nutzer installiert werden. Eine Anpassung des Identity und Access Management Systems und/oder des zugehörigen Softwareprogrammprodukts auf die spezifischen Bedürfnisse des Nutzers und/oder auf betriebliche Besonderheiten kann nicht, oder nur in geringem Umfang durchgeführt werden.Known identity and access management systems and / or associated software program products include a large number of standard tasks which - depending on the system - are installed by each user. An adaptation of the Identity and Access Management System and / or the associated software program product to the specific needs of the user and / or to operational features cannot be carried out, or only to a limited extent.

Bekannte Identity und Access Management Systeme sind nicht, oder nur bedingt für einen weltweiten Einsatz einsetzbar. Performance-Probleme und/oder rechtliche Gegebenheiten stehen einem weltweiten Einsatz der aus dem Stand der Technik bekannten Identity und Access Management Systeme entgegen.Well-known identity and access management systems cannot be used, or only to a limited extent, for worldwide use. Performance problems and / or legal circumstances stand in the way of worldwide use of the identity and access management systems known from the prior art.

Aufgaben der ErfindungObjects of the invention

Die Erfindung stellt sich daher die Aufgab ein Verfahren und ein zugehöriges System zur Ausführung eines Identity und Access Management Systems bereitzustellen, das die oben aufgelisteten Unzulänglichkeiten bekannter Systeme ausschließt.The object of the invention is therefore to provide a method and an associated system for executing an identity and access management system that eliminates the above-listed inadequacies of known systems.

Lösung der AufgabenSolution of the tasks

Die Aufgaben werden gelöst durch ein Verfahren zur Ausführung eines Identity und Access Management Systems nach den Merkmalen des Anspruchs 1.The objects are achieved by a method for implementing an identity and access management system according to the features of claim 1.

Die Aufgaben werden darüber hinaus gelöst durch die Merkmale eines Systems zur Ausführung des Verfahrens nach dem Anspruch 25.The objects are also achieved by the features of a system for carrying out the method according to claim 25.

Das Verfahren zur Ausführung eines Identity und Access Management Systems sieht einen Master-Computer vor, der mit wenigstens einem Slave-Computer kommuniziert.The method for implementing an identity and access management system provides a master computer that communicates with at least one slave computer.

Der Master-Computer umfasst bei dem Verfahren wenigstens eine Komponente. Die Komponente ist dabei jeweils als ein Rechenwerk und/oder als ein Speicherwerk ausgebildet.In the method, the master computer comprises at least one component. The component is designed as an arithmetic unit and / or as a storage unit.

Die Komponente ist weiter als wenigstens eine Arbeitskomponente ausgebildet.The component is also designed as at least one working component.

Nach dem Verfahren wird jeweils eine Einheit einer Funktionalität des Rechenwerks und/oder des Speicherwerks erzeugt. Es wird darüber hinaus jeweils eine Einheit der Funktionalität der weiteren Arbeitskomponente des Master-Computers erzeugt.According to the method, one unit of a functionality of the arithmetic unit and / or the storage unit is generated in each case. In addition, a unit of the functionality of the further work component of the master computer is generated in each case.

Die jeweiligen Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder die Funktionalität der weiteren Arbeitskomponente werden in wenigstens einen Code übersetzt.The respective units of the functionality of the arithmetic logic unit and / or the storage unit and / or the functionality of the further work component are translated into at least one code.

Die Einheiten der jeweiligen Funktionalitäten werden in codierter Form vom Master-Computer zum Slave-Computer übertragen.The units of the respective functionalities are transmitted in coded form from the master computer to the slave computer.

Der Master-Computer wird mithilfe des Rechenwerks gesteuert.The master computer is controlled using the arithmetic unit.

Zur Steuerung des Master-Computers arbeitet wenigstens ein Softwareprogrammprodukt.At least one software program product operates to control the master computer.

Jeweils eine Einheit der Funktionalität des Softwareprogrammprodukts wird in wenigstens einen Code übersetzt.In each case one unit of the functionality of the software program product is translated into at least one code.

Die jeweilige Einheit der Funktionalität des Softwareprogrammprodukts wird in codierter Form vom Master-Computer zum Slave-Computer übertragen.The respective unit of functionality of the software program product is transmitted in coded form from the master computer to the slave computer.

Das Rechenwerk und/oder das Speicherwerk und/oder die weitere Arbeitskomponente und/oder das Softwareprogrammprodukt des Master-Computers werden in Abhängigkeit wenigstens eines Parameters des wenigstens einen Slave-Computers konfiguriert.The arithmetic unit and / or the storage unit and / or the further work component and / or the software program product of the master Computers are configured as a function of at least one parameter of the at least one slave computer.

Die jeweilige Konfigurierung wird in einen Code übersetzt.The respective configuration is translated into a code.

Die Konfigurierung wird dadurch in codierter Form vom Master-Computer zu dem Slave-Computer übertragen.The configuration is thereby transmitted in coded form from the master computer to the slave computer.

In einem Speicherwerk des Slave-Computers werden Daten und/oder Informationen eines Nutzers abgespeichert.Data and / or information about a user are stored in a memory unit of the slave computer.

Aus den Daten und/oder aus den Informationen des Nutzers wird in dem Rechenwerk des Slave-Computers ein persönliches Profil des Nutzers zu dessen Identifizierung und/oder zur Authentifizierung des Nutzers und/oder zur Autorisierung des Nutzers erstellt.From the data and / or the information of the user, a personal profile of the user is created in the arithmetic unit of the slave computer to identify and / or authenticate the user and / or to authorize the user.

Die in den Code übersetzten Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks werden in das Rechenwerk und/oder das Speicherwerk und/oder in die weitere Arbeitskomponente sowie in wenigstens eine Laufzeitumgebung (Kubernetes) des Slave-Computers übertragen.The units of the functionality of the arithmetic unit and / or the storage unit translated into the code are transferred to the arithmetic unit and / or the storage unit and / or to the further working component and to at least one runtime environment (Kubernetes) of the slave computer.

Die in einen Code übersetzten Einheiten der jeweiligen Funktionalitäten der weiteren Arbeitskomponente und die in den Code übersetzten Einheiten des Softwareprogrammprodukts und/oder die Konfiguration des Master-Computers werden in das Rechenwerk und/oder in das Speicherwerk und/oder in die weitere Arbeitskomponente sowie in wenigstens eine Laufzeitumgebung (Kubernetes) des Slave-Computers übertragen.The units of the respective functionalities of the additional work component translated into code and the units of the software program product translated into code and / or the configuration of the master computer are stored in the arithmetic unit and / or in the storage unit and / or in the additional work component and in at least a runtime environment (Kubernetes) of the slave computer.

Die Daten und/oder Informationen des Nutzers werden im Rechenwerk und/oder im Speicherwerk und/oder in der weiteren Arbeitskomponente des Slave-Computers be- und/oder verarbeitet. Die Bearbeitung und/oder die Verarbeitung erfolgt dort mithilfe der übertragenen Funktionalitäten des Softwareprogrammprodukts auf den Slave-Computer.The data and / or information of the user are edited and / or processed in the arithmetic unit and / or in the storage unit and / or in the further work component of the slave computer. Editing and / or processing takes place there with the aid of the transferred functionalities of the software program product to the slave computer.

Die vom Master-Computer zum Slave-Computer übertragenen, in einen Code übersetzten Einheiten der jeweiligen Funktionalitäten wirken auf das Rechenwerk und/oder auf das Speicherwerk und/oder auf die weitere Arbeitskomponente und/oder auf das Softwareprogrammprodukt des Slave-Computers ein.The units of the respective functionalities that are transferred from the master computer to the slave computer and translated into a code act on the arithmetic unit and / or on the storage unit and / or on the further work component and / or on the software program product of the slave computer.

Auf die wenigstens eine Schicht des Verfahrens wird weiter unten im Detail eingegangen.The at least one layer of the method is discussed in detail below.

Hintergrund der ErfindungBackground of the invention

Infrastructure as CodeInfrastructure as Code

Wird ein Softwareprogrammprodukt, vorzugsweise im Rahmen eines Identity und Access Management Systems in ein bereits vorhandenes Rechenzentrum und/oder einen Computer installiert, ist dies meist ein sehr langwieriger und kostenintensiver Vorgang.If a software program product is installed in an existing data center and / or a computer, preferably as part of an identity and access management system, this is usually a very lengthy and costly process.

Mit dem Ansatz „Infrastructure as Code“ werden die Anforderungen des Nutzers bezüglich der erforderlichen Hardware und/oder der erforderlichen Software in einen Code programmiert.With the “Infrastructure as Code” approach, the requirements of the user with regard to the required hardware and / or the required software are programmed into a code.

Der Code kann dabei ein Plattform-Code sein.The code can be a platform code.

Mithilfe der „Infrastructure as Code“ werden vorgegebene Hardware-Infrastrukturen und/oder Software-Infrastrukturen mit „Cloud-Infrastrukturen“ bereitgestellt.With the help of “Infrastructure as Code”, specified hardware infrastructures and / or software infrastructures with “cloud infrastructures” are provided.

Unter „Cloud-Infrastrukturen“ versteht die Erfindung vorzugsweise, aber nicht ausschließlich Systeme wie „Amazon“, „AWS“, „Microsoft Azure“ oder „Google Cloud Plattform“.The invention preferably, but not exclusively, understands “cloud infrastructures” as systems such as “Amazon”, “AWS”, “Microsoft Azure” or “Google Cloud Platform”.

Es versteht sich von selbst, dass die vorausgegangene Aufzählung nur beispielhaft gemeint ist.It goes without saying that the preceding list is only meant as an example.

Configuration as CodeConfiguration as code

Unter „Configuration as Code“ versteht die Erfindung die Trennung der Konfiguration auf den spezifischen Bedarf und/oder die spezifische Anforderung eines Nutzers von einem Produkt. Unter dem Begriff Produkt versteht die Erfindung vorzugsweise, aber nicht ausschließlich, ein Softwareprogrammprodukt.The invention understands “Configuration as Code” to mean the separation of the configuration based on the specific needs and / or the specific requirements of a user from a product. The invention preferably, but not exclusively, understands the term product to be a software program product.

Je nach Bedarf und Anforderung des Nutzers wird die nutzer-spezifische Konfiguration des Produkts vom Produkt als solchen, getrennt. Das Produkt ist dabei, vorzugsweise, aber nicht ausschließlich, ein Softwareprogrammprodukt.Depending on the needs and requirements of the user, the user-specific configuration of the product is separated from the product as such. The product is, preferably, but not exclusively, a software program product.

Die Konfiguration wird losgelöst vom Produkt als Code abgelegt und erlaubt, dynamisch auf die Laufzeitumgebung zu reagieren. Ist die Laufzeitumgebung zum Beispiel unter einem bestimmten Uniform Resource Locator (URL) erreichbar (zum Beispiel kundenciam.de), kann diese URL automatisiert konfiguriert werden, sodass das System dort ansprechbar ist. Die URL ist also nicht statisch konfiguriert, sondern wird erst zur Laufzeit dynamisch konfiguriert. Der Vorteil besteht unter anderem darin, dass ein Anwender typischerweise mehrere Umgebungen betreiben möchte für Entwicklung, Test und produktiven Einsatz. Es müssen also nicht drei Konfigurationen gepflegt werden, sondern das System kann dreimal ausrollen und es wird dynamisch erreichbar sein unter entwicklungssystem.kundenciam.de, testsystem.kundenciam.de und produktivsystem.kundenciam.de (alle URLs nur als Beispiel zur Verdeutlichung).The configuration is stored separately from the product as code and allows to react dynamically to the runtime environment. If, for example, the runtime environment can be reached under a certain Uniform Resource Locator (URL) (e.g. Kundenciam.de), this URL can be configured automatically so that the system can be addressed there. The URL is not configured statically, but is only configured dynamically at runtime. The advantage is, among other things, that a user typically wants to operate several environments for Development, testing and productive use. So it is not necessary to maintain three configurations, but the system can be rolled out three times and it will be dynamically accessible at development system.kundenciam.de, testsystem.kundenciam.de and produktivsystem.kundenciam.de (all URLs only as examples for clarification).

Es gibt viele weitere Beispiele, in denen dieser Ansatz deutlich überlegen ist, unter anderem bei der Reaktion auf die verfügbaren Ressourcen. Das System ist in der Lage sich dynamisch anzupassen, je nachdem wie viele Nutzer gerade das System nutzen oder zum Beispiel welche Hardware-Ausprägungen in der Laufzeitumgebung vorhanden sind.There are many more examples where this approach is clearly superior, including responding to the resources available. The system is able to adapt itself dynamically, depending on how many users are currently using the system or, for example, which hardware versions are available in the runtime environment.

In einer Verwaltung von unterschiedlichen Versionen sind eindeutig codierte Konfigurationen festgelegt. Die unterschiedlichen Codes können miteinander verglichen werden.In an administration of different versions, uniquely coded configurations are defined. The different codes can be compared with one another.

Mithilfe der Codierung wird eine erhebliche Qualitätssteigerung erreicht, da jede Änderung an der Codierung nachvollzogen werden kann und manuelle, fehleranfällige Konfigurationsänderungen unterbleiben. Jedes Code-Artefakt kann jederzeit und/oder bei jedem Nutzer und/oder bei jedem Identity und Access Management System wieder verwendet werden.With the help of coding, a considerable increase in quality is achieved, since every change to the coding can be traced and manual, error-prone configuration changes are omitted. Every code artifact can be reused at any time and / or with every user and / or with every Identity and Access Management System.

Auf die Begriffe „Infrastructure-as-Code“ und „Configuration-as-Code“ wird weiter unten noch gesondert eingegangen.The terms “Infrastructure-as-Code” and “Configuration-as-Code” will be discussed separately below.

Die Erfindung sieht vor, dass die Installation des Identity und Access Management Systems und/oder die Installation des zugehörigen Softwareprogrammprodukts vollständig automatisiert erfolgt.The invention provides that the installation of the identity and access management system and / or the installation of the associated software program product take place in a completely automated manner.

Dem Anwender wird zur Installation des Identity und Access Management Systems und/oder des zugehörigen Softwareprogrammprodukts die benötigte Infrastruktur in einer Cloud bereitgestellt. Die Konfiguration des Identity und Access Management Systems sowie des zugehörigen Softwareprogrammprodukts erfolgt mithilfe der Übertragung eines Codes vom Master-Computer auf den Slave-Computer.The user is provided with the infrastructure required in a cloud to install the identity and access management system and / or the associated software program product. The configuration of the Identity and Access Management System and the associated software program product is carried out by transferring a code from the master computer to the slave computer.

Die vorab dargestellte Cloud-Umgebung kann entweder vom Anwender selbst oder von einem Externen bereitgestellt werden. Ersteres erlaubt weitere Vorteile bezüglich Sicherheit und Governance. Da der Anwender direkt Vertragspartner des Cloudanbieters ist, hat er alle direkten Zugriffsmöglichkeiten selbst und kann auch zum Beispiel Auditrechte geltend machen. Dies stellt einen deutlichen Gewinn gegenüber einem komplexen Vertragskonstrukt über Subunternehmen dar.The cloud environment shown above can either be provided by the user himself or by an external person. The former allows further advantages in terms of security and governance. Since the user is a direct contractual partner of the cloud provider, he has all direct access options himself and can also, for example, assert audit rights. This represents a significant gain compared to a complex contractual structure via subcontractors.

Noch eingängiger wird dieser Vorteil durch die Möglichkeit, dass Anwender ihr eigenes Rechenzentrum mit derselben Laufzeitumgebung (Kubernetes) ausstatten können. Dann ist noch nicht einmal der Bezug eines Cloud-Dienstes notwendig und die Daten bleiben vollständig unter der Kontrolle des Anwenders.This advantage is made even more accessible by the possibility that users can equip their own data center with the same runtime environment (Kubernetes). Then it is not even necessary to purchase a cloud service and the data remains completely under the control of the user.

Alle für den Produktionsbetrieb benötigten Artefakte des Identity und Access Management Systems und des zugehörigen Softwareprogrammprodukts werden dem Nutzer in codierter Form übertragen.All artifacts of the identity and access management system and the associated software program product required for production are transmitted to the user in coded form.

Automatische Backups und/oder Monitoringfunktionen werden dem Nutzer in Form von Codierungen auf seinen Slave-Computer übertragen.Automatic backups and / or monitoring functions are transferred to the user in the form of codes on his slave computer.

Implementierung von Identity und Access Management Systemen mit KubernetesImplementation of identity and access management systems with Kubernetes

Unter dem Begriff „Kubernetes“ versteht die Erfindung eine „Laufzeitumgebung“ oder eine „Ausführungsumgebung“.The invention understands the term “Kubernetes” as a “runtime environment” or an “execution environment”.

Im Weiteren wird der Begriff Laufzeitumgebung verwendet. Die Laufzeitumgebung ist ein Softwareprogramm, mit dem vorzugsweise Softwareprogrammprodukte im Rahmen des Identity und Access Management Systems, vorzugsweise in ungewohnter Umgebung, lauffähig gemacht werden können.The term runtime environment is used below. The runtime environment is a software program with which software program products can preferably be made executable within the framework of the identity and access management system, preferably in an unfamiliar environment.

Die Laufzeitumgebung verbindet vorzugsweise Anwendersoftwareprogramme mit dem im jeweiligen Computer vorinstallierten Betriebssystem. Zentraler Aspekt bei Kubernetes ist, dass es für die Ausführung von Anwendungsprogrammen in hochverfügbaren Umgebungen ausgelegt ist. Es stellt also eine Laufzeitumgebung für verteilte, redundante Systeme über mehrere Computer hinweg dar.The runtime environment preferably connects user software programs with the operating system preinstalled in the respective computer. The central aspect of Kubernetes is that it is designed to run application programs in highly available environments. It therefore represents a runtime environment for distributed, redundant systems across multiple computers.

Vorzugsweise kann das Identity und Access Management System als micro-service-basierte Architektur ausgebildet sein.The identity and access management system can preferably be designed as a micro-service-based architecture.

Das Identity und Access Management System und/oder das Softwareprogrammprodukt kann in einzelne Micro-Services unterteilt werden.The identity and access management system and / or the software program product can be divided into individual microservices.

Das Identity und Access Management System und/oder das Softwareprogrammprodukt kann unabhängig von weiteren Komponenten des Identity und Access Management Systems oder des Softwareprogrammprodukts ergänzt und/oder erweitert werden.The identity and access management system and / or the software program product can be supplemented and / or expanded independently of further components of the identity and access management system or the software program product.

Konfigurationen können in codierter Form vom Master-Computer zu einem beliebigen Slave-Computer übertragen werden.Configurations can be transferred in coded form from the master computer to any slave computer.

Die „Time-to-Market“ wird auf ein Minimum der ursprünglich benötigten Zeit reduziert.The "time-to-market" is reduced to a minimum of the time originally required.

Mit der Übertragung von codierten Einheiten der jeweiligen Funktionalität vom Master-Computer auf den Slave-Computer gelingt ein sogenannter „internationaler Rollout“, ohne marktspezifische Anforderungen und/oder regulatorische und gesetzliche Vorgaben an lokal voneinander abweichende Parameter anpassen zu müssen.With the transfer of coded units of the respective functionality from the master computer to the slave computer, a so-called “international rollout” is achieved without having to adapt market-specific requirements and / or regulatory and legal requirements to locally different parameters.

Geografische und/oder gesetzliche Anpassungen können mithilfe von wenigstens einer Codierung eingerichtet und vom Master-Computer auf den Slave-Computer übertragen werden.Geographical and / or legal adaptations can be set up with the aid of at least one coding and transferred from the master computer to the slave computer.

Hierzu ist es ausreichend, ein Duplikat einer Produktionsumgebung in ein Speicherwerk eines Master-Computers aufzuspielen.To do this, it is sufficient to upload a duplicate of a production environment to a storage device on a master computer.

Das Speicherwerk des Master-Computers kann ein Rechenzentrum oder eine lokale Cloud sein.The storage system of the master computer can be a data center or a local cloud.

Auf diese Weise können die Installationszeiten und die Set-up-Zeiten minimiert werden.In this way, the installation times and the set-up times can be minimized.

Die Master-Computer können an lokal voneinander abweichenden Orten jeweils Host-Standorte aufweisen.The master computers can each have host locations at locations that differ from one another locally.

Host-Standorte können beispielhaft und in keiner Weise ausschließlich, in jedem Land und/oder auf jedem Kontinent der Welt angeordnet sein.Host locations may be exemplary and in no way exclusive, in every country and / or on every continent of the world.

Dies erweist sich als vorteilhaft, da sich der Nutzer nicht länger mit lokalen und/oder nationalen und/oder regionalen Hosting-Fragen auseinandersetzen muss.This proves to be advantageous because the user no longer has to deal with local and / or national and / or regional hosting issues.

Das „Hosting“ gewährleistet kurze Server-Latenzen bei gleichzeitiger Verfügbarkeit von Support und Service über 24 Stunden an 7 Tagen in der Woche.The "hosting" guarantees short server latencies with simultaneous availability of support and service over 24 hours, 7 days a week.

Identity und Access Management Systeme und/oder zugehörige Softwareprogrammprodukte können in unterschiedliche Versionen, je nach Bedarf und/oder nach Anforderung des Nutzers unterteilt werden. Unbeachtlich jedweder markt- und/oder nutzerspezifischer Anpassungen bleibt das Identity und Access Management System und/oder das zugehörige Softwareprogrammprodukt in der Basisversion dasselbe.Identity and access management systems and / or associated software program products can be divided into different versions, depending on the needs and / or the requirements of the user. Regardless of any market- and / or user-specific adaptations, the Identity and Access Management System and / or the associated software program product remains the same in the basic version.

Auf diese Weise kann der Entwicklungsaufwand über sämtliche Versionen reduziert werden. Gleichfalls kann die Prozesssicherheit über alle Versionen gesteigert werden.In this way, the development effort can be reduced across all versions. Process reliability can also be increased across all versions.

Die Grundlage für jede neue Version ist eine bereits erprobte und getestete Version des Identity und Access Management Systems und/oder des zugehörigen Softprogrammprodukts.The basis for each new version is a tried and tested version of the Identity and Access Management System and / or the associated software product.

Identity und Access Management Systeme und/oder zugehörige Softwareprogrammprodukte können, sobald sie von Nutzern geprüft und abgenommen werden, als sogenannte geklonte Systeme und Softwareprogrammprodukte weiterverwendet werden.Identity and access management systems and / or associated software program products can continue to be used as so-called cloned systems and software program products as soon as they have been checked and approved by users.

Die Konsistenz der Nutzerdaten und/oder -informationen wird mit dem Verfahren gesichert.The method ensures the consistency of the user data and / or information.

Anstatt Nutzerdaten-Managementprozesse des Nutzers direkt in den Slave-Computer des Nutzers zu integrieren, werden die Daten und/oder Informationen in ein dupliziertes System im Master-Computer eingespielt.Instead of integrating the user's user data management processes directly into the user's slave computer, the data and / or information is imported into a duplicated system in the master computer.

Die getesteten und fehlerfreien Daten und/oder Informationen werden vorzugsweise in codierter Form vom Master-Computer auf den Slave-Computer des Nutzers übertragen.The tested and error-free data and / or information are preferably transmitted in coded form from the master computer to the slave computer of the user.

Auf diese Weise können die Systeme des Master-Computers identisch sein, mit dem System des Slave-Computers.In this way, the systems of the master computer can be identical to the system of the slave computer.

Da auf diese Weise die Systeme des Master-Computers identisch sind mit dem System des Slave-Computers, ist die Migration von Daten und/oder Informationen von dem Master-Computer auf den Slave-Computer ohne großen Aufwand durchführbar.Since the systems of the master computer are identical to the system of the slave computer in this way, the migration of data and / or information from the master computer to the slave computer can be carried out without great effort.

Ein geplantes Produktionssystem des Nutzers lässt sich inklusive aller dazu erforderlicher Prozesse über den Master-Computer ausführlich testen.A planned production system of the user, including all the necessary processes, can be tested in detail using the master computer.

Wertvolle Nutzungsdaten des Nutzers verbleiben im Slave-Computer und können somit nicht beschädigt werden.Valuable usage data of the user remain in the slave computer and can therefore not be damaged.

Nach erfolgreichem Test des Identity und Access Management Systems im Slave-Computer sowie nach erfolgreichem Test des Softwareprogrammprodukts im Rahmen des Master-Computers, können die getesteten, und für gut befundenen Systeme und Softwareprogrammprodukte vom Master-Computer auf den Slave-Computer übertragen werden.After the identity and access management system has been successfully tested in the slave computer and after the software program product has been successfully tested in the master computer, the systems and software program products that have been tested and found to be good can be transferred from the master computer to the slave computer.

Master-Computer und Slave-ComputerMaster computer and slave computer

Die Beziehung zwischen dem Master-Computer und dem Slave-Computer beschreibt eine hierarchische Verwaltung des Zugriffs auf gemeinsame Ressourcen, Daten oder Informationen.The relationship between the master computer and the slave computer describes a hierarchical management of access to shared resources, data or information.

Die Ressourcen umfassen die Einheiten der Funktionalitäten der jeweiligen Komponenten des Master-Computers. Der Master-Computer umfasst dabei als Komponenten wenigstens jeweils ein Rechenwerk und/oder wenigstens ein Speicherwerk. Eine zusätzliche Komponente des Master-Computers ist die weitere Arbeitskomponente.The resources comprise the units of the functionalities of the respective components of the master computer. The master computer comprises at least one arithmetic unit and / or at least one storage unit as components. An additional component of the master computer is the further work component.

Die weitere Arbeitskomponente kann jede Hardware-Einheit des Master-Computers sein, die zur Ausführung eines Computerprogrammprodukts erforderlich ist.The further work component can be any hardware unit of the master computer that is required to execute a computer program product.

Der Master-Computer kommuniziert mit wenigstens einem Slave-Computer.The master computer communicates with at least one slave computer.

Der Master-Computer ist dazu ausgebildet, Funktionseinheiten seines Rechenwerks und/oder Funktionseinheiten seines Speicherwerks und/oder Funktionseinheiten einer weiteren Arbeitskomponente zu erzeugen.The master computer is designed to generate functional units of its arithmetic logic unit and / or functional units of its storage unit and / or functional units of a further work component.

Zur Übertragung der Einheit der jeweiligen Funktionalität vom Master-Computer zum Slave-Computer, wird die jeweilige Einheit der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der Funktionalität der weiteren Arbeitskomponenten in einen Code übersetzt.To transfer the unit of the respective functionality from the master computer to the slave computer, the respective unit of the functionality of the arithmetic unit and / or the storage unit and / or the functionality of the further working components is translated into a code.

Je nach Bedarf und/oder Anforderung des Nutzers werden die Einheiten der jeweiligen Funktionalität in codierter Form vom Master-Computer auf den Slave-Computer übertragen.Depending on the needs and / or requirements of the user, the units of the respective functionality are transmitted in coded form from the master computer to the slave computer.

Der Master-Computer umfasst darüber hinaus ein Softwareprogrammprodukt. Das Softwareprogrammprodukt des Master-Computers steuert den Master-Computer.The master computer also includes a software program product. The master computer's software program product controls the master computer.

Der Master-Computer erzeugt vorzugsweise mithilfe seines Rechenwerks Einheiten der Funktionalität des Softwareprogrammprodukts.The master computer preferably generates units of the functionality of the software program product with the aid of its arithmetic unit.

Die jeweilige Einheit der Funktionalität des Softwareprogrammprodukts des Master-Computers wird in einen Code übersetzt.The respective unit of functionality of the software program product of the master computer is translated into code.

In dem Umfang und/oder in der Ausprägung, in der der Slave-Computer die jeweiligen Einheiten der Funktionalität des Master-Computers benötigt, werden die Einheiten der Funktionalität in codierter Form vom Master-Computer zum Slave-Computer übertragen.To the extent and / or to the extent that the slave computer requires the respective units of functionality of the master computer, the units of functionality are transmitted in coded form from the master computer to the slave computer.

Der Master-Computer umfasst ein Speicherwerk. Das Speicherwerk ist als Datenspeicher oder als Speichermedium ausgebildet und dient der Speicherung von Daten und/oder Informationen.The master computer includes a storage unit. The storage unit is designed as a data memory or as a storage medium and is used to store data and / or information.

Das Speicherwerk des Master-Computers kann ein elektronisches Bauteil sein. Es kann auch ein Datenträger oder ein Speichermedium sein. Das Speicherwerk kann eine Cloud sein, bei der Daten und/oder Informationen über das Internet gespeichert werden.The storage unit of the master computer can be an electronic component. It can also be a data carrier or a storage medium. The storage facility can be a cloud in which data and / or information is stored via the Internet.

Die Erfindung versteht unter dem Begriff „Rechenwerk“ vorzugsweise ein elektronisches Schaltwerk zur Ausführung von Befehlen eines Softwareprogrammprodukts. Das Rechenwerk des Computers weist Bausteine auf zur Programmierung, mit denen jede beliebige Verarbeitungslogik für Daten abgebildet werden kann.The invention preferably understands the term “arithmetic logic unit” to mean an electronic switching unit for executing commands of a software program product. The arithmetic unit of the computer has building blocks for programming, with which any processing logic for data can be mapped.

Beispielhaft und in keiner Weise ausschließlich ist das Rechenwerk des Master-Computers eine arithmetisch-logische Einheit (ALU).By way of example and in no way exclusively, the arithmetic unit of the master computer is an arithmetic-logic unit (ALU).

Codecode

Ein Code ist eine Vorschrift, bei der jedem Zeichen eines ersten Zeichenvorrats eindeutig ein Zeichen und/oder eine Zeichenfolge aus einem anderen Zeichenvorrat zugeordnet wird.A code is a regulation in which a character and / or a character sequence from another character set is uniquely assigned to each character from a first set of characters.

Bei der vorliegenden Erfindung dient der Code zum Austausch von Daten und/oder Informationen zwischen dem Master-Computer und dem Slave-Computer.In the present invention, the code is used to exchange data and / or information between the master computer and the slave computer.

Vorzugsweise dient der Code der Übertragung von Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente des Master-Computers zum Slave-Computer.The code is preferably used to transfer units of the functionality of the arithmetic unit and / or the storage unit and / or the further working component of the master computer to the slave computer.

Der Code dient der Übertragung der Einheit einer Funktionalität des Softwareprogrammprodukts vom Master-Computer zum Slave-Computer.The code is used to transfer the unit of functionality of the software program product from the master computer to the slave computer.

Zur Übertragung der jeweiligen Einheiten vom Master-Computer zum Slave-Computer wird die jeweilige Einheit der Funktionalität in wenigstens einen Code übersetzt. Die jeweilige Einheit der Funktionalität wird auf diese Weise in codierter Form vom Master-Computer zum Slave-Computer übertragen.To transfer the respective units from the master computer to the slave computer, the respective unit of functionality is translated into at least one code. In this way, the respective unit of functionality is transmitted in coded form from the master computer to the slave computer.

Zur Übertragung des Codes umfassen der Master-Computer und/oder der Slave-Computer wenigstens eine informationsformulierende Instanz (Aufzeichner/Sender) .To transmit the code, the master computer and / or the slave computer include at least one information-formulating entity (recorder / transmitter).

Der Master-Computer und/oder der Slave-Computer umfassen zusätzlich wenigstens eine informationsempfangende Instanz. Die informationsempfangende Instanz ist als Leseeinrichtung oder als Empfänger ausgebildet.The master computer and / or the slave computer additionally comprise at least one information-receiving entity. The entity receiving information is designed as a reading device or as a receiver.

Zwischen dem Master-Computer und/oder dem Slave-Computer wird die codierte Einheit der jeweiligen Funktionalität als Information in codierter Form übertragen.The coded unit of the respective functionality is transmitted as information in coded form between the master computer and / or the slave computer.

Die Übertragung von Einheiten der jeweiligen Funktionalität erfolgt vom Master-Computer zum Slave-Computer.The transfer of units of the respective functionality takes place from the master computer to the slave computer.

Die Übertragung von Daten und/oder Informationen, vorzugsweise in Form von Einheiten einer jeweiligen Funktionalität können auch vom Slave-Computer zum Master-Computer übertragen werden.The transmission of data and / or information, preferably in the form of units of a respective functionality, can also be transmitted from the slave computer to the master computer.

Wenigstens zwei Codes können in wenigstens einer Code-Speichereinrichtung (Code-Repository) gespeichert werden.At least two codes can be stored in at least one code storage device (code repository).

Unter der Code-Speichereinrichtung versteht die Erfindung eine Einrichtung des Rechenwerks und/oder des Speicherwerks des Master-Computers, in der jede Version des Identity und Access Management Systems und/oder jede Version des Softwareprogrammprodukts verwaltet wird.The invention understands the code storage device to be a device of the arithmetic unit and / or the storage unit of the master computer in which each version of the identity and access management system and / or each version of the software program product is managed.

In der Code-Speichereinrichtung werden alle Versionen der Einheiten der Funktionalität vorzugsweise des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente in den jeweiligen Code übersetzt, gebündelt und gespeichert.In the code memory device, all versions of the units of functionality, preferably of the arithmetic unit and / or of the storage unit and / or of the further work component, are translated into the respective code, bundled and stored.

Alle Codes der jeweiligen Einheiten der Funktionalität werden in der Code-Speichereinrichtung verwaltet und strukturiert.All codes of the respective units of functionality are managed and structured in the code storage device.

Mithilfe vorgegebener Regeln wird der Code vom Master-Computer kontinuierlich bereitgestellt. Mithilfe der Regeln wird der Code kontinuierlich in den Slave-Computer integriert.With the help of predetermined rules, the code is continuously provided by the master computer. With the help of the rules, the code is continuously integrated into the slave computer.

Bei der Übertragung des wenigstens einen Codes von dem Master-Computer zum Slave-Computer, wird der Code mithilfe einer vorgegebenen Automatisierungsinfrastruktur (CI/CD) in den Slave-Computer bereitgestellt und/oder integriert.When the at least one code is transmitted from the master computer to the slave computer, the code is provided and / or integrated into the slave computer with the aid of a predetermined automation infrastructure (CI / CD).

Der Code, der vom Master-Computer zum Slave-Computer übertragen wird, ist vorzugsweise eine Textdatei und folgt insbesondere einer vorgegebenen Semantik.The code that is transmitted from the master computer to the slave computer is preferably a text file and in particular follows predetermined semantics.

Die Automatisierungsinfrastruktur wendet bei der Übertragung vom Master-Computer auf den Slave-Computer basierend auf vorliegenden Laufzeitbedingungen dynamische Änderungen an. Welche dies sind wird durch die „Configuration-as-Code“ spezifiziert. Der „Configuration-as-Code“ kann beispielhaft, aber nicht ausschließlich, mit Hilfe der Go-Templating-Language vorgenommen werden. Diese ist eine Sprache zur semantischen Beschreibung von logischen Abhängigkeiten zur Modifizierung beliebiger Ausgaben. Sie ist in der Programmiersprache Go implementiert.The automation infrastructure applies dynamic changes to the transfer from the master computer to the slave computer based on the existing runtime conditions. Which these are is specified by the "Configuration-as-Code". The "Configuration-as-Code" can be carried out using the Go-Templating-Language as an example, but not exclusively. This is a language for the semantic description of logical dependencies for the modification of any output. It is implemented in the Go programming language.

Einheit der FunktionalitätUnity of functionality

Die Einheit der jeweiligen Funktionalität und/oder die Einheit der Konfigurierung werden vor oder während oder nach der Übertragung vom Master-Computer zum Slave-Computer adaptiert und/oder angepasst.The unit of the respective functionality and / or the unit of configuration are adapted and / or adapted before or during or after the transfer from the master computer to the slave computer.

Die Übertragung der jeweiligen Einheit der Funktionalität und/oder Konfigurierung erfolgt einzeln oder in sogenannten Paketen.The respective unit of functionality and / or configuration is transmitted individually or in so-called packages.

Die Einheit der jeweiligen Funktionalität und/oder der Konfigurierung wird vor oder während oder nach der Übertragung vom Master-Computer zum Slave-Computer skaliert.The unit of the respective functionality and / or the configuration is scaled before or during or after the transfer from the master computer to the slave computer.

Unter dem Begriff „Skalierung“ versteht die Erfindung eine Unterteilung und/oder eine Bewertung der Einheiten der Funktionalitäten oder der Konfigurierung nach einer bestimmten Rangordnung, vorzugsweise nach physikalischen Größen.The term “scaling” is understood by the invention to mean a subdivision and / or an evaluation of the units of the functionalities or the configuration according to a certain ranking, preferably according to physical quantities.

Die Einheiten der Funktionalitäten und/oder der Konfigurierung können vor oder während oder nach der Übertragung nach vorbestimmten Zahlenwerten und/oder nach Maßeinheiten skaliert werden. Die vorangegangene Aufzählung ist nur beispielhaft und in keiner Weise abschließend gemeint.The units of the functionalities and / or the configuration can be scaled before or during or after the transmission according to predetermined numerical values and / or according to units of measurement. The preceding list is only exemplary and in no way intended to be conclusive.

Durch die Übertragung der in wenigstens einen Code übersetzten Einheit der Funktionalität oder der Konfigurierung, werden vorzugsweise die Kapazität des Rechenwerks und/oder die Kapazität des Speicherwerks und/oder die Kapazität der weiteren Arbeitskomponente erweitert und/oder verändert.By transferring the unit of functionality or configuration translated into at least one code, the capacity of the arithmetic unit and / or the capacity of the storage unit and / or the capacity of the further work component are preferably expanded and / or changed.

Durch die Übertragung der in wenigstens einen Code übersetzten Einheit der Funktionalität und/oder der Konfigurierung des Softwareprogrammprodukts, werden die Kapazität und/oder Bereiche und/oder Schritte des Softwareprogrammprodukts erweitert und/oder verändert. Auch hier ist die Aufzählung nur beispielhaft und in keiner Weise abschließend gemeint.By transmitting the unit of the functionality and / or the configuration of the software program product translated into at least one code, the capacity and / or areas and / or steps of the software program product are expanded and / or changed. Here, too, the list is only exemplary and in no way intended to be conclusive.

Die vom Master-Computer zum Slave-Computer übertragenen Einheiten der Funktionalitäten und/oder der Konfigurierung sind jeweils als eine Service-Leistung ausgebildet. Die Service-Leistung erbringt der Master-Computer für den Slave-Computer.The units of the functionalities and / or the configuration transferred from the master computer to the slave computer are each designed as a service. The master computer provides the service for the slave computer.

Die Service-Leistung wird dabei durch den Master-Computer jeweils an dem Rechenwerk und/oder an dem Speicherwerk und/oder an der weiteren Arbeitskomponente des Slave-Computers vorgenommen.The service is provided by the master computer to the arithmetic unit and / or to the storage unit and / or to the further work component of the slave computer made.

Die Übertragung von wenigstens einer Einheit der Funktionalität und/oder der Konfigurierung des Softwareprogrammprodukts des Master-Computers zum Slave-Computer, wird als Service-Leistung durchgeführt. Die Service-Leistung erfolgt dabei vom Master-Computer zum Slave-Computer.The transfer of at least one unit of the functionality and / or the configuration of the software program product of the master computer to the slave computer is carried out as a service. The service is provided from the master computer to the slave computer.

Die Übertragung der in den Code übersetzten Einheit der Funktionalität und/oder der Konfigurierung vom Master-Computer zum Slave-Computer, erfolgt vorzugsweise automatisch.The transmission of the unit of functionality and / or configuration translated into the code from the master computer to the slave computer is preferably carried out automatically.

Es versteht sich von selbst, dass die Übertragung auch manuell oder nach vorgegebenen Regeln erfolgen kann.It goes without saying that the transmission can also take place manually or according to predetermined rules.

Das Softwareprogrammprodukt ist als Systemsoftware ausgebildet. Das Softwareprogrammprodukt kann eine Unterstützungssoftware sein. Es kann auch eine Anwendungssoftware sein. Die vorgenommene Aufzählung ist nur beispielhaft zu sehen und in keiner Weise abschließend gemeint.The software program product is designed as system software. The software program product can be support software. It can also be application software. The list provided is only to be seen as an example and is in no way intended to be conclusive.

Laufzeitumgebung (Kubernetes)Runtime environment (Kubernetes)

Der Begriff „Laufzeitumgebung“ beschreibt im Sinn der Erfindung die verfügbaren und festgelegten Voraussetzungen eines Laufzeitsystems vorzugsweise im Slave-Computer, die zum Betrieb vorzugsweise des Softwareprogrammprodukts erforderlich sind.In the context of the invention, the term “runtime environment” describes the available and specified requirements of a runtime system, preferably in the slave computer, which are preferably required for operating the software program product.

Die Laufzeitumgebung (Kubernetes) wird durch elementare Bestandteile einer Programmiersprache definiert. Die elementaren Bestandteile der Programmiersprache sind vorzugsweise, aber nicht umfassend, das Verhalten von Sprachkonstrukten und/oder Funktionen wie Typprüfung, Debugging oder eine Codegenerierung oder eine Codeoptimierung.The runtime environment (Kubernetes) is defined by elementary components of a programming language. The elementary components of the programming language are preferably, but not comprehensively, the behavior of language constructs and / or functions such as type checking, debugging or code generation or code optimization.

Die Laufzeitumgebung umfasst wenigstens eine Laufzeitbibliothek und/ oder eine Standardbibliothek und/oder Programmierschnittstellen.The runtime environment comprises at least one runtime library and / or a standard library and / or programming interfaces.

Die Laufzeitumgebung umfasst Laufzeitvariablen. Es können Hard- und Software-Komponenten über Betriebssystemfunktionen vorgesehen sein. The runtime environment includes runtime variables. Hardware and software components can be provided via operating system functions.

Die Laufzeitumgebung umfasst wenigstens eine Funktion, mit der vorzugsweise ein Monitoring und/oder eine Ablaufprüfung ausgeführt werden kann.The runtime environment comprises at least one function with which a monitoring and / or a process check can preferably be carried out.

Die Laufzeitumgebung umfasst wenigstens eine Funktion, mit der ein Debugging-Prozess und/oder eine Code-Generierung und/oder eine CodeOptimierung durchgeführt werden kann.The runtime environment comprises at least one function with which a debugging process and / or code generation and / or code optimization can be carried out.

Mit der Laufzeitumgebung können Schnittstellen eingerichtet und betrieben werden.Interfaces can be set up and operated with the runtime environment.

Durch das in die Laufzeitumgebung eingebrachte Softwaresystem kann auch ein „Single-Sign-on-Prozess“ ausgeführt werden.A “single sign-on process” can also be carried out through the software system introduced into the runtime environment.

Die Übertragung der Einheiten der Funktionalitäten und/oder der Konfigurierung vom Master-Computer zum Slave-Computer, kann auf wenigstens zwei Laufzeitumgebungen zeitgleich und/oder automatisch erfolgen.The transfer of the units of the functionalities and / or the configuration from the master computer to the slave computer can take place simultaneously and / or automatically in at least two runtime environments.

Laufzeitumgebungen werden parallel oder seriell zueinander angeordnet.Runtime environments are arranged in parallel or in series with one another.

Laufzeitumgebungen werden an lokal voneinander abweichenden Orten angeordnet.Runtime environments are arranged in locally different locations.

Laufzeitumgebungen werden an lokal voneinander abweichende Parameter angepasst.Runtime environments are adapted to locally differing parameters.

Die Laufzeitumgebung erlaubt es, Container auszuführen. Das erfindungsgegenständliche Identity und Access Management System folgt dem Microservice Architektur-Konzept und die Laufzeitumgebung ist darauf ausgelegt, Systeme, die diesem Konzept folgen, besonders gut ausführen zu können. Ein Micro-Service ist eine möglichst kleine Komponente in einem verteilten System.The runtime environment allows containers to be executed. The identity and access management system that is the subject of the invention follows the microservice architecture concept and the runtime environment is designed to be able to run systems that follow this concept particularly well. A micro-service is the smallest possible component in a distributed system.

Wenigstens zwei Laufzeitumgebungen werden in Clustern von Laufzeitumgebungen (Kubernetes-Cluster) konfiguriert.At least two runtime environments are configured in clusters of runtime environments (Kubernetes clusters).

Schichtenlayers

Die jeweilige Schicht der Schichten-Architektur wird als „Service Layer“ bezeichnet. Im Weiteren wird jedoch vereinfachend von einer „Schicht“ gesprochen.The respective layer of the layer architecture is referred to as the “service layer”. In the following, however, a “layer” is used to simplify matters.

Die Komponenten und/oder die Code-Speichereinrichtung des Master-Computers und/oder des Slave-Computers werden in mindestens zwei voneinander abweichenden Schichten strukturiert.The components and / or the code storage device of the master computer and / or the slave computer are structured in at least two layers that differ from one another.

Die Einheiten der Funktionalitäten und/oder der Konfigurationen und/oder die zugehörigen Codes und/oder die vorgegebenen Regeln zur Bereitstellung oder zur Integrierung der Codes, werden jeweils in mindestens zwei voneinander abweichenden Schichten strukturiert.The units of the functionalities and / or the configurations and / or the associated codes and / or the specified rules for providing or for integrating the codes are each structured in at least two layers that differ from one another.

Die in Codes übersetzten Einheiten des Softwareprogrammprodukts und/ oder die wenigstens zwei Parameter zur Konfigurierung, werden in jeweils mindestens zwei voneinander abweichende Schichten strukturiert.The units of the software program product translated into codes and / or the at least two parameters for configuration are in each case structured at least two different layers.

Ebenso können wenigstens zwei Laufzeitumgebungen jeweils in mindestens zwei voneinander abweichende Schichten strukturiert werden.Likewise, at least two runtime environments can each be structured in at least two different layers.

Die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts und/oder die Konfigurierung werden nach einer internen Abhängigkeit und/oder nach einer externen Abhängigkeit in wenigstens zwei Schichten strukturiert.The at least one unit of the functionality of the software program product and / or the configuration are structured in at least two layers according to an internal dependency and / or an external dependency.

Die Strukturierung der Einheit der Funktionalität des Softwareprogrammprodukts und/oder die Konfigurierung können nach einer externen Abhängigkeit und/oder nach einer Integrationslogik und/oder nach einer Basiskonfiguration getrennt in wenigstens zwei Schichten strukturiert werden.The structuring of the unit of functionality of the software program product and / or the configuration can be structured separately in at least two layers according to an external dependency and / or according to an integration logic and / or according to a basic configuration.

Die mindestens eine Einheit der Funktionalität des Rechenwerks und/oder die mindestens eine Einheit der Funktionalität des Speicherwerks und/oder die mindestens eine Einheit der Funktionalität der Arbeitskomponente und/oder die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts, können wenigstens nach einer internen Referenz in wenigstens zwei Schichten strukturiert werden. Die Strukturierung in wenigstens zwei Schichten kann auch nach einer vorgegebenen Nutzerkonfiguration und/oder nach einer Deployment-Abstraktion (derjenige Teil der Konfiguration muss abstrahiert werden, der sich auf eine Umgebung bezieht) getrennt in Schichten strukturiert werden.The at least one unit of the functionality of the arithmetic logic unit and / or the at least one unit of the functionality of the storage unit and / or the at least one unit of the functionality of the working component and / or the at least one unit of the functionality of the software program product can at least after an internal reference in at least two layers are structured. The structuring in at least two layers can also be structured separately in layers according to a specified user configuration and / or according to a deployment abstraction (that part of the configuration that relates to an environment must be abstracted).

Die mindestens eine Einheit der Funktionalität des Rechenwerks und/oder die mindestens eine Einheit der Funktionalität des Speicherwerks und/oder die mindestens eine Einheit der Funktionalität der Arbeitskomponente können, in Abhängigkeit wenigstens einer Infrastruktur-Konfiguration und/oder in Abhängigkeit wenigstens einer Cluster-Service-Konfiguration und/oder in Abhängigkeit einer Nutzer-Service-Konfiguration in wenigstens zwei Schichten strukturiert werden.The at least one unit of the functionality of the arithmetic unit and / or the at least one unit of the functionality of the storage unit and / or the at least one unit of the functionality of the work component can, depending on at least one infrastructure configuration and / or depending on at least one cluster service Configuration and / or can be structured in at least two layers depending on a user service configuration.

Die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts kann in Abhängigkeit wenigstens einer Infrastruktur-Konfiguration und/oder in Abhängigkeit wenigstens einer Cluster-Service-Konfiguration und/oder in Abhängigkeit wenigstens einer Nutzer-Service-Konfiguration in wenigstens zwei Schichten strukturiert werden.The at least one unit of the functionality of the software program product can be structured in at least two layers depending on at least one infrastructure configuration and / or depending on at least one cluster service configuration and / or depending on at least one user service configuration.

Die Strukturierung ermöglicht eine Schichten-Architektur nach voneinander abweichenden Hierarchieebenen.The structuring enables a layer architecture according to hierarchical levels that differ from one another.

Die jeweiligen Schichten können durch Vergabe von Referenzen miteinander verbunden und/oder jeweils ineinander integriert werden. Eine Schicht kann, sofern erforderlich, eine andere Schicht überschreiben.The respective layers can be connected to one another and / or integrated into one another by assigning references. A shift can overwrite another shift if necessary.

Jede Schicht kann vorzugsweise wenigstens zwei sogenannte „Unterschichten“ umfassen.Each layer can preferably comprise at least two so-called “sub-layers”.

Schichten-ArchitekturLayered architecture

Zur Verdeutlichung wird die Schichten-Architektur am Beispiel dreier angenommener Schichten näher erläutert. Rein beispielhaft und in keiner Weise ausschließlich, wird eine erste Schicht angenommen (bezeichnet: Komponente), die sich auf das Softwareprogrammprodukt des Master-Computers bezieht.For clarification, the layer architecture is explained in more detail using the example of three assumed layers. By way of example and in no way exclusive, a first layer (referred to as: component) is assumed that relates to the software program product of the master computer.

Eine zweite Schicht (bezeichnet: Nutzer-Service) umfasst die Konfiguration der Hardware-Komponenten des Slave-Computers und/oder die Konfiguration des Softwareprogrammprodukts nach den Anforderungen und Besonderheiten des Nutzers.A second layer (referred to as: user service) comprises the configuration of the hardware components of the slave computer and / or the configuration of the software program product according to the requirements and special features of the user.

Die dritte Schicht (bezeichnet: Nutzer-Stage) betrifft vorzugsweise die Einheiten der Funktionalität der Hardware-Komponenten, die vom Master-Computer als jeweilige Einheiten der Funktionalität in codierter Form zum Slave-Computer übertragen werden.The third layer (referred to as: user stage) preferably relates to the units of functionality of the hardware components that are transmitted from the master computer as respective units of functionality in coded form to the slave computer.

Die Schichten der Schichten-Architektur bilden die Grundlage für die Strukturierung der jeweiligen Codes. Mithilfe der Schichten-Architektur können die Code-Speichereinrichtungen (Code-Repository) und die Artefakte (Dateien, die von der Automatisierungsinfrastruktur zur Weiterverarbeitung genutzt werden. Sie sind zum Beispiel vorkompilierter Softwarecode, Container und andere Dateien) strukturiert werden.The layers of the layer architecture form the basis for structuring the respective codes. With the help of the layered architecture, the code storage facilities (code repository) and the artifacts (files that are used by the automation infrastructure for further processing. They are for example precompiled software code, containers and other files) can be structured.

Die jeweiligen Schichten bilden die Automatisierungsinfrastruktur innerhalb des Verfahrens zur Ausführung des Identity und Access Management Systems, sowie des zugehörigen Softwareprogrammprodukts.The respective layers form the automation infrastructure within the process for executing the identity and access management system, as well as the associated software program product.

Die Schichten der Schichten-Architektur dienen der Realisation und/ oder der Sicherstellung einer kontinuierlichen Installation und einer kontinuierlichen Integration der Einheiten der Funktionalität und/oder der Konfiguration, die vom Master-Computer zum Slave-Computer kommuniziert und übertragen werden.The layers of the layered architecture are used to implement and / or ensure continuous installation and continuous integration of the units of functionality and / or configuration that are communicated and transmitted from the master computer to the slave computer.

Mithilfe der Schichten-Architektur können vorzugsweise spezifische Nutzerumgebungen vom Master-Computer zum Slave-Computer in codierter Form übertragen und installiert werden.With the help of the layer architecture, specific user environments can preferably be transmitted from the master computer to the slave computer in coded form and installed.

Mithilfe der Automatisierungsinfrastruktur können die Daten und/oder Informationen, die in der jeweiligen Schichten-Architektur festgelegt sind, über wenigstens zwei Nutzer hinweg benutzt werden.With the help of the automation infrastructure, the data and / or information that are defined in the respective layer architecture can be used across at least two users.

Mithilfe der Automatisierungsinfrastruktur können unterschiedliche Versionen von Identity und Access Management Systemen und/ oder von den zugehörigen Softwareprogrammprodukten entwickelt und/oder vollständig beim Slave-Computer installiert werden.With the help of the automation infrastructure, different versions of identity and access management systems and / or of the associated software program products can be developed and / or completely installed on the slave computer.

Konkrete Änderungen am Identity und Access Management System sowie am zugehörigen Softwareprogrammprodukt können für den jeweiligen Nutzer im Master-Computer entwickelt und getestet werden.Specific changes to the identity and access management system as well as to the associated software program product can be developed and tested for the respective user in the master computer.

Die getesteten Änderungen werden vom Master-Computer in codierter Form zum Slave-Computer übertragen und dort implementiert und auf die jeweiligen Anforderungen und Bedürfnisse des Nutzers konfiguriert.The tested changes are transmitted from the master computer in coded form to the slave computer, where they are implemented and configured to the respective requirements and needs of the user.

Mithilfe der Schichten der Schichten-Architektur kann im Master-Computer eine Schichten-Architektur des Slave-Computers nachgebildet werden. With the help of the layers of the layer architecture, a layer architecture of the slave computer can be simulated in the master computer.

Die im Master-Computer nachgebildete Schichten-Architektur des Slave-Computers ermöglicht die Installation und/oder den Test sämtlicher Besonderheiten und/oder Anforderungen, die für den Slave-Computer des Nutzers erforderlich sind. Die Nachbildung des Slave-Computers des Nutzers im Master-Computer umfasst die vollständige Umgebung des Slave-Computers mit sämtlichen, erforderlichen Umsystemen, die der Kontrolle der Schichten der Schichten-Architektur unterliegen.The layer architecture of the slave computer, which is simulated in the master computer, enables the installation and / or testing of all special features and / or requirements that are necessary for the slave computer of the user. The replication of the slave computer of the user in the master computer comprises the complete environment of the slave computer with all necessary peripheral systems that are subject to the control of the layers of the layered architecture.

Die Daten oder Informationen der Hardware-Komponenten des Master-Computers und des zugehörigen Softwareprogrammprodukts werden innerhalb des Master-Computers auf die Anforderungen und Erfordernisse des Nutzers konfiguriert.The data or information of the hardware components of the master computer and the associated software program product are configured within the master computer to the requirements and requirements of the user.

Die jeweils auf den Nutzer konfigurierten Einheiten der Funktionalitäten werden sodann vom Master-Computer auf den Slave-Computer kommuniziert und übertragen.The units of the functionalities configured in each case for the user are then communicated and transferred from the master computer to the slave computer.

Die Konfigurationsdateien, die die Daten und/oder Informationen der Konfiguration des Nutzers umfassen, werden in Codes transferiert und in Form der Codes über alle Schichten hinweg mithilfe beispielsweise, aber nicht abschließend, einer Go-Templating-Language vom Master-Computer zum Slave-Computer übertragen.The configuration files, which contain the data and / or information on the configuration of the user, are transferred in codes and in the form of codes across all layers using, for example, but not limited to, a go-templating language from the master computer to the slave computer transfer.

Die vom Master-Computer zum Slave-Computer zu übertragenden Konfigurationsdateien können wenigstens eine Logik umfassen und/oder abbilden. Auf diese Weise kann flexibel und dynamisch auf Abhängigkeiten oder Parameter des Nutzers mithilfe der Konfiguration reagiert werden.The configuration files to be transmitted from the master computer to the slave computer can include and / or map at least one logic. In this way, the configuration can be used to react flexibly and dynamically to user dependencies or parameters.

Erste Schicht (bezeichnet: Komponente)First layer (referred to as: component)

Im Zusammenhang mit der ersten Schicht versteht die Erfindung unter dem Begriff „interne Abhängigkeit“ eine Referenz der jeweiligen ersten Schicht, vorzugsweise auf eine beliebige Hardware-Komponente, um auf diese Weise die Schicht in Abhängigkeit zu der jeweiligen Hardware-Komponente zu stellen.In connection with the first layer, the invention understands the term “internal dependency” to be a reference of the respective first layer, preferably to any hardware component, in order in this way to make the layer dependent on the respective hardware component.

Der Begriff „externe Abhängigkeit“ drückt eine Abhängigkeit der jeweiligen Schicht vorzugsweise zu externen Software-Libraries aus. Unter dem Begriff „Software-Library“ wird vorzugsweise, aber nicht ausschließlich, eine „Open Source“ verstanden. Es können auch „Docker Images“ oder „Helm-Charts“ gemeint sein.The term “external dependency” expresses a dependency of the respective layer, preferably on external software libraries. The term “software library” is preferably, but not exclusively, understood to mean “open source”. It can also mean “Docker Images” or “Helm Charts”.

Die internen und/oder externen Abhängigkeiten werden in die Infrastruktur der Schichten-Architektur einkopiert. Im Rahmen des Master-Computers werden die internen und/oder externen Abhängigkeiten auf sogenannte Vulnerabilities (vorzugsweise CVEs) oder aber auf Lizenzkompatibilität geprüft.The internal and / or external dependencies are copied into the infrastructure of the layer architecture. As part of the master computer, the internal and / or external dependencies are checked for so-called vulnerabilities (preferably CVEs) or for license compatibility.

Der Begriff „Integrationslogik“ beschreibt, dass in der jeweiligen Schicht vorzugsweise eine Logik implementiert wird, um die jeweilige Komponente mit vorzugsweise wenigstens einem Cluster-Service zu integrieren. Der Begriff Integrationslogik umfasst darüber hinaus ein automatisiertes Monitoring der Verfügbarkeit und/oder eine Überwachung von Metriken. Zusätzlich ist auch eine Integration in ein zentralisiertes Log-Management umfasst. Zusätzlich kann auch eine Implementierung erforderlicher Logiken für die Installation, vorzugsweise von Softwareprogrammprodukten, gemeint sein.The term “integration logic” describes that logic is preferably implemented in the respective layer in order to integrate the respective component with preferably at least one cluster service. The term integration logic also includes automated monitoring of availability and / or monitoring of metrics. Integration into a centralized log management is also included. In addition, an implementation of required logics for the installation, preferably of software program products, can also be meant.

Unter dem Begriff „Basiskonfiguration“ versteht die Erfindung die Konfigurierung von sogenannten Use-Cases, mit deren Hilfe Projekte mit geringerem Zeitaufwand gestartet werden können.The term “basic configuration” is understood by the invention to mean the configuration of so-called use cases, with the help of which projects can be started with less expenditure of time.

Die sogenannte Basiskonfiguration kann vorzugsweise mit anderen Hardware-Komponenten oder mit Software-Komponenten zusammengeführt werden oder in andere Komponenten integriert werden. Eine Abhängigkeit zwischen der Basiskonfiguration und der jeweiligen Komponente ist jedoch nicht erforderlich.The so-called basic configuration can preferably be combined with other hardware components or with software components or integrated into other components. However, there is no need to depend on the basic configuration and the respective component.

Die Konfiguration wird in erprobtem und/oder getestetem Zustand vom Master-Computer auf den Slave-Computer übertragen.The configuration is transferred from the master computer to the slave computer in the tried and / or tested state.

Die vorgenannte erste Schicht ist vorzugsweise als Cluster-Service ausgebildet. Sie kann auch eine Basis-Komponente (Eine oder mehrere Basis-Komponenten werden in einem Nutzerservice - siehe nächste Schicht - referenziert und konfiguriert, um den nutzerindividuellen Teil zu konfigurieren und die IAM-Use-Cases zu realisieren. Sie stellen die Basis beziehungsweise Grundlage für höherwertige Komponenten dar.) sein.The aforementioned first layer is preferably designed as a cluster service. It can also be a basic component (one or more basic components are referenced and configured in a user service - see next layer - in order to configure the user-specific part and implement the IAM use cases. They provide the basis or basis for higher-quality components.).

Ein „Cluster-Service“ wird von wenigstens zwei Schichten (sogenannten Service-Layers) betrieben. Ein Cluster-Service kann nutzerspezifisch ausgebildet sein.A “cluster service” is operated by at least two layers (so-called service layers). A cluster service can be designed to be user-specific.

Der Cluster-Service wird vorzugsweise, aber nicht ausschließlich als ein zentralisiertes „Logging-System“ dargestellt. Der Cluster-Service kann auch ein automatisiertes Monitoring-System oder ein sogenannter „Tagger“ sein.The cluster service is preferably, but not exclusively, presented as a centralized "logging system". The cluster service can also be an automated monitoring system or a so-called “tagger”.

Mithilfe des Taggers werden Resourcenauswertungen in Cloud-Umgebungen vorgenommen.With the help of the tagger, resource evaluations are carried out in cloud environments.

Wenigstens eine sogenannte Basis-Komponente kann mit der zweiten Schicht (bezeichnet: Nutzer-Service) referenziert und konfiguriert werden.At least one so-called basic component can be referenced and configured with the second layer (referred to as: user service).

Mithilfe der Schicht der Schichten-Architektur „Nutzer-Service“ wird der nutzerindividuelle Teil der jeweiligen Einheiten der Funktionalitäten konfiguriert. Gleichzeitig wird ein Identity und Access Management Use-Case realisiert.The user-specific part of the respective units of the functionalities is configured with the help of the layer of the layer architecture “User Service”. At the same time, an identity and access management use case is implemented.

Zweite Schicht (bezeichnet: Nutzer-Service)Second layer (referred to as: user service)

Die Schicht der Schichten-Architektur „Nutzer-Service“ ist das Zentrum des Identity und Access Management Systems aus der jeweiligen Perspektive des Nutzers.The layer of the layered architecture “user service” is the center of the identity and access management system from the perspective of the user.

Sämtliche Daten und/oder Informationen, die nutzerspezifisch sind, werden in Form von Konfigurationen in der zweiten Schicht (bezeichnet: Nutzer-Service) gebündelt. Im Rahmen der zweiten Schicht der Schichten-Architektur (bezeichnet: Nutzer-Service) versteht die Erfindung unter dem Begriff „interne Referenzen“, eine Referenz auf eine oder mehrere Basiskomponenten innerhalb der Schichten-Architektur.All data and / or information that is user-specific is bundled in the form of configurations in the second layer (referred to as: user service). In the context of the second layer of the layered architecture (referred to as: user service) the invention understands the term “internal references” to mean a reference to one or more basic components within the layered architecture.

Der Begriff „Konfiguration des Nutzers“ umfasst eine vollständige nutzerspezifische Konfiguration nach den Erfordernissen und/oder Anforderungen des Nutzers. Hierbei kann die Basiskonfiguration durch weitere Daten und/oder Informationen des Nutzers ergänzt und insbesondere auch überschrieben werden.The term “configuration of the user” includes a complete user-specific configuration according to the needs and / or requirements of the user. The basic configuration can be supplemented by further data and / or information from the user and in particular also overwritten.

Eine Ergänzung und/oder ein Überschreiben der Basiskonfiguration ermöglicht eine weitere Realisierung von individuellen Anforderungen des Nutzers.An addition and / or overwriting of the basic configuration enables further implementation of individual requirements of the user.

Darüber hinaus können auch Codes oder Bestandteile von Codes der Konfiguration der Basiskomponenten überschrieben oder ergänzt werden.In addition, codes or parts of codes for the configuration of the basic components can also be overwritten or supplemented.

Auf diese Weise wird eine umfassende Flexibilität innerhalb des Identity und Access Management Systems erreicht.In this way, comprehensive flexibility is achieved within the identity and access management system.

Unter dem Begriff „Installations-Abstraktion“ (Deployment-Abstraktion) versteht die Erfindung, dass derjenige Teil der Konfiguration abstrahiert werden muss, der sich auf eine Umgebung bezieht.The term “installation abstraction” (deployment abstraction) is understood by the invention to mean that that part of the configuration that relates to an environment must be abstracted.

Ein umgebungsspezifischer Teil der Konfiguration unterscheidet sich je nach Fortschritt der Installation.An environment-specific part of the configuration differs depending on the progress of the installation.

Beispielhaft, aber in keiner Weise ausschließlich, wird die URL, unter der das Identity und Access Management System erreichbar ist, in Abhängigkeit des Systems unterschiedlich zu konfigurieren sein.As an example, but in no way exclusively, the URL under which the Identity and Access Management System can be reached will have to be configured differently depending on the system.

Infolgedessen erfolgt die Konfiguration nicht in der vorgenannten zweiten Schicht (bezeichnet: Nutzer-Service).As a result, the configuration does not take place in the aforementioned second layer (referred to as: user service).

Vielmehr wird dieser Teil der Konfiguration als eine Umgebungsvariable abstrahiert. Die Konfiguration erfolgt erst zum Zeitpunkt der Installation des Systems.Rather, this part of the configuration is abstracted as an environment variable. The configuration only takes place when the system is installed.

Die gleichen Artefakte werden somit in unterschiedlichen Umgebungen genutzt.The same artifacts are therefore used in different environments.

Auf diese Weise wird die Sicherung der Qualität über eine Vielzahl von Installationen gewährleistet.In this way, quality assurance is guaranteed across a large number of installations.

Eine Abstraktion des Teils der Konfiguration umfasst vorzugsweise Passwörter von einzelnen Systemen oder Versionen.An abstraction of the part of the configuration preferably includes passwords from individual systems or versions.

Die sogenannte Nutzerkomponente ist eine logische Komponente. Die logische Komponente kann wenigstens zwei sogenannte „Untersysteme und/oder Unterkomponenten“ umfassen. Die Untersysteme und/oder Unterkomponenten stellen ein komplexes Gesamtsystem dar.The so-called user component is a logical component. The logical component can comprise at least two so-called “subsystems and / or subcomponents”. The sub-systems and / or sub-components represent a complex overall system.

Die Zusammenfassung der Nutzer-Service-Schicht zu einer Nutzerkomponente ermöglicht eine Unterteilung des Identity und Access Management Systems in unterschiedliche Versionen.The combination of the user service layer into one user component enables the identity and access management system to be divided into different versions.

Das Gesamtsystem kann auf andere Umgebungen (Stages) übertragen werden.The entire system can be transferred to other environments (stages).

Das Gesamtsystem kann aber auch in einer einzelnen Stage zur Verfügung.The entire system can also be made available in a single stage.

Dritte Schicht (bezeichnet: Nutzer-Stage)Third layer (referred to as: user stage)

Die dritte Schicht (bezeichnet: Nutzer-Stage) wird für jede Phase des Identity und Access Management Systems durchlaufen, die der Nutzer jeweils benötigt.The third layer (referred to as the user stage) is passed through for each phase of the identity and access management system that the user requires.

Die erste Schicht (Komponente) und die zweite Schicht (Nutzer-Service) betreffen im Wesentlichen wenigstens ein Softwareprogrammprodukt (Software-Artefakte).The first layer (component) and the second layer (user service) essentially relate to at least one software program product (software artifacts).

Die dritte Schicht „Nutzer-Stage“ umfasst vorzugsweise, aber nicht ausschließlich, Hardware-Komponenten. Hardware-Komponenten sind vorzugsweise, aber nicht ausschließlich, das Rechenwerk und/oder das Speicherwerk und/oder die wenigstens eine Arbeitskomponente des jeweiligen Computers.The third layer “user stage” preferably, but not exclusively, includes hardware components. Hardware components are preferably, but not exclusively, the arithmetic unit and / or the storage unit and / or the at least one working component of the respective computer.

Mit der dritten Schicht (bezeichnet: Nutzer-Stage) werden vorzugsweise Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente des Master-Computers vom Master-Computer zum Slave-Computer übertragen.With the third layer (denoted: user stage), units of the functionality of the arithmetic unit and / or of the storage unit and / or of the further working components of the master computer are preferably transferred from the master computer to the slave computer.

Die Übertragung erfolgt dabei in codierter Form.The transmission takes place in coded form.

Die dritte Schicht (bezeichnet: Nutzer-Stage) führt beim Slave-Computer zu einem lauffähigen und benutzbaren Identity und Access Management System.The third layer (called: user stage) leads to an executable and usable identity and access management system on the slave computer.

Im Rahmen der dritten Schicht versteht die Erfindung unter dem Begriff „Infrastruktur-Konfiguration“ den Fall eines Systems, bei dem wenigstens eine Laufzeitumgebung (Kubernetes) vorgesehen ist.In the context of the third layer, the invention understands the term “infrastructure configuration” to mean the case of a system in which at least one runtime environment (Kubernetes) is provided.

Die Laufzeitumgebung wird mittels eines Codes konfiguriert. Hierbei liegt ein sogenannter „Infrastructure-as-Code“-Ansatz vor. The runtime environment is configured using a code. A so-called “Infrastructure-as-Code” approach is used here.

Die Infrastruktur-Konfiguration umfasst die Konfiguration von wenigstens zwei Zugriffen auf mindestens zwei Infrastrukturkomponenten.The infrastructure configuration includes the configuration of at least two accesses to at least two infrastructure components.

Innerhalb der Infrastruktur-Konfiguration werden die Art der genutzten Ressourcen und die für die automatische, elastische Skalierung relativ zur Laufzeit gesetzten Limits nach den Bedürfnissen und/oder nach den Anforderungen des Nutzers konfiguriert.Within the infrastructure configuration, the type of resources used and the limits set for the automatic, elastic scaling relative to the runtime are configured according to the needs and / or the requirements of the user.

Vorzugsweise, aber nicht ausschließlich wird festgestellt, wie viele sogenannte „Worker-Nodes“, bei hoher Last, in Clustern und dynamisch, vorzugsweise in einer Cloud-Umgebung, hinzugebucht werden können.Preferably, but not exclusively, it is determined how many so-called “worker nodes” can be booked in clusters and dynamically, preferably in a cloud environment, when the load is high.

Im Rahmen der dritten Schicht (bezeichnet: Nutzer-Stage), versteht die Erfindung unter dem Begriff einer „Cluster-Services-Konfiguration“ eine Referenz der zu nutzenden Cluster-Services zueinander.In the context of the third layer (referred to as: user stage), the invention understands the term “cluster services configuration” to be a reference between the cluster services to be used.

Es werden für die jeweils genutzten Cluster-Services diejenigen Teile, die Stage-spezifisch sind, konfiguriert.For the cluster services used, those parts that are stage-specific are configured.

Beispielsweise, aber in keiner Weise umfassend, wird ein automatisiertes Monitoring aktiviert. Durch die spezifische Konfiguration der Stages erfolgt eine Alarmierung, vorzugsweise eines Support-Personals, nur in der produktiv genutzten Stage, nicht aber beispielsweise in testweise genutzten Stages.For example, but in no way comprehensive, automated monitoring is activated. Due to the specific configuration of the stages, an alarm, preferably of a support staff, is only issued in the productively used stage, but not, for example, in stages used for test purposes.

Im Rahmen des Begriffs „Nutzer-Service-Konfiguration“ werden die Daten und/oder Informationen konfiguriert, die vorzugsweise in einer Unterschicht „Deployment-Abstraktion“ konfiguriert worden waren.In the context of the term “user service configuration”, the data and / or information are configured that were preferably configured in a “deployment abstraction” sub-layer.

Im Rahmen der Nutzer-Service-Konfiguration können vorzugsweise Ressourcen-Limits einzelner Komponenten überschrieben werden.Resource limits of individual components can preferably be overwritten as part of the user service configuration.

Beispielhaft, aber in keiner Weise umfassend, werden von den Komponenten in einer weiteren Stage-„Produktion“ mehr Ressourcen in Anspruch genommen, als in einer weiteren Schicht „Quality-Assurance-Stage“.As an example, but in no way comprehensive, the components in a further “Production” stage use more resources than in a further “Quality Assurance Stage” layer.

Darstellung einer Schichten-Architektur am Beispiel einer automatischen Registrierung für ein MonitoringRepresentation of a layer architecture using the example of automatic registration for monitoring

In dem vorliegenden Beispiel wird davon ausgegangen, dass jede Komponente eine Schnittstelle zur jeweiligen Außenumgebung aufweist.In the present example it is assumed that each component has an interface to the respective external environment.

Es wird weiter davon ausgegangen, dass die erste Schicht (bezeichnet: Komponente) eine Unterschicht „Integrationslogik“ umfasst.It is further assumed that the first layer (referred to as: component) comprises a sub-layer “integration logic”.

In der Unterschicht „Integrationslogik“ der ersten Schicht wird definiert, wie die erste Schicht überwacht wird. Es wird weiter definiert, in welchen Fällen Alarme ausgesendet werden sollen.In the "integration logic" sub-layer of the first layer, it is defined how the first layer is monitored. It is also defined in which cases alarms should be sent.

Es ist ein Cluster-Service „Active Monitor Watcher“ vorgesehen, der eine Installation in einem Cluster überwacht.A cluster service "Active Monitor Watcher" is provided, which monitors an installation in a cluster.

Werden in dem Identity und Access Management System weitere zusätzliche Services hinzugefügt, wird die Konfiguration dynamisch ausgewertet. Über ein API wird die dynamisch ausgewertete Konfiguration bei einem externen Monitoring-Service registriert.If further additional services are added to the identity and access management system, the configuration is evaluated dynamically. The dynamically evaluated configuration is registered with an external monitoring service via an API.

Die so installierte Komponente wird automatisch überwacht.The component installed in this way is automatically monitored.

In Abhängigkeit von der jeweiligen Nutzer-Konfiguration werden Alarmmeldungen bei spezifischen Problemen direkt an das Support-Personal gesendet.Depending on the respective user configuration, alarm messages are sent directly to the support staff in the event of specific problems.

Dies erweist sich als besonders vorteilhaft, da nicht für jeden Nutzer individuell ein komplettes Monitoring-System aufgesetzt werden muss. Vielmehr kann der Cluster-Service „Active Monitor Watcher“ auf den jeweils vorliegenden aktuellen Ist-Zustand reagieren. Erforderliche Konfigurationen werden automatisch vorgenommen.This proves to be particularly advantageous since a complete monitoring system does not have to be set up for each individual user. Rather, the “Active Monitor Watcher” cluster service can react to the current current status. Necessary configurations are made automatically.

Der Cluster-Service „Active Monitor Watcher“ erweist sich als äußerst vorteilhaft, da Verfügbarkeiten und Nicht-Verfügbarkeiten von exponierten Endpunkten automatisch überwacht werden können.The “Active Monitor Watcher” cluster service has proven to be extremely advantageous, as the availability and unavailability of exposed endpoints can be monitored automatically.

Vorzugsweise, aber nicht ausschließlich, wird der Cluster-Service durch einen sogenannten „Health-Service“ ergänzt.The cluster service is preferably, but not exclusively, supplemented by a so-called "health service".

Der sogenannte „Health-Service“ erlaubt es, in einer vorzugsweise deskriptiven und/oder menschenlesbaren Sprache Testfälle für das Gesamtsystem zu beschreiben. Dies kann beispielsweise, aber nicht ausschließlich, die Sprache Gurkin sein.The so-called “health service” makes it possible to describe test cases for the overall system in a preferably descriptive and / or human-readable language. For example, but not limited to the Gurkin language.

Die Testfälle für das Gesamtsystem gehen dabei über eine reine Verfügbarkeitsprüfung hinaus.The test cases for the overall system go beyond a pure availability check.

Beispielhaft und ebenfalls nicht umfassend kann ein Single-Sign-On-Szenario über mehrere Systeme hinweg getestet werden.A single sign-on scenario across multiple systems can be tested as an example and also not comprehensively.

Der „Health-Service“ ermöglicht es für den Nutzer, sogenannte Performance-Zielwerte für Antwortzeiten von Komponenten vorzugeben.The “health service” enables the user to specify so-called performance target values for the response times of components.

Zur Validierung von sogenannten Service-Level-Agreements können unter Rückgriff auf eine menschenlesbare Sprache, Tests durchgeführt werden, mit der die Service-Level-Agreements validiert werden können.To validate so-called service level agreements, tests can be carried out using human-readable language, with which the service level agreements can be validated.

Die Validierung kann jeweils gemeinsam mit dem Nutzer vorgenommen werden.The validation can be carried out together with the user.

Die Validierung kann auch automatisiert abgeprüft werden.The validation can also be checked automatically.

Mithilfe des vorgenannten „Active-Monitor-Watchers“ kann der Health-Service Testfälle automatisch überwachen lassen. Mithilfe des „Active-Monitor-Watchers“ können an ein zur Verfügung stehendes Support-Personal Alarmsignale ausgesandt werden.With the help of the aforementioned "Active Monitor Watcher", the health service can automatically monitor test cases. With the help of the "Active Monitor Watcher", alarm signals can be sent to available support staff.

Zusätzlich können vom Support-Personal sogenannte Reporting-Werte zurückgemeldet werden.In addition, so-called reporting values can be reported back by the support staff.

Global token processingGlobal token processing

Identity und Access Management Systeme aus verschiedenen Ländern oder Regionen weisen unabhängig voneinander jeweils wenigstens einen Token auf.Identity and access management systems from different countries or regions each have at least one token independently of one another.

Die jeweiligen Token der unterschiedlichen Länder oder Regionen sind inkompatibel zueinander.The respective tokens of the different countries or regions are incompatible with one another.

Zum Entschlüsseln der jeweiligen nationalen oder regionalen Token müssen weltweit Schlüssel verteilt werden.In order to decrypt the respective national or regional tokens, keys must be distributed worldwide.

Die Verteilung solcher Schlüssel stellt ein besonderes Sicherheitsrisiko dar. Der Austausch von Daten innerhalb derartiger Tokens zwischen einzelnen Ländern und/oder Regionen kann aus rechtlichen Gründen unzulässig sein.The distribution of such keys represents a particular security risk. The exchange of data within such tokens between individual countries and / or regions may be inadmissible for legal reasons.

Diese weltweite Überprüfung erfolgt ohne personenbezogene Daten zwischen den jeweiligen Ländern und/oder Regionen replizieren zu müssen.This global check takes place without having to replicate personal data between the respective countries and / or regions.

Intelligent User RoamingIntelligent user roaming

Die Erfindung sieht vor, dass im Rahmen des Identity und Access Management Systems, Daten und/oder Informationen in wenigstens zwei Bereiche unterteilt werden.The invention provides that data and / or information are subdivided into at least two areas within the framework of the identity and access management system.

Ein erstes Profil ist dabei vorzugsweise vom Nutzer im Klartext lesbar. Die Lesbarkeit umfasst jedoch nicht Passwörter und hinterlegtes Wissen.A first profile can preferably be read by the user in plain text. However, legibility does not include passwords and stored knowledge.

Es ist ein globales Profil vorgesehen.A global profile is planned.

Das globale Profil umfasst wenigstens zwei Attribute des lokalen Profils.The global profile includes at least two attributes of the local profile.

Die Attribute des lokalen Profils können im globalen Profil in einer nicht wieder herstellbaren und/oder einer nicht lesbaren Form ausgebildet sein. Hierbei handelt es sich um einen sogenannten Hash.The attributes of the local profile can be configured in the global profile in a form that cannot be restored and / or is not readable. This is a so-called hash.

Das globale Profil umfasst vorzugsweise, aber nicht ausschließlich, sogenannte eineindeutige Identifizierer.The global profile preferably, but not exclusively, includes so-called unique identifiers.

Beispielhaft, aber nicht ausschließlich, muss zur Durchführung eines Logins in wenigstens einer anderen Region ein sogenannter Hash eines Login-Namens eingegeben werden.As an example, but not exclusively, a so-called hash of a login name must be entered in order to carry out a login in at least one other region.

Der Hash des Login-Namens bezeichnet dabei insbesondere einen Wert, den der Nutzer beim Einloggen eintippt. Dies kann insbesondere die E-Mail-Adresse oder die Mobilfunknummer des Nutzers sein.The hash of the login name in particular denotes a value that the user types in when logging in. This can in particular be the email address or the mobile phone number of the user.

Darüber hinaus ist ein sogenannter Hash des Passwortes vorzusehen.In addition, a so-called hash of the password must be provided.

Das lokale Profil kann um weitere, insbesondere nutzerspezifische, Attribute ergänzt werden. Auf diese Weise können sich Nutzer auch in anderen Regionen mit dem System der jeweiligen Region verbinden, ohne dass das vollständige Profil übertragen und gespeichert werden muss. The local profile can be supplemented by further, in particular user-specific, attributes. In this way, users in other regions can also connect to the system of the respective region without having to transfer and save the complete profile.

Die digitalen Services des Nutzers können so ohne Abstriche bspw. auf Reisen genutzt werden.The user's digital services can thus be used without compromising on travel, for example.

Automatische Erkennung einer LDAP-Topologie für eine ReplikationAutomatic detection of an LDAP topology for a replication

Im Rahmen der Schicht-Architektur kann ein sogenannter „Topologie-Konfigurator“ vorzugsweise in einer Unterschicht der Schicht „Komponente“ eingebaut werden.In the context of the layer architecture, a so-called “topology configurator” can preferably be installed in a lower layer of the “component” layer.

Die Unterschicht ist dabei als „Integrationslogik“ ausgebildet.The lower layer is designed as an "integration logic".

Ein derartiger Topologie-Konfigurator wird vorzugsweise beim Start eines sogenannten Pods ausgeführt. Mithilfe des Topologie-Konfigurators wird ein Soll-Ist-Vergleich durchgeführt.Such a topology configurator is preferably executed when a so-called pod is started. A target / actual comparison is carried out using the topology configurator.

Mithilfe des Soll-Ist-Vergleichs wird die Rolle eines sogenannten Pods im vorliegenden Identity und Access Management System erkannt und konfiguriert.With the aid of the target / actual comparison, the role of a so-called pod in the present Identity and Access Management System is recognized and configured.

Der Topologie-Konfigurator führt weitere Schritte aus, damit der sogenannte Pod vorzugsweise vorhandene Daten löschen kann und/oder Backups von anderen Systemen herstellen kann.The topology configurator carries out further steps so that the so-called pod can preferably delete existing data and / or create backups of other systems.

Auf diese Weise kann ein Pod dynamisch auf die vorhandene Situation der Laufzeitumgebung und anderer Pods, die zum selben LDAP-Cluster gehören, reagieren. Er kann selbstständig feststellen ob er in der Rolle Master oder Slave benötigt wird und abhängig davon seine Konfiguration dynamisch selbst vornehmen.In this way, a pod can react dynamically to the existing situation of the runtime environment and other pods that belong to the same LDAP cluster. He can independently determine whether he is required in the role of master or slave and, depending on this, make his own configuration dynamically.

Es versteht sich von selbst, dass der Pod auch andere Funktionen umfassen kann.It goes without saying that the pod can also include other functions.

Claims (25)

Verfahren zur Ausführung eines Identity und Access Management Systems, bei dem wenigstens eine Schicht vorgesehen ist und ein Master-Computer mit wenigstens einem Slave-Computer kommuniziert, - wobei der Master-Computer wenigstens eine Komponente umfasst, die jeweils als ein Rechenwerk und/oder als ein Speicherwerk und/oder als wenigstens eine Arbeitskomponente ausgebildet ist, wobei - jeweils Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente des Master-Computers erzeugt werden, und - die jeweiligen Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der Funktionalität der weiteren Arbeitskomponente in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden, - wobei der Master-Computer mit Hilfe des Rechenwerks gesteuert wird, und zur Steuerung wenigstens ein Softwareprogrammprodukt arbeitet, wobei - jeweils Einheiten der Funktionalität des Softwareprogrammprodukts in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden, - wobei das Rechenwerk und/oder das Speicherwerk und/oder die weitere Arbeitskomponente und/oder das Softwareprogrammprodukt des Master-Computers in Abhängigkeit wenigstens eines Parameters des wenigstens einen Slave-Computers konfiguriert werden, und - die jeweilige Konfigurierung in einen Code übersetzt wird und in codierter Form vom Master-Computer zu dem Slave-Computer übertragen wird, - wobei in einem Speicherwerk des Slave-Computers Daten und/oder Informationen eines Nutzers abgespeichert werden, und - in einem Rechenwerk des Slave-Computers aus den Daten und/oder aus den Informationen ein persönliches Profil zur Identifizierung und/oder zur Authentifizierung und/oder zu Autorisierung des Nutzers erstellt wird, - wobei die in einen Code übersetzten Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder die in einen Code übersetzten Einheiten der Funktionalität der weiteren Arbeitskomponente und/oder des Softwareprogrammprodukts und/oder die Konfiguration vom Master-Computer in das Rechenwerk und/oder in das Speicherwerk und/oder in die weitere Arbeitskomponente sowie in wenigstens eine Laufzeitumgebung (Kubernetes) des Slave-Computers übertragen werden, - wobei die Daten und/oder Informationen des Nutzers im Rechenwerk und/oder im Speicherwerk und/oder in der weiteren Arbeitskomponente des Slave-Computers mit Hilfe der übertragenen Funktionalitäten des Softwareprogrammprodukts be- und/oder verarbeitet werden, - und die vom Master-Computer zum Slave-Computer übertragenen, in einen Code übersetzten Einheiten der Funktionalitäten auf das Rechenwerk und/oder das Speicherwerk und/oder auf die weitere Arbeitskomponente und/oder auf das Softwareprogrammprodukt des Slave-Computers einwirken.Method for executing an identity and access management system, in which at least one layer is provided and a master computer communicates with at least one slave computer, - the master computer comprising at least one component, each as an arithmetic unit and / or as a storage unit and / or is designed as at least one working component, with each unit of the functionality of the arithmetic unit and / or the storage unit and / or the further working component of the master computer being generated, and - the respective units of the functionality of the arithmetic unit and / or of the storage unit and / or the functionality of the further work component are translated into code and transmitted in coded form from the master computer to the slave computer, - the master computer being controlled with the aid of the arithmetic logic unit, and at least one software program product working to control , where - units of the functionality of the softw are program product are translated into a code and transmitted in coded form from the master computer to the slave computer, - the arithmetic unit and / or the memory unit and / or the further work component and / or the software program product of the master computer depending on at least one parameter of the at least one slave computer, and - the respective configuration is translated into a code and transmitted in coded form from the master computer to the slave computer, - wherein in a memory of the slave computer data and / or information User are stored, and - in an arithmetic unit of the slave computer from the data and / or from the information, a personal profile for identification and / or authentication and / or authorization of the user is created, - the units translated into a code the functionality of the arithmetic logic unit and / or the storage unit and / or which translates into a code eten units of the functionality of the further work component and / or the software program product and / or the configuration from the master computer in the arithmetic unit and / or in the storage unit and / or in the further work component and in at least one runtime environment (Kubernetes) of the slave computer - whereby the data and / or information of the user in the arithmetic unit and / or in the storage unit and / or in the further working component of the slave computer with the help of the transferred functionalities of the software program product and / or processed, and the units of the functionalities transferred from the master computer to the slave computer and translated into a code on the arithmetic unit and / or the storage unit and / or act on the further work component and / or on the software program product of the slave computer. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass wenigstens zwei Codes in wenigstens einer Codespeichereinrichtung (Code-Repository) gespeichert wird.Procedure according to Claim 1 , characterized in that at least two codes are stored in at least one code storage device (code repository). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der wenigstens eine Code mit Hilfe vorgegebener Regeln kontinuierlich bereitgestellt und/oder kontinuierlich integriert wird (CI/CD).Procedure according to Claim 1 , characterized in that the at least one code is continuously provided and / or continuously integrated with the aid of predetermined rules (CI / CD). Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Komponenten und/oder die Codespeichereinrichtung und/oder die Regeln und/oder die übersetzten Einheiten und/oder das wenigstens eine Softwareprogrammprodukt und/oder der wenigstens eine Codes und/oder der wenigstens eine Parameter und/oder die wenigstens eine Laufzeitumgebung jeweils in mindestens zwei voneinander abweichenden Schichten strukturiert werden.Procedure according to Claim 1 or 2 , characterized in that the components and / or the code storage device and / or the rules and / or the translated units and / or the at least one software program product and / or the at least one code and / or the at least one parameter and / or the at least one Runtime environment can be structured in at least two different layers. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der wenigstens eine Code mit Hilfe einer vorgegebenen Automatisierungsinfrastruktur bereitgestellt und/oder integriert wird.Procedure according to Claim 1 , characterized in that the at least one code is provided and / or integrated with the aid of a predetermined automation infrastructure. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der wenigstens eine Code mit Hilfe einer sogenannten Templating-Language be- und verarbeitet wird.Procedure according to Claim 1 , characterized in that the at least one code is edited and processed with the aid of a so-called templating language. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Code eine Textdatei ist und/oder einer vorgegebenen Semantik folgt.Procedure according to Claim 1 , characterized in that the code is a text file and / or follows predetermined semantics. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts nach einer internen Abhängigkeit und/oder nach einer externen Abhängigkeit und/oder nach einer Integrationslogik und/oder nach einer Basiskonfiguration getrennt, in Schichten strukturiert werden.Procedure according to Claim 4 , characterized in that the at least one unit of functionality of the software program product is structured in layers according to an internal dependency and / or an external dependency and / or an integration logic and / or a basic configuration. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die mindestens eine Einheit der Funktionalität des Rechenwerks und/oder die mindestens eine Einheit der Funktionalität des Speicherwerks und/oder die mindestens eine Einheit der Funktionalität der Arbeitskomponenten und/oder die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts wenigstens nach einer internen Referenz und/oder nach einer Nutzerkonfiguration und/oder nach einer Deployment-Abstraktion getrennt, in Schichten strukturiert werden.Procedure according to Claim 1 , characterized in that the at least one unit of the functionality of the arithmetic unit and / or the at least one unit of the functionality of the storage unit and / or the at least one unit of the functionality of the working components and / or the at least one unit of the functionality of the software program product at least according to an internal Reference and / or separated according to a user configuration and / or according to a deployment abstraction, structured in layers. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die mindestens eine Einheit der Funktionalität des Rechenwerks und/oder die mindestens eine Einheit der Funktionalität des Speicherwerks und/oder die mindestens eine Einheit der Funktionalität der Arbeitskomponente und/oder die mindestens eine Einheit der Funktionalität des Softwareprogrammprodukts in Abhängigkeit wenigstens einer Infrastruktur-Konfiguration und/oder wenigstens einer Cluster-Service-Konfiguration und/oder wenigstens einer Nutzerservice-Konfiguration, in Schichten strukturiert werden.Procedure according to Claim 1 , characterized in that the at least one unit of the functionality of the arithmetic unit and / or the at least one unit of the functionality of the storage unit and / or the at least one unit of the functionality of the working component and / or the at least one unit of the functionality of the software program product depending on at least one Infrastructure configuration and / or at least one cluster service configuration and / or at least one user service configuration, are structured in layers. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Einheiten der Funktionalitäten und/oder die Konfigurierung vor oder während oder nach der Übertragung adaptiert werden.Procedure according to Claim 1 , characterized in that the units of the functionalities and / or the configuration are adapted before or during or after the transmission. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Übertragung der Einheiten der Funktionalitäten und/oder der Konfigurierung einzeln oder in Paketen erfolgt.Procedure according to Claim 1 , characterized in that the units of the functionalities and / or the configuration are transmitted individually or in packages. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Einheiten der Funktionalitäten vor oder während oder nach der Übertragung skaliert werden.Procedure according to Claim 1 , characterized in that the units of the functionalities are scaled before or during or after the transmission. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass durch die Übertragung der, in wenigstens einen Code übersetzten Einheit der Funktionalität, die Kapazität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente und/oder des Softwareprogrammprodukts des Slave-Computers erweitert und/oder verändert wird.Procedure according to Claim 1 , characterized in that the capacity of the arithmetic unit and / or the storage unit and / or the further work component and / or the software program product of the slave computer is expanded and / or changed by the transmission of the unit of functionality translated into at least one code. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vom Master-Computer zum Slave-Computer übertragenen Einheiten der Funktionalitäten jeweils als eine Service-Leistung ausgebildet wird, die jeweils an dem Rechenwerk und/oder an dem Speicherwerk und/oder an der weitere Arbeitskomponente vorgenommen wird.Procedure according to Claim 1 , characterized in that the units of the functionalities transmitted from the master computer to the slave computer are each designed as a service that is carried out on the arithmetic unit and / or on the storage unit and / or on the further work component. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Übertragung vom Master-Computer zum Slave-Computer automatisch erfolgt.Procedure according to Claim 1 , characterized in that the transfer from the master computer to the slave computer takes place automatically. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Laufzeitumgebung wenigstens eine Funktion umfasst, mit der vorzugsweise ein Monitoring und/oder eine Ablaufprüfung und/oder ein Debuggingprozess und/oder eine Codegenerierung und/oder eine Codeoptimierung und/oder eine Schnittstelle ausgeführt wird.Procedure according to Claim 1 , characterized in that the runtime environment comprises at least one function with which a monitoring and / or a sequence check and / or a debugging process and / or a code generation and / or a code optimization and / or an interface is preferably carried out. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Übertragung der Einheiten der Funktionalitäten und/oder der Konfigurierung vom Master-Computer zum Slave-Computer auf allen Laufzeitumgebungen zeitgleich und/oder automatisch erfolgt.Procedure according to Claim 1 , characterized in that the transfer of the units of the functionalities and / or the configuration from the master computer to the slave computer takes place simultaneously and / or automatically in all runtime environments. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die wenigstens zwei Laufzeitumgebungen parallel oder seriell nebeneinander angeordnet werden.Procedure according to Claim 1 , characterized in that the at least two runtime environments are arranged in parallel or in series next to one another. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Laufzeitumgebungen an lokal voneinander abweichenden Orten angeordnet werden.Procedure according to Claim 1 , characterized in that the runtime environments are arranged at locally different locations. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Laufzeitumgebungen an lokal voneinander abweichende Parameter angepasst werden.Procedure according to Claim 1 , characterized in that the runtime environments are adapted to locally differing parameters. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Identity und Access Management System als Container, vorzugsweise als Micro-Service, ausgebildet ist.Procedure according to Claim 1 , characterized in that the identity and access management system is designed as a container, preferably as a micro-service. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Laufzeitumgebungen in Cluster von Laufzeitumgebungen (Kubernetes-Cluster) konfiguriert werden.Procedure according to Claim 1 , characterized in that the runtime environments are configured in clusters of runtime environments (Kubernetes clusters). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Softwareprogrammprodukt eine Systemsoftware oder eine Unterstützungssoftware oder eine Anwendungssoftware ist.Procedure according to Claim 1 , characterized in that the software program product is system software or support software or application software. System zur Ausführung des Verfahrens nach einem oder mehreren der vorausgegangenen Ansprüche, dadurch gekennzeichnet, dass ein Master-Computer mit wenigstens einem Slave-Computer kommuniziert, - wobei der Master-Computer wenigstens eine Komponente umfasst, die jeweils als ein Rechenwerk und/oder als ein Speicherwerk und/oder als wenigstens eine Arbeitskomponente ausgebildet ist, wobei - jeweils Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der weiteren Arbeitskomponente des Master-Computers erzeugt werden, und - die jeweiligen Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder der Funktionalität der weiteren Arbeitskomponente in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden, - wobei der Master-Computer mit Hilfe des Rechenwerks gesteuert wird, und zur Steuerung wenigstens ein Softwareprogrammprodukt arbeitet, wobei - jeweils Einheiten der Funktionalität des Softwareprogrammprodukts in einen Code übersetzt werden und in codierter Form vom Master-Computer zum Slave-Computer übertragen werden, - wobei das Rechenwerk und/oder das Speicherwerk und/oder die weitere Arbeitskomponente und/oder das Softwareprogrammprodukt des Master-Computers in Abhängigkeit wenigstens eines Parameters des wenigstens einen Slave-Computers konfiguriert werden, und - die jeweilige Konfigurierung in einen Code übersetzt wird und in codierter Form vom Master-Computer zu dem Slave-Computer übertragen wird, - wobei in einem Speicherwerk des Slave-Computers Daten und/oder Informationen eines Nutzers abgespeichert werden, und - in einem Rechenwerk des Slave-Computers aus den Daten und/oder aus den Informationen ein persönliches Profil zur Identifizierung und/oder zur Authentifizierung und/oder zu Autorisierung des Nutzers erstellt wird, - wobei die in einen Code übersetzten Einheiten der Funktionalität des Rechenwerks und/oder des Speicherwerks und/oder die in einen Code übersetzten Einheiten der Funktionalität der weiteren Arbeitskomponente und/oder des Softwareprogrammprodukts und/oder die Konfiguration vom Master-Computer in das Rechenwerk und/oder in das Speicherwerk und/oder in die weitere Arbeitskomponente sowie in wenigstens eine Laufzeitumgebung (Kubernetes) des Slave-Computers übertragen werden, - wobei die Daten und/oder Informationen des Nutzers im Rechenwerk und/oder im Speicherwerk und/oder in der weiteren Arbeitskomponente des Slave-Computers mit Hilfe der übertragenen Funktionalitäten des Softwareprogrammprodukts be- und/oder verarbeitet werden, - und die vom Master-Computer zum Slave-Computer übertragenen, in einen Code übersetzten Einheiten der Funktionalitäten auf das Rechenwerk und/oder das Speicherwerk und/oder auf die weitere Arbeitskomponente und/oder auf das Softwareprogrammprodukt des Slave-Computers einwirken.System for carrying out the method according to one or more of the preceding claims, characterized in that a master computer communicates with at least one slave computer, - wherein the master computer comprises at least one component, each as an arithmetic unit and / or as a Storage unit and / or is designed as at least one working component, wherein - each units of the functionality of the arithmetic unit and / or the storage unit and / or the further working component of the master computer are generated, and - the respective units of the functionality of the arithmetic unit and / or the Storage unit and / or the functionality of the further working component are translated into a code and transmitted in coded form from the master computer to the slave computer, - the master computer being controlled with the aid of the arithmetic unit, and at least one software program product working to control it, where - each units of the functionality of the Sof tware program product are translated into a code and transmitted in coded form from the master computer to the slave computer, - the arithmetic unit and / or the storage unit and / or the further working component and / or the software program product of the master computer depending on at least one parameter of the at least one slave computer, and - the respective configuration is translated into a code and transmitted in coded form from the master computer to the slave computer, - wherein in a memory of the slave computer data and / or information User are stored, and - in an arithmetic unit of the slave computer from the data and / or from the information, a personal profile for identification and / or authentication and / or authorization of the user is created, - the units translated into a code the functionality of the arithmetic logic unit and / or the storage unit and / or which practice in a code Transferring set units of the functionality of the further work component and / or the software program product and / or the configuration from the master computer to the arithmetic unit and / or to the storage unit and / or to the further work component and to at least one runtime environment (Kubernetes) of the slave computer - the data and / or information of the user being edited and / or processed in the arithmetic unit and / or in the storage unit and / or in the further work component of the slave computer with the aid of the transferred functionalities of the software program product, - and those of the master -Computer to the slave computer, translated into a code units of the functionalities act on the arithmetic unit and / or the storage unit and / or on the further working component and / or on the software program product of the slave computer.
DE102019129762.1A 2019-11-05 2019-11-05 Process and system for the implementation of an identity and access management system Active DE102019129762B3 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102019129762.1A DE102019129762B3 (en) 2019-11-05 2019-11-05 Process and system for the implementation of an identity and access management system
US17/774,523 US20220394030A1 (en) 2019-11-05 2020-10-06 Method and System for Running an Identity and Access Management System
EP20200422.2A EP3819798A1 (en) 2019-11-05 2020-10-06 Method and system for implementing an identity and access management system
PCT/DE2020/100870 WO2021089083A1 (en) 2019-11-05 2020-10-06 Method and system for running an identity and access management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019129762.1A DE102019129762B3 (en) 2019-11-05 2019-11-05 Process and system for the implementation of an identity and access management system

Publications (1)

Publication Number Publication Date
DE102019129762B3 true DE102019129762B3 (en) 2020-10-15

Family

ID=72613194

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019129762.1A Active DE102019129762B3 (en) 2019-11-05 2019-11-05 Process and system for the implementation of an identity and access management system

Country Status (1)

Country Link
DE (1) DE102019129762B3 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8392420B2 (en) * 1999-11-12 2013-03-05 Emc Corporation Managing access to digital identity information
DE102013102487A1 (en) * 2013-03-12 2014-09-18 Deutsche Telekom Ag Method and device for controlling access to digital content
EP2355474B1 (en) * 2010-01-21 2018-09-05 BlackBerry Limited Transfer of telephony functions associated with a wireless handheld telephony device to another telephony device
WO2019204366A1 (en) * 2018-04-16 2019-10-24 Xage Security, Inc. Decentralized information protection for confidentiality and tamper-proofing on distributed database

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8392420B2 (en) * 1999-11-12 2013-03-05 Emc Corporation Managing access to digital identity information
EP2355474B1 (en) * 2010-01-21 2018-09-05 BlackBerry Limited Transfer of telephony functions associated with a wireless handheld telephony device to another telephony device
DE102013102487A1 (en) * 2013-03-12 2014-09-18 Deutsche Telekom Ag Method and device for controlling access to digital content
WO2019204366A1 (en) * 2018-04-16 2019-10-24 Xage Security, Inc. Decentralized information protection for confidentiality and tamper-proofing on distributed database

Similar Documents

Publication Publication Date Title
DE102007038340B4 (en) Procedures for maintaining process control systems and machine-readable medium
DE112019001481T5 (en) SELECTIVE PROVISION OF MUTUAL TRANSPORT LAYER SECURITY BY USING ALTERNATIVE SERVER NAMES
CH702260B1 (en) Environmental developing device.
DE10316218A1 (en) Network service based communication for use in a process control system
DE112006003953T5 (en) A life cycle management system for intelligent electronic devices
EP2537126A2 (en) Method, computer program product and computer-readable storage medium for the generic creation of a tree structure for describing an it method
DE112012004776T5 (en) Generate a production server load activity for a test server
DE102011053851A1 (en) Service-oriented framework for communication with devices in a process control system
DE112012004247T5 (en) Passively monitoring virtual systems using extensible indexing
EP2232366A2 (en) Method system and simulation or analysis model for data processing
DE102021130957A1 (en) RECOMMENDATIONS FOR THE STABILITY OF SOFTWARE UPDATES
DE112016005867T5 (en) Live Pipeline Templates - Creation and Extensibility of Templates
Ciancarini et al. An open source environment for an agile development model
Raptis et al. The CORAS approach for model-based risk management applied to e-commerce domain
WO2010028994A1 (en) Method for providing control information for a distributed operation in an automation system, computer program and automation system
DE102022114302A1 (en) SOFTWARE-DEFINED PROCESS CONTROL SYSTEM AND METHODS FOR INDUSTRIAL PROCESS PLANTS
DE102019129762B3 (en) Process and system for the implementation of an identity and access management system
CH701481B1 (en) Process management.
WO2021089083A1 (en) Method and system for running an identity and access management system
Thakur et al. Mitigating and patching system vulnerabilities using ansible: A comparative study of various configuration management tools for iaas cloud
DE202019106136U1 (en) System for executing an identity and access management
EP2418556A1 (en) Internet-based fill level measuring and diagnosis information query system and corresponding method
CN113946738A (en) Webpage data crawling method and system based on safety control
EP1997007A2 (en) Method and management system for configuring an information system
Gottschalk et al. Structured workflow achieving interoperable smart energy systems

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final