Integration in die Applikationen 2015-09-23 by Kathleen Neumann Dieser Abschnitt beschreibt, wie für die Präsentation der Daten die Integration der Zugriffstest erfolgen kann. Table of contents 1 Allgemeines.................................................................................................................. 2 2 Rechte in Skeleton und MIR........................................................................................2 Integration in die Applikationen 1 Allgemeines ... 2 Rechte in Skeleton und MIR Für MyCoRe-Objekte können folgende Rechte spezifiziert werden: • • • • • • • • read -> Nutzer darf dieses Objekt lesen view -> Nutzer darf das Elternobjekt dieses Objektes lesen write -> Nutzer darf dieses Objekt bearbeiten delete -> Nutzer darf Objekt mit dieser ID löschen addurn -> Nutzer hat das Recht eine URN für dieses Objekt zu erzeugen accKeyEnabled -> Zugriffsschlüssel-Strategie wird verwendet readKey -> Leseschlüssel für dieses Objekt ist hinterlegt writeKey -> Schreibschlüssel für dieses Objekt ist hinterlegt Aktuell nur in der MIR-Anwendung verfügbar gibt es ein Stylesheet (mir-rights.xsl), das diese Informationen sammelt und in XML-Form an die Metadaten anhängt. <mycoreobject xsi:noNamespaceSchemaLocation="datamodel-mods.xsd" ID="mir_mods_00000005" label="mir_mods_00000005" version="2015.03SNAPSHOT"> [...] <rights> <right id="mir_mods_00000005" view="" read=""/> <right id="mir_mods_00000006" read=""/> <right id="Document_derivate_00000008" view="" read=""/> </rights> </mycoreobject> So wird für das Objekt selbst und alle Kind- und Elternobjekte ein Eintrag angefügt, der wenn das jeweilige Recht verfügbar ist, dies als Attribut mit leerem Wert enthält. Dieses XML kann dann in den Stylesheets ausgewertet werden, ohne jedesmal über einen URIAufruf die ACL erneut abzufragen. <xsl:key use="@id" name="rights" match="/mycoreobject/rights/right" /> [...] <xsl:param name="accessedit" select="key('rights', $id)/@write" /> <xsl:param name="accessdelete" select="key('rights', $id)/@delete" /> SyntaxHighlighter.all() Seite 2 von 2
© Copyright 2025 ExpyDoc