Gewusst wie: Gewähren von Berechtigungen für Dokumente und Arbeitsmappen an freigegebenen Speicherorten (2003 System)
Aktualisiert: November 2007
Betrifft |
---|
Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Versionen von Microsoft Office. Projekttyp
Microsoft Office-Version
Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Anwendung und Projekttyp. |
Wenn der Speicherort eines Microsoft Office 2003-Dokuments nicht sicher ist (z. B. eine SharePoint-Site oder eine Dateifreigabe, in die viele, möglicherweise auch bösartige, Benutzer schreiben können) oder Sie nicht genau wissen, wer Inhalte hochladen darf, können Sie die Zugriffsberechtigungen auf Dokumente und Arbeitsmappen an einem bestimmten Speicherort beschränken. Verwenden Sie hierzu die Mitgliedschaftsbedingung für Office-Dokumente, und ändern Sie die Sicherheitsrichtlinien so, dass diese Bedingung auf allen Computern überprüft wird, auf denen Ihre Projektmappe ausgeführt werden soll. Weitere Informationen zum Festlegen der Sicherheitsrichtlinien auf Endbenutzercomputern finden Sie unter Bereitstellen der Sicherheitsrichtlinien.
Bei Verwendung der Mitgliedschaftsbedingung für Office-Dokumente gelten nur Office-Dokumente als vertrauenswürdig. Assemblys und ausführbare Dateien dürfen nicht vom Netzwerkverzeichnis aus ausgeführt werden.
Benutzerdefinierte Codegruppen können Sie mit den Befehlszeilentools von Visual Studio oder dem .NET Framework 2.0-Konfigurationstool erstellen. Beide Verfahren werden im Folgenden erläutert. Das .NET Framework 2.0-Konfigurationstool ist jedoch nicht im Lieferumfang von Visual Studio 2008 enthalten. Sie können das Tool als Teil des SDK für .NET Framework 2.0 vom Microsoft Download Center herunterladen. Ein Beispiel dazu finden Sie unter .NET Framework 2.0 Software Development Kit (SDK) (x86).
Erstellen einer benutzerdefinierten Codegruppe mit den Befehlszeilentools von Visual Studio
So erstellen Sie eine benutzerdefinierte Codegruppe mit Befehlszeilentools
Öffnen Sie die Eingabeaufforderung von Visual Studio. Wenn Visual Studio nicht auf dem Computer installiert ist, öffnen Sie die Eingabeaufforderung von Microsoft Windows, und wechseln Sie zum Microsoft .NET Framework-Verzeichnis der Version, mit der Sie arbeiten. Beispiel:
%systemroot%\Microsoft.NET\Framework\v2.0.50727
Geben Sie die folgenden Befehle ein. Ersetzen Sie dabei die Verzeichnisse, Namen und Beschreibungen aus dem Beispiel durch die Entsprechungen für Ihre Umgebung:
gacutil -i "C:\Program Files\Microsoft Office\Office11\Addins\Msosec.dll" caspol -m -ag LocalIntranet_Zone -url \\ServerName\FolderName\* Nothing -n "My Data Folder" -d "Intermediate group for my documents" caspol -m -ag "My Data Folder" -custom "C:\Program Files\Microsoft Office\Office11\Addins\Msosec.xml" FullTrust -n "My Data Documents" -d "Grants FullTrust to all documents in my data folder"
Tipp: Geben Sie die Befehle manuell ein. Kopieren und Einfügen der Befehle in die Eingabeaufforderung kann zu der Fehlermeldung Unbekannte Option führen.
Erstellen einer benutzerdefinierten Codegruppe mit dem .NET Framework-Konfigurationstool
Bevor Sie das .NET Framework 2.0-Konfigurationstool verwenden können, müssen Sie das .NET Framework 2.0 Software Development Kit (SDK) vom Microsoft Download Center herunterladen und installieren.
Wenn Sie das NET Framework 2.0-Konfigurationstool verwenden, folgen Sie diesen grundlegenden Schritte:
Fügen Sie die Datei Msosec.dll dem globalen Assemblycache (GAC) hinzu. Dabei handelt es sich um die Assembly, die Microsoft.Office.Security.Policy.OfficeDocumentMembershipCondition implementiert, womit Dokumente und Arbeitsmappen identifiziert werden. Msosec.dll befindet sich im Verzeichnis ADDINS im Installationspfad von Office (in der Standardeinstellung ist dies \Programme\Microsoft Office\OFFICE11\ADDINS).
Erstellen Sie eine Codegruppe mit eingeschränkten Berechtigungen für den Server oder den betreffenden Ordner (z. B. Berechtigungen für Nothing oder für LocalIntranet_Zone).
Erstellen Sie eine zweite Codegruppe unterhalb der ersten, die Office-Dokumenten volle Vertrauenswürdigkeit gewährt.
Hinweis: Wenn Sie Msosec in der Richtlinie verwenden, hat dies negative Auswirkungen auf die Leistung für sämtlichen verwalteten Code auf dem Computer. Daher wird empfohlen, Msosec nur den Servern und Computern hinzuzufügen, auf denen diese Funktionalität tatsächlich benötigt wird.
So fügen Sie die Datei "Msosec.dll" dem Assemblycache hinzu
Melden Sie sich als Administrator am Computer an.
Öffnen Sie in der Systemsteuerung das Tool Verwaltung, und führen Sie dann Microsoft .NET Framework 2.0-Konfiguration aus.
Erweitern Sie unter dem Knoten Konsolenstamm den Eintrag .NET Framework 2.0-Konfiguration und anschließend den Eintrag Arbeitsplatz.
Klicken Sie mit der rechten Maustaste auf Assemblycache, und klicken Sie dann auf Hinzufügen.
Navigieren Sie zur Datei Msosec.dll im Office-Installationsordner. Beispiel:
C:\Program Files\Microsoft Office\Office11\Addins\Msosec.dll
Wählen Sie die Datei Msosec.dll aus, und klicken Sie dann auf Öffnen, um die Datei dem Assemblycache hinzuzufügen.
So erstellen Sie eine Codegruppe mit eingeschränkten Berechtigungen für den Server oder Ordner
Erweitern Sie unter dem Knoten Computer den Eintrag Codegruppen und dann den Eintrag All_Code.
Klicken Sie mit der rechten Maustaste auf LocalIntranet_Zone, und klicken Sie dann auf Neu.
Bei diesem Schritt wird davon ausgegangen, dass sich der Server in der lokalen Intranetzone befindet. Wenn er in Internet Explorer der Zone der vertrauenswürdigen Sites hinzugefügt wurde, klicken Sie stattdessen mit der rechten Maustaste auf Trusted_Zone.
Geben Sie der Codegruppe einen Namen. Nennen Sie sie in diesem Beispiel Customer Data Folder.
Diese Codegruppe gewährt keine Zugriffsberechtigungen für den Ordner, sie ist lediglich ein Behälter für die nächste Codegruppe.
Klicken Sie auf Weiter.
Wählen Sie in der Liste Wählen Sie den Bedingungstyp für die Codegruppe aus den Eintrag URL aus.
Geben Sie im Textfeld URL den Pfad des freigegebenen Ordners ein.
Das Sternchen am Ende ist wichtig, denn damit werden die Berechtigungen auf alle Dateien und Unterordner in diesem Ordner bezogen. Beispiel:
\\ServerName\ShareName\*
Klicken Sie auf Weiter.
Wählen Sie in der Liste Vorhandenen Berechtigungssatz verwenden den Eintrag Nothing aus.
Der Standardwert ist FullTrust. Sie müssen stattdessen Nothing auswählen, da Sie sonst für alle Dateien im angegeben Verzeichnis die vollständige Zugriffsberechtigung gewähren würden.
Klicken Sie auf Weiter und anschließend auf Fertig stellen.
So erstellen Sie eine Codegruppe, die Office-Dokumenten volle Vertrauenswürdigkeit gewährt
Klicken Sie mit der rechten Maustaste auf die neue Codegruppe, die in diesem Beispiel den Namen Customer Data Folder trägt, und klicken Sie dann auf Neu.
Geben Sie der Codegruppe einen Namen. Nennen Sie sie in diesem Beispiel Customer Data Documents.
Klicken Sie auf Weiter.
Wählen Sie in der Liste Wählen Sie den Bedingungstyp für die Codegruppe aus den Eintrag (Benutzerdefiniert) aus.
Klicken Sie auf Importieren, und navigieren Sie anschließend zur Datei Msosec.xml im Office-Installationsordner. Beispiel:
C:\Program Files\Microsoft Office\Office11\Addins\Msosec.xml
Wählen Sie die Datei Msosec.xml aus, und klicken Sie dann auf Öffnen, um die benutzerdefinierte XML-Codebedingung zu importieren.
Klicken Sie auf Weiter.
Wählen Sie in der Liste Vorhandenen Berechtigungssatz verwenden den Eintrag FullTrust aus.
Klicken Sie auf Weiter und anschließend auf Fertig stellen.
Weitere Informationen über das Gewähren von Vertrauenswürdigkeit finden Sie unter Konfigurieren der Sicherheitsrichtlinien mit dem .NET Framework Configuration-Tool (Mscorcfg.msc) und unter Konfigurieren der Sicherheitsrichtlinien mit dem Sicherheitsrichtlinientool für den Codezugriff (Caspol.exe).
Siehe auch
Aufgaben
Gewusst wie: Hinzufügen einer Assembly zur Liste der Richtlinienassemblys
Gewusst wie: Hinzufügen von Assemblys zu Sicherheitsrichtlinien mit "Caspol.exe"
Konzepte
Sichere Bereitstellung (2003 System)
Sicherheitsanforderungen für die Ausführung von Office-Projektmappen (2003 System)
Empfohlene Vorgehensweisen für die Sicherheit in Office-Projektmappen (2003 System)