Aufgabe A – Multiple Choice (17 Punkte)

(a) Aussagen zu VO, Zertifikaten, Grid, WS, WSRF, etc.

Hinweis: Da hier keine konkreten Aussagen vorgegeben sind, müssen die Studierenden anhand der Konzepte beurteilen, ob Aussagen (z. B. zur Delegation in virtuellen Organisationen, zur Funktionsweise von Grid-Zertifikaten, zur Implementierung von Web Services und WSRF‑Standards) korrekt sind oder nicht.
Lösungshinweis:

  • VOs sind dynamische, oft zeitlich und zweckgebunden gegründete multi-institutionale Organisationen, die in der Regel kein eigenes Ressourcenmanagement betreiben (dies übernehmen die lokalen Provider).
  • Zertifikate in Grids basieren meist auf X.509-Standards, wobei Proxy‑Zertifikate von Endnutzern (bzw. deren Clients via Delegation) und nicht von VOs ausgestellt werden.
  • Grid-Services (WS) und WSRF (Web Services Resource Framework) sind Standardansätze, um Ressourcen als webservice‑basierte Objekte anzubieten.

(Die exakte Bewertung hängt von den konkret vorliegenden Aussagen ab.)


(b) Welchen Hash-Algorithmus verwendet die RA laut angegebenem Zertifikat?

Die zur Auswahl stehenden Optionen sind:

  • sha1WithRSAEncryption
  • Eine der Algorithmen in den Extensions
  • In Zertifikat nicht angegeben

Lösung:
Typischerweise enthalten Grid‑Zertifikate (und damit auch die Zertifikate von Registration Authorities) als Signaturalgorithmus den Wert sha1WithRSAEncryption.
Antwort: sha1WithRSAEncryption


(c) Wechselseitige Authentifizierung

Aufgabe: Erklären Sie anhand eines Sequenzdiagramms, wie die wechselseitige Authentifizierung abläuft.

Musterlösung (Textuelle Beschreibung):

  1. Verbindungsinitiierung:
    – Der Client sendet eine Verbindungsanfrage an den Server.
  2. Server fordert Authentifizierung:
    – Der Server antwortet mit einer Aufforderung zur Authentifizierung, oft verbunden mit der Anforderung, das eigene Zertifikat vorzulegen.
  3. Client sendet sein Zertifikat:
    – Der Client schickt sein X.509‑Zertifikat (ggf. inklusive Proxy‑Zertifikat).
  4. Server prüft Client-Zertifikat:
    – Der Server validiert die Signatur, prüft das Zertifikat (inklusive Vertrauenskette und ggf. VO‑Attribute).
  5. Server sendet sein Zertifikat:
    – Im Rahmen der wechselseitigen Authentifizierung sendet der Server ebenfalls sein Zertifikat an den Client.
  6. Client validiert Server-Zertifikat:
    – Der Client überprüft das Serverzertifikat analog.
  7. Abschluss:
    – Nach erfolgreicher Validierung ist die wechselseitige Authentifizierung abgeschlossen; beide Parteien können nun über einen sicheren Kanal kommunizieren.

Ein entsprechendes Sequenzdiagramm würde diese Austauschfolgen mit Pfeilen (Client → Server: Anfrage, Server → Client: Zertifikat, …) darstellen.


(d) Nennen Sie vier Eigenschaften einer VO

Antwort:

  1. Gründung auf bestimmte Zeit: VOs werden meist für ein befristetes Projekt oder Zweck gegründet.
  2. Gründung zu einem bestimmten Zweck: Die Organisationen kommen zusammen, um ein spezielles Ziel zu erreichen (z. B. eine wissenschaftliche Fragestellung).
  3. Besteht aus dynamischen multi-institutionalen Organisationen: Die VO vereint Partner aus verschiedenen Institutionen, die sich flexibel zusammenschließen.
  4. Betreibt kein Ressourcen-Management: Das Ressourcenmanagement wird von den lokalen Provider‑Instanzen übernommen.

(e) Richtiges ankreuzen!

(i) Wobei handelt es sich um ein Informationsmodell?

  • BDII
  • GLUE
  • R-GMA

Begründung: Die GLUE‑Schema spezifiziert die Struktur und Attribute von Grid‑Ressourcen und stellt damit ein Informationsmodell dar.

(ii) Womit werden Ressourcen spezifiziert?

  • BDII
  • GLUE
  • R-GMA

Begründung: Das GLUE‑Schema dient als Standard zur Beschreibung (Spezifikation) von Ressourcen im Grid.

(iii) Was ist als Informationssystem Bestandteil von UMD?

  • BDII
  • GLUE
  • R-GMA

Begründung: In der Unified Middleware Distribution (UMD) wird häufig der BDII (Berkeley Database Information Index) als Informationssystem eingesetzt, das Ressourcendaten gemäß dem GLUE‑Schema sammelt und bereitstellt.


Aufgabe B – Proxy-Zertifikate

Gegeben:

  • Proxy-Zertifikat (Ausgangszertifikat):
    • Issuer: …/CN=Christian Straube
    • Subject: …/CN=Christian Straube/CN=proxy
  • Abgeleitetes Proxy-Zertifikat:
    • Issuer: …/CN=Christian Straube/CN=proxy
    • Subject: …/CN=Christian Straube/CN=proxy/CN=proxy

Aufgabe: Geben Sie den Common Name (CN) für Issuer und Subject im abgeleiteten Zertifikat an.

Lösung:

  • Issuer: …/CN=Christian Straube/CN=proxy
  • Subject: …/CN=Christian Straube/CN=proxy/CN=proxy

Erläuterung: Beim Ableiten eines neuen Proxy-Zertifikats wird der bisherige Subject zum neuen Issuer, und es wird ein zusätzlicher /CN=proxy-Eintrag an den Subject angehängt.


Aufgabe C – WSDL & Job-Ausführung

Gegeben:

  • Eine WSDL-Datei,
  • Ein Aktivitätsdiagramm zur Job-Ausführung,
  • Nummerierte Funktionsaufrufe (z. B. 1 - submitJob(), x - getResourceList(), y - createJob(), z - transferRequest()).

(a) Tabelle ausfüllen: Nummer der Funktion → WSDL-Datei-Sektionen als Parameter

Musterlösung (Beispielhafte Zuordnung):

FunktionsnummerEntsprechende WSDL-SektionParameter/Message-Typ
1 – submitJob()<wsdl:operation name="SubmitJob">SubmitJobRequest, SubmitJobResponse
x – getResourceList()<wsdl:operation name="GetResourceList">GetResourceListRequest, GetResourceListResponse
y – createJob()<wsdl:operation name="CreateJob">CreateJobRequest, CreateJobResponse
z – transferRequest()<wsdl:operation name="TransferRequest">TransferRequest, TransferResponse

Erläuterung: Die Zuordnung erfolgt anhand der in der WSDL definierten Operationen und den zugehörigen Nachrichten (Input/Output).


Aufgabe D – Implied Resource Pattern

(a) Was wird beim Implied Resource Pattern vom Client beim Ressource-Abruf angesprochen?

  • Ressource
  • Instance Service
  • Ressource Home

Begründung:
Beim Implied Resource Pattern wird der Ressourceneintrag implizit über die Service-Endpunktadresse angesprochen. Das heißt, der Client ruft nicht explizit einen separaten „Resource Home“ oder einen speziellen „Instance Service“ auf – vielmehr ist die Ressource (der Service, der die Ressource repräsentiert) direkt adressierbar.


Aufgabe E – Factory Pattern

(a) Welche Komponente muss erweitert werden, wenn man im Factory-Pattern einen neuen Service hinzufügen möchte, der eine destroy-Operation durchführt?

  • Factory Service
  • Instance Service
  • Ressource

Begründung:
Die destroy‑Operation gehört zur Verwaltung des Lebenszyklus einer Ressource. Wird ein neuer Service mit Destroy-Funktionalität eingeführt, so muss der Instance Service – der für die Verwaltung und Operationen an der einzelnen Ressource zuständig ist – erweitert werden, um diese Operation zu unterstützen.


(b) Factory-Pattern-Modell

Aufgabe: Beschriften Sie das folgende (gedachte) Diagramm.

Beispielhafte Lösung (Diagramm und Beschreibung):

flowchart TD
    A[Client] -->|createResource()| B[Factory Service]
    B -->|instanziiert| C[Instance Service]
    C -->|erstellt| D[Ressource]
    D -->|Rückgabe der Referenz| B
    B -->|liefert Referenz| A
    A -->|destroyResource()| C

Beschriftung der Komponenten:

  • Factory Service: Verantwortlich für die Erzeugung von Ressourceneinheiten (Fabrikmuster).
  • Instance Service: Bietet Operationen (z. B. destroy, getResourceProperties) zur Verwaltung der einzelnen Ressource.
  • Ressource: Die eigentliche Instanz, die den Service repräsentiert.

Pfeile (Aktionen):

  • Client → Factory Service: createResource()
  • Factory Service → Instance Service: instantiateResource()
  • Instance Service → Ressource: create()
  • Instance Service → Factory Service: returnResourceReference()
  • Factory Service → Client: deliverResourceReference()
  • Client → Instance Service: destroyResource()

Aufgabe F – Web Services & WS-Resource

(a) Pseudo-XML-SOAP-Inhalt für einen WS-Ressource-Aufruf

Beispielhafte Lösung (z. B. für einen Destroy-Aufruf):

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:wsr="http://example.org/wsresource">
   <soapenv:Header/>
   <soapenv:Body>
      <wsr:Destroy>
         <wsr:ResourceID>urn:uuid:12345-abcde</wsr:ResourceID>
      </wsr:Destroy>
   </soapenv:Body>
</soapenv:Envelope>

Erläuterung:
Dies ist ein vereinfachtes Beispiel, in dem der Client über SOAP den WS‑Resource-Service aufruft, um eine destroy‑Operation an einer Ressource (identifiziert durch ResourceID) auszuführen.


Aufgabe G – Grid Monitoring Architecture (GMA)

(a) Beschriften Sie das leere GMA-Modell

Musterlösung (Typische GMA-Komponenten):

  • Producer:
    – Publiziert Monitoring-Daten (z. B. Status, Performance-Daten).
  • Aggregator (oder Registry):
    – Sammelt und aggregiert die von den Producers veröffentlichten Daten.
    – Oft auch als Verzeichnisdienst (Directory) für Monitoring-Daten genutzt.
  • Consumer:
    – Abonniert oder fragt die Monitoring-Daten ab, um z. B. den Systemstatus zu überwachen.

Pfeile beschriften:

  • Von Producer zu Aggregator: „publish()“ oder „register data“.
  • Von Aggregator zu Consumer: „query()“ bzw. „notify()“ (bei Abonnements).
  • Eventuell auch direkte Abfragen vom Consumer an den Producer („pull“).

Hinweis: Die genaue Benennung kann je nach spezifischem GMA-Modell variieren.


Aufgabe H – Zertifikate & Grid-Sicherheit

(a) In welchem Verzeichnis werden bei GT die Zertifikate gespeichert?

Antwort:
~/.globus


(b) Was macht der Befehl voms-proxy-init und warum reicht grid-proxy-init nicht aus?

Antwort:

  • voms-proxy-init:
    – Dieser Befehl erstellt für den Benutzer ein Proxy‑Zertifikat, das neben der normalen Authentifizierung auch VO‑Attribute (Virtual Organization‑Informationen) enthält.
  • grid-proxy-init:
    – Er erstellt ein „Plain‑Proxy‑Zertifikat“ ohne VO‑Attribute.
    Begründung:
    In Grid‑Umgebungen sind die VO‑Attribute wichtig, um Zugriffsrechte und Rollen innerhalb der virtuellen Organisation zu definieren. Daher ist voms-proxy-init erforderlich, um alle nötigen Informationen bereitzustellen.

×

MyUniNotes is a free, non-profit project to make education accessible for everyone. If it has helped you, consider giving back! Even a small donation makes a difference.

These are my personal notes. While I strive for accuracy, I’m still a student myself. Thanks for being part of this journey!