Workflow Modellierung mit BPMN

Ähnliche Dokumente
Sicherheit in Workflow-Management-Systemen

Konzepte und Anwendung von Workflowsystemen. Kapitel 11: Organisatorischer Aspekt/ Sicherheit & Privatheit

Aktuelle Forschungsthemen

Workflows ganz einfach Einführung in die Process Cloud

Comelio GmbH - Goethestr Berlin. Kurskatalog

Vorlesung Wintersemester 2011/12. Konzepte und Anwendung von Workflowsystemen. Übung zu Kapitel 5: Workflow Nets

Vorlesung Wintersemester 2010/11. Konzepte und Anwendung von Workflowsystemen. Übung zu Kapitel 5: Workflow Nets

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Multiparty Interactions: Tracking personenbezogener Daten in B2B Transaktionen

Werkzeugunterstützung für UML Profiles. Verteidigung des Großen Belegs Andreas Pleuß

Stand der Entwicklung von Shibboleth 2

Information Security und Data Management in der Microsoft Cloud und in hybriden Umgebungen. Georg Bommer, Martin Hüsser

Workflow-Mining / Aktuelle Forschungsthemen

Betriebssysteme I WS 2017/2018. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

9. Sicherheitsaspekte

Techniken der Projektentwicklungen

Inhaltsverzeichnis. Einleitung Zielsetzung und Inhalt Didaktisches Konzept Voraussetzungen Literaturquellen...

EINFÜHRUNG IOZ AG 1

Information Security und Data Management in der Microsoft Cloud und in hybriden Umgebungen. Georg Bommer, Martin Hüsser

Datenschutz für medizinische Patientendaten

Geschäftsprozessmodellierung mittels Software- Services auf Basis der EPK

Anforderungen an die Workflow-Unterstützung für wissensintensive Geschäftsprozesse

Die Unified Modeling Language UML

DOAG 2009 Copyright 2009, Oracle Corporation

Grundkurs Geschäftsprozess- Management

Geschäftsprozessanalyse

Bin ich wirklich der Benutzer für den Sie mich halten? 7. Oktober 2014 // Christian Doppelhofer

=16LP =16LP. Neugierde gesucht. Einordnung

Immer in Bewegung bleiben Oracle Managed File Transfer

SOPRA STERIA PROZESS-ENGINE METAFLOW BPMN 2.0 PROZESSE EINFACH LAUFEN LASSEN. Delivering Transformation. Together

Innovator for Business Analysts on Tour, März 2010

Compliance-Checking auf BPMN-Modellen

Formalisierung von Akitivitätsstrukturen

Zugriffskontrollmechanismen. Rechteverwaltung. und. Gonsu Veronique

Übungen Softwaretechnik I

systems landscape engineering - übung -

Hochschule Prof. Dr. Martin Leischner Bonn-Rhein-Sieg Netzwerksysteme und TK Modul 7: SNMPv3 Netzmanagement Folie 1

Datensicherheit. 8. Datensicherheit

Requirements Engineering I

Informationssysteme für Ingenieure

BPMN. Business Process Modeling Notation. Dr. Martin Bartonitz Product Manager SAPERION AG

Geschäftsprozessmanagement: Einführung in»business Process Modelling Notation«(BPMN)

Comelio GmbH - Goethestr Berlin. Kurskatalog

Vorlesung Methodische Grundlagen des Software-Engineering im Sommersemester 2013

Overview: Module Business Process Management

Notationen zur Prozessmodellierung

BPMN Kategorien und Elementgruppen. Flussobjekte

Geoinformation I Datenmodellierung

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Software-Engineering im Sommersemester 2014

Pendenzen Management

Vorlesung Programmieren

Workflow Modellierung mit BPMN

Integration im Enterprise Umfeld

Workflow-Management-Systeme

Geschäftsprozessmodellierung Einführung, Analyse und Simulation

Objektorientierte Analyse (OOA) OOA-Pattern

Inhaltsverzeichnis. a. Standorte BPMN...6. b. Impressum i. Business Process Model and Notation mit Altova UModel...

XML-based Reference Modelling - Foundations of an EPC Markup Language (EPML)

BPMN. Suzana Milovanovic

Service Engineering. Übung 3a Prozessmodellierung mit Hilfe von BPMN. Prof. Dr. Andreas Schmietendorf 1. SoSe 2018 ServEng

Systemsicherheit. Lerneinheit 2: Security Enhanced Linux. Prof. Dr. Christoph Karg. Sommersemester Studiengang Informatik Hochschule Aalen

11.3 Sicherheitsmodellierung

Requirements Engineering I

DOAG SIG Day. E-Business Suite und SOA: Was ist heute schon möglich? Thomas Karle PROMATIS software GmbH. Frankfurt 26. April 2007

In diesem Anschnitt geht es um die SQL Anweisungen, mit denen ich den Zugriff auf das Datenbankschema steuern kann.

Unified Modeling Language 2

consulting Ventum Consulting Hadoop im Unternehmenseinsatz, aber sicher Nürnberg, November 2015 Results, no excuses.

Modellbasierte Softwareentwicklung mit Sicherheitseigenschaften und UMLsec

RAMI 4.0 Toolbox: Vom Konzept zum Modell

SemTalk Services Stand: September 2015

Seminar im Sommersemester 2012 Prozessanalyse und Privatheit in Workflowmanagementsystemen

Rückblick: Entity-Relationship-Modell

Unisys IAM Projekt in der Umsetzung

Moderne Softwarearchitektur

Studienarbeit Benutzerstudie zur Usability einer Break The Glass Annotationssprache für Business-Processes

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II)

1 Überblick. Alles geregelt Alles geregelt: Einsatz von Rule Engines in SOA Projekten. Heiko Spindler Senior Architekt

Bessere Service-Modellierung durch Kombination von BPMN und SoaML. Nürnberg, 24. Februar 2011

Regelbasierte Entwicklung betrieblicher Informationssysteme

Obj ektorientierte Systemanalyse

Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1

Abschnitt 20: Ein Grundprinzip der Software-Architektur

Kapitel 2: Workflow-Definitionssprachen

Ausgabe: Eine DBMS unabhängige high-level Repräsentation der Anforderungen, das "konzeptuelle Schema".

1 Klassen und Objekte

Vorwort XI Einführung... BPMN - die Notation im Detail... 27

Performancebewertung und -Sicherung von orchestrierten Serviceangeboten

Comelio GmbH - Goethestr Berlin. Kurskatalog

Aus EAI wird SOA: Integration mit Forms und ADF. pdv TAS. Torsten von Osten, Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg

Einsatz der E-Business Suite in der Lehre

<Insert Picture Here> Oracle Business Process Analysis Suite. Gert Schüßler Principal Sales Consultant

Von der Prozessanalyse zur Prozessautomatisierung

DB2 Version 10 Kapitel IT-Sicherheit

1.3 Entwicklungsmethoden: Systematischer Überblick

Raoul Borenius, DFN-AAI-Team

NACHRICHTENTECHNISCHER SYSTEME

Transkript:

Vorlesung Wintersemester 2011/12 Konzepte und Anwendung von Workflowsystemen Kapitel 7: Workflow Modellierung mit BPMN Teil 2: Modellierung von Sicherheit und Privatheit Lehrstuhl für Systeme der Informationsverwaltung, Prof. Böhm Institut für Programmstrukturen und Datenorganisation (IPD) Kap. 7, Teil 2-1

Überblick Kapitel 7 Teil 2 Wiederholung BPMN Motivation am Beispiel Praktikumsvermittlung Umsetzung von Sicherheit und Privatheit in BPMS o Überblick Sicherheit und Privatheit o Annotationen für Sicherheit Privatheit o Transformation der Annotationen Zusammenfassung Übung o Übungsaufgabe ( Hausaufgabe mit Incentive) o Test (freiwillig) Kap. 7, Teil 2-2

Wiederholung BPMN Verbreiteter Standard (OMG) zur Modellierung von Prozessen (Workflows) Beschreibt die Notation und Semantik von Prozessen sowie der Kommunikation zwischen Prozessen o Graphische Modellierung von Prozessen als sogenannte Diagramme Sowohl für fachliche als auch für technische Modelle Kap. 7, Teil 2-3

Einführungsbeispiel Workflow - Teilablauf einer Praktikumsvermittlung - PDS: Personal Data Store Kap. 7, Teil 2-4

Beispiel BPMN Praktikumsvermittlung - [Pool [Lanes [Gateway [End-Events [Start Event [Data Object [Activities (Tasks) Kap. 7, Teil 2-5

Wiederholung der Kernelemente BPMN Flow Objects Connecting Objects Swimlanes Data Artifacts Kap. 7, Teil 2-6

Wiederholung Artifacts in BPMN Beispiel Praktikumsvermittlung - [Gruppierung [Annotation [check case: is user already registered? Kap. 7, Teil 2-7

Einführungsbeispiel - Teilablauf einer Praktikumsvermittlung - Prozess Start Aktivitäten Aufgabenträger Kap. 7, Teil 2-8

Service-orientierte Architekturen (SOA) und Workflows SOAP Web Service Internet SOAP Web Service SOAP Web Service SOA: lose gekoppelte Services in einem Netzwerk Workflow-Management-System (WfMS) koordiniert Prozesse durch Service-Aufrufe Interaktionen mit Akteuren Kap. 7, Teil 2-9

Zusammenfassung (bisher) BPMN weit verbreitete, graphische Modellierungssprache In Vorlesung wichtigste Konstrukte behandelt Was passiert mit Diagrammen? Prozess- Ausführung durch WfMS bisher: generische Modellierung von Workflows Aber: in Praxis weitere Aspekte, wie Sicherheit und Privatheit, von Bedeutung Forschungsfrage: Einbindung von Sicherheit und Privatheit bei Modellierung (und Ausführung) von Workflows Kap. 7, Teil 2-10

Überblick Sicherheit und Privatheit in Workflows - Beispiel Praktikumsvermittlung - Festgelegte Zuständigkeiten Interaktion Persönliche Daten Sicherheitsaspekte Autorisierung Authentifizierung Auditing Vertraulichkeit Integrität Kap. 7, Teil 2-11

Forschungsfragen Ziel: Effiziente Integration von Sicherheitsmechanismen und Privatheitsaspekten in WfMS Identifikation von Auffälligkeiten Evaluierung Modellierung von Anforderungen Ausführung Design & Analyse Erweiterung eines WfMS Konfiguration Transformation von Anforderungen Kap. 7, Teil 2-12

Sicherheits-Facetten in SOA Autorisierung Auditing Integrität Sicherheit Authentifizierung Vertraulichkeit Kap. 7, Teil 2-13

Sicherheit in Workflows Autorisierung (Access Control) o Rechtevergabe an Akteure oder Web Services für die Durchführung von Aufgaben (Aktivitäten) o Rollenkonzepte o Workflow-spezifische Einschränkungen z.b. Pflichtenbindung (Binding of Duty (BoD)), Pflichtentrennung (Separation of Duty (SoD)) o Delegation von Rechten auf Daten Authentifizierung o Beglaubigte Identifikation von Beteiligten Vertraulichkeit von Datenflüssen o Verschlüsselung/ Signatur Datenintegrität o Korrektheit und Schutz vor unberechtigter Manipulation der Daten Auditing o Protokollierung (Logging) Kap. 7, Teil 2-14

Privatheit in Workflows Personenbezogene Daten o Rechtliche Rahmenbedingungen (z.b. Zustimmungen, Nachverfolgung Auditing) o Trust (Reputation) von beteiligten Services Interaktive Einbeziehung der sog. Betroffenen bei Ausführung von Workflowinstanzen o Berücksichtigung persönlicher Präferenzen Regelungen für Datenzugriffe Informationspolitik (Notifikationen) bzgl. Umsetzung von Richtlinien Auswahl von Services zur Speicherung personenbezogener Daten anhand der Reputation (Trust-Level) o Zustimmungen zu Geschäftsbedingungen ( Give Consent ) Kap. 7, Teil 2-15

Konventionelle Ansätze Basismechanismen für Sicherheit in WfMS verfügbar o Rollenkonzepte zur Autorisierung Nicht hinreichend unterstützt o Autorisierungen (z.b. für Bereiche des Workflows) o Separation of Duty (SoD), Binding of Duty (BoD) o Rechtemanagement für Daten Umsetzung von Sicherheit durch proprietäre Software- Erweiterungen o aufwändig, kostspielig Privatheit: existierende Ansätze berücksichtigen nicht, dass Entscheidungen kontextabhängig sein können Kap. 7, Teil 2-16

Ansatz zur Umsetzung von Sicherheit und Privatheit in Workflows Entwicklung einer Sprache o Sicherheits- und Privatheitsbedingungen in Workflows Einbindung in BPMN-Diagramme o Bedingungen als Annotationsterme an BPMN Elemente Generelle Repräsentation: << Annotationterm: list(parameter-name= value ) >> Umsetzung der Annotationen durch WfMS mit Hilfe von neu entwickelten Komponenten 1. Transformation 2. Ausführung Kap. 7, Teil 2-17

Annotationssprache: Autorisierung (I) o o o Role Assignment (Rollenzuweisung) Autorisierung von Rolleninhabern zur Ausführung einer Aktivität Assignment Mechanism (Zuordnungsmechanismus) Zuordnung der Aufgaben an Rolleninhaber (z.b. Erfahrungsgrad, Kundenbetreuer) User Assignment Direkte Zuordnung eines Benutzers Kap. 7, Teil 2-18

Annotationssprache: Autorisierung (II) o o o o Separation of Duty (Pflichtentrennung) Annotierte Aktivitäten müssen von unterschiedlichen Benutzern durchgeführt werden Binding of Duty (Pflichtenbindung) Annotierte Aktivitäten müssen vom gleichen Benutzer durchgeführt werden Delegation Weitergabe der Zugriffsrechte auf Daten Weitergabe der Ausführungsrechte für Tasks Kap. 7, Teil 2-19

Role Assignment Für Aktivitäten, Gruppen von Aktivitäten (GoA), oder Swimlanes Syntax: << Assignment: type= Role name= $rolename >> Bei Aktivitäten name= $rolename obligatorisch, ansonsten optional Einschränkung: max. eine Annotation pro BPMN-Element Kap. 7, Teil 2-20

Beispiel Role Assigment für Lanes Autorisierung der Rolleninhaber Coordinator für alle Aktivitäten von Lane Coordinator (analog Lane Learner) Kap. 7, Teil 2-21

Beispiel Role Assignment (Aktivitäten) >> >> Autorisierung von Aktivität Approve User durch Rolleninhaber von Clerk Analog Gruppe von Aktivitäten (GoA) durch Rolleninhaber von Coordinator Kap. 7, Teil 2-22

Assignment Mechanism Assignment Mechanism legt fest, wie Zuordnung von Aufgaben an Rolleninhaber erfolgt Korrespondiert mit Role Assignment Syntax: <<Assignment: type= Mechanism name= $mechanismname >> $mechanismname a priori spezifiziert Beispiel für Mechanismus: falls Rolleninhaber Coordinator verfügbar, der frühere Vermittlungen von Learner bearbeitet hat, dann Zuweisung dieses Coordinators; falls nicht, nächst verfügbaren Coordinator zuweisen Kap. 7, Teil 2-23

Binding of Duty (BoD) Pflichtenbindung für Aufgaben o Durchführung durch gleiche Akteure Für Aktivitäten, GoA, Swimlanes Syntax: <<BoD: spec= weak >> spec optionaler Parameter spec= weak lässt explizite Änderung der Zuweisung zu ( Re-assignment ) Kap. 7, Teil 2-24

Separation of Duty (SoD) Pflichtentrennung o Durchführung der Aufgaben von unterschiedlichen Benutzern o Motivation oft zusätzliche Sicherheit (z.b. 4-Augen- Prinzip) o Für Aktivitäten, GoA, Swimlanes Syntax: << SoD: role= $rolename number = $value threshold = $value >> role, number, threshold optional Ausschluss von Rollen: role= $rolename Kap. 7, Teil 2-25

Beispiel SoD für Lanes SoD mit role= als Ausschluss, d.h. Learner und Coordinator müssen unterschiedliche Personen sein Kap. 7, Teil 2-26

SoD mit Kardinalitäten Zusätzliche Ausdrucksmächtigkeit number = $value : minimale Anzahl unterschiedlicher Benutzer threshold = $value : maximale Anzahl von Aktivitäten (Instanzen), die von einem Benutzer durchgeführt werden dürfen (der gesamten, mit SoD annotierten Aktivitäten) Default-Semantik SoD: (number=2, threshold=1) bei 2 Aktivitäten bzw. bei wiederholender Aktivität Kap. 7, Teil 2-27

Beispiele SoD Min. 2 Benutzer, jeder Benutzer maximal 2 Aufgaben Kap. 7, Teil 2-28

D-Delegation Weitergabe von Zugriffsrechten auf (geschützte) Daten o Prozessinterne Daten ( data objects ) o Externe Daten ( data stores ) Syntax: << D-Delegation: rights= list ($rightsname) object= $objectname interval= ($activityname1,$activityname2) $group owner= $rolename receiver= $rolename $webservicename spec= $specification >> Kap. 7, Teil 2-29

D-Delegation: Parameter rights: read, write, delete, oder policy (deskriptive Beschreibung) object: Datenobjekt, für das Rechte vergeben werden (bzw. View auf Datenobjekt) owner: Rechteinhaber, Betroffene interval: Zeitintervall für Rechtevergabe receiver (Empfänger): rolename or webservicename Spezifikation spec: grant (optional) Kap. 7, Teil 2-30

Beispiel D-Delegation Delegation von Rechten für den Zugriff auf Daten Objekt, für das Rechte vergeben werden Web Service PDS ist Empfänger der Rechte Learner ist nicht Ausführender der Task, aber Rechte- Inhaber! Kap. 7, Teil 2-31

Sicherheits-Facetten in SOA Autorisierung Auditing Integrität Sicherheit Authentifizierung Vertraulichkeit Kap. 7, Teil 2-32

Authentifizierung Identifikation von Beteiligten o Attribut/Werte-Paare o Bestätigung durch Identity-Provider Syntax: << Authn: attributes= [list[(attributename, value) ] idp= $identityprovider >> Anmerkung: Trennung der Listenelemente durch, (siehe folg. Bsp.) Kap. 7, Teil 2-33

Beispiel Authentifizierung Kap. 7, Teil 2-34

Auditing Protokollierung (Logging) des Prozesses bzw. von Teilen des Prozesses Motivation u.a. auch gesetzliche Regelungen Syntax: << Audit: policy= $policyname >> policy spezifiziert, was protokolliert wird (z.b. Zugriff auf personenbezogene Daten gemäß Datenschutzrichtlinien) Kap. 7, Teil 2-35

Beispiele Sicherheits-Annotationen in BPMN - Prozessanfang Authentifizierung Rollenzuweisung Pflichtentrennung Auditing Pflichtenbindung Kap. 7, Teil 2-36

Einbeziehung von Benutzern Zusätzlich zur Sicherheits-Sprache: Einbeziehung von Benutzern (sog. User Involvements ) zur Spezifikation von Privatheits- und Trust -Aspekten o Einwilligung zu Geschäftsbedingungen (z.b. Terms & Conditions) o Datenzugriffs-Regeln (Policy) o Regeln für Auswahl beteiligter Services anhand der Vertrauenswürdigkeit ( Trust ) o Trust-Feedback nach Nutzung von Services o Interaktions-Präferenzen Nicht a priori, sondern dynamisch zur Laufzeit von Workflows o Abhängig von Workflow-Kontext Kap. 7, Teil 2-37

Ansatz zur Einbeziehung von Benutzern Für alle Optionen vormodellierte Teilprozesse Sprache zur Darstellung von Teilprozessen o Parametrisierbar o Prozessmodellierer greift auf vordefinierte Prozesse zurück, kein Bedarf an Umsetzungs-Kenntnissen Dynamische Einbindung der Teilprozesse bei Ausführung eines Workflows (Schema-Erweiterung) Kap. 7, Teil 2-38

Überblick Sprache User Involvements Syntax << UInvolve: type= $UInvolvetype... >> Vordefinierte Werte für UInvolvetype: SetIAPref Consent SelectService SetDataPolicy, SelectDataPolicy SetTrustPolicy, SelectTrustPolicy TrustFeedback Kap. 7, Teil 2-39

Consent (Zustimmungen) Zustimmung der Benutzer zu den Geschäftsbedingungen des Workflows Syntax <<UInvolve: type= Consent target= $targetname of privacy terms role= $rolename insertplace= $activityname display = $option 1,,option n >> target spezifiziert Geschäftsbedingungen display gibt Benutzeroptionen an Optional: role, insertplace Kap. 7, Teil 2-40

Beispiel Consent Kap. 7, Teil 2-41

Select Service Auswahl aus den verfügbaren Web Services Voraussetzung: Spezifikation des Trust Levels Syntax: <<UInvolve: type= $SelectService display= list($option) role= $rolename insertplace= $activityname >> display gibt verfügbare Services an optional: role, insertplace Kap. 7, Teil 2-42

Beispiel Select Service Kap. 7, Teil 2-43

Select Trust Policy Trust Policy spezifiziert die Anforderungen an die Vertrauenswürdigkeit (Trust) eines Web Services o Notwendige Spezifikation bei Service Selection Benutzer wählt z.b. Trust Level für beteiligte Services Syntax: <<UInvolve: type= SelectTrustPolicy display= list($option) role= $rolename insertplace= $activityname >> display gibt Benutzeroptionen an optional: role, insertplace Kap. 7, Teil 2-44

Beispiel Select Trust Policy Kap. 7, Teil 2-45

Transformation der Annotationen Transformation verarbeitet die Annotationen und bereitet die Ausführung für die Engine vor Erweiterung des Workflow-Schemas vor Ausführung Im Folgenden exemplarisch für <<UInvolve: type= SelectTrustPolicy >> Kap. 7, Teil 2-46

Transformation <<UInvolve: type= SelectTrustPolicy role= Learner display= trustall, averagefeedback, mostreputableusers 5mostreputableUsers >> Annotierter Prozess Transformation Modellierung Konfiguration Schema- Erweiterung Prozess- Fragmente Kap. 7, Teil 2-47

Prozessfragment Select Trust Policy Kap. 7, Teil 2-48

Prozess mit Annotationen Kap. 7, Teil 2-49

Workflow mit geschlossenem Sub-Prozess Kap. 7, Teil 2-50

Workflow mit integriertem Prozessfragment Kap. 7, Teil 2-51

Zusammenfassung Modellierung von Workflows wichtiger Schritt zur autom. Koordination von Abläufen Aktuelles Forschungsthema zur Modellierung von Sicherheitsaspekten, Privatheit und Trust am IPD o Sprache Sicherheitsaspekte Einbeziehung von Benutzern zur Spezifikation von Präferenzen Vorwiegend für das Verwalten von Daten Kap. 7, Teil 2-52

Übung Hausaufgabe Aufgabenstellung siehe Übungsblatt (Website Lehrveranstaltungen IPD) Freiwillige, sofern gewünscht anonymisierte Teilnahme Bearbeitungszeit bis 21. Dez. 2011 Schriftliche Abgabe, danach Feedback Incentives abhängig von Leistung Kap. 7, Teil 2-53

Exemplarische Fragen Kap. 7- Teil 2 Klassifizieren Sie Sicherheit. Beschreiben Sie kurz die Idee, Sicherheit in WfMS umzusetzen. Geben Sie Beispiele für konkrete Annotationen an (z.b. Authorisierung, Authentisierung, Einbeziehung von Benutzern) Kap. 7, Teil 2-54

Ergänzende Literatur Kap. 7 - Teil 2 Sicherheit in Workflows Mülle, Jutta, von, Silvia, Böhm, Klemens: A Security Language for BPMN Process Models. Tech. Rep. 2011-09, Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany, http://www.ubka.unikarlsruhe.de/eva/index.html (alte Syntax) Mülle, Jutta, von, Silvia, Böhm, Klemens: Modelling and Transforming Security Constraints in Privacy-Aware Business Processes, to appear in: SOCA, Dec. 2011 (modifizierte Syntax) Kap. 7, Teil 2-55