Benutzer mit den meisten Antworten
Einbinden versteckter SharePoint Listen in Microsoft Access

Frage
-
Hallo zusammen,
ich habe eine SharePoint Applikation mit vielen Listen, die nur Metadaten beinhalten. Diese sind für den normalen Endanwender nicht relevant. Damit diese Listen bei den Benachrichtigungen nicht zur Auswahl erscheinen, habe ich diese übers Objektmodell auf hidden gesetzt. Die Endbenutzer brauchen aber Leseberechtigungen, da die Daten über Lookups verfügbar sind.
Der fachliche Betreuer des Systems macht Auswertungen aus Microsoft Access über diese Listen. Seit dem ich die Listen auf hidden gesetzt habe, werden sie ihm auch nicht mehr in Access angezeigt. Dieses Verhalten ist nicht überraschend, interessant ist aber, kann man dennoch hidden Lists in Microsoft mit einem Workaround einbinden?
Vielen Dank schon mal für jeden nützlichen Tipp!
Antworten
-
Hallo zusammen,
unsere Lösung verwendet ein InfoPath Formular, dass sich vordefinierte Daten aus SharePoint Listen holt. D.h. ein Otto Normal Verbraucher braucht unbedingt Leserechte auf diese Listen, d.h. wenn sie nicht Hidden sind kann er sie auch sehen. Wenn sie Hidden sind, dann kann er sie immer noch aufrufen, wenn er die URL kennt. Da es aber per Permission Level dem Anwender nicht erlaubt ist die Listen zu editieren ist es OK. Ob er die Daten im Formular sieht, oder in einer SharePoint Liste ist egal.
Jetzt kommen wir mal wieder zu einem SharePoint "Feature". Wenn ich einem Permission Level die Berechtigungen entziehe auf Listen persönliche Benachrichtigungen zu setzen, werden mir die Listen trotzdem in den Benachrichtigungseinstellungen angezeigt. Nachdem man auf speichern klickt bekommt man erst ein "Access Denied".
Da wir relativ viele Listen mit solchen Metadaten haben und diese in den Benachrichtigungseinstellungen nur verwirren, haben wir sie auf hidden gesetzt. Damit haben wir diesen schönen, auch durch Alex beschriebenen, kosmetischen Effekt und gleichzeitig die gewünschten Permissions. :)
Bis hierher so toll. Jetzt haben wir nicht nur Otto Normal Verbraucher, sondern auch unsere Power User, die die angegebenen Meta Daten in Verbindungen mit Formularen analysieren. In diesem konkreten Fall zieht sich der Power User alle Listen und die Formularbibliothek in Access rein und macht irgendwelch mir nicht verständlichen (also fachlich, nicht technisch) Joins über die Metadaten um daraus seine Analysen abzuleiten. Das hat er letztens versucht und kann natürlich nicht mehr seine Listen hinzufügen, weil sie hidden sind.
Jetzt haben wir zwei mögliche Lösungen gefunden:
- Wir haben das hidden Flag für einige Minuten per Powershell raus genommen, den Power User geben ein Access Dokuement mit allen Verbindungen zu erstellen und als Vorlage zu speichern. Dann haben per Powershell die Listen wieder hidden gesetzt und siehe da, Access findet bestehende Verbindungen trotzdem. Unser Power User war glücklich, unser Otto Normal Verbraucher bekommt die schönere Sicht. Hierbei sollte noch beachten werden, dass Listen aus der Navigation verschwinden, wenn man sie hidden setzt. Wenn noch Links auf einzelne Listen aus welchen Gründen auch immer vorhanden sein sollen, dann muss man sie über die Websiteeinstellungen wieder händisch nachziehen.
- Man legt eine ODBC Verbindung an (Google oder Bing fragen, wie ein Connection String für eine SharePoint Liste aussieht) und kann dann die Liste in Access, aber auch in anderen Tools nutzen. Da unsere Standardclient den Anwendern nicht erlauben eigene ODBC Verbindungen zu pflegen, haben wir uns gegen diese Möglichkeit entschieden.
Viele Grüße
Simon
- Als Antwort markiert SimonIw Freitag, 22. März 2013 16:04
-
Hallo Simon,
Dieses Verhalten ist nicht überraschend, interessant ist aber, kann man dennoch hidden Lists in Microsoft mit einem Workaround einbinden?
nicht das ich wüsste. Evtl. hat jemand anders hier eine Idee dazu.
Ein Workaround wäre eine benutzerdefinierte Berechtigungsstufe zu erstellen, welche Lesenden Zugriff erlaubt aber keine Benachrichtigungen erstellen und anschließend den Benutzern Zugriff auf den Listen mit dieser Berechtigungsstufe erteilen. Damit kommen die Leute drauf, dürfen aber keine Benachrichtigungen einrichten.
VG,
Andrei- Als Antwort vorgeschlagen Alex Pitulice Donnerstag, 21. März 2013 16:14
- Als Antwort markiert Alex Pitulice Freitag, 22. März 2013 08:09
Alle Antworten
-
Hallo Simon,
Dieses Verhalten ist nicht überraschend, interessant ist aber, kann man dennoch hidden Lists in Microsoft mit einem Workaround einbinden?
nicht das ich wüsste. Evtl. hat jemand anders hier eine Idee dazu.
Ein Workaround wäre eine benutzerdefinierte Berechtigungsstufe zu erstellen, welche Lesenden Zugriff erlaubt aber keine Benachrichtigungen erstellen und anschließend den Benutzern Zugriff auf den Listen mit dieser Berechtigungsstufe erteilen. Damit kommen die Leute drauf, dürfen aber keine Benachrichtigungen einrichten.
VG,
Andrei- Als Antwort vorgeschlagen Alex Pitulice Donnerstag, 21. März 2013 16:14
- Als Antwort markiert Alex Pitulice Freitag, 22. März 2013 08:09
-
Hallo,
ergänzend zu was Andrei gesagt hat:
How to restrict visibility of SharePoint 2010 lists and libraries
It’s important to understand that this will not make the list inaccessible to users, permission management will need to be applied on the library to actually prevent users from accessing the library. This functionality is for purely cosmetic purposes to reduce clutter on your site. Once hidden, the list will not be visible to many other office applications…
Gruss,Alex
Alex Pitulice, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können. -
Hallo zusammen,
unsere Lösung verwendet ein InfoPath Formular, dass sich vordefinierte Daten aus SharePoint Listen holt. D.h. ein Otto Normal Verbraucher braucht unbedingt Leserechte auf diese Listen, d.h. wenn sie nicht Hidden sind kann er sie auch sehen. Wenn sie Hidden sind, dann kann er sie immer noch aufrufen, wenn er die URL kennt. Da es aber per Permission Level dem Anwender nicht erlaubt ist die Listen zu editieren ist es OK. Ob er die Daten im Formular sieht, oder in einer SharePoint Liste ist egal.
Jetzt kommen wir mal wieder zu einem SharePoint "Feature". Wenn ich einem Permission Level die Berechtigungen entziehe auf Listen persönliche Benachrichtigungen zu setzen, werden mir die Listen trotzdem in den Benachrichtigungseinstellungen angezeigt. Nachdem man auf speichern klickt bekommt man erst ein "Access Denied".
Da wir relativ viele Listen mit solchen Metadaten haben und diese in den Benachrichtigungseinstellungen nur verwirren, haben wir sie auf hidden gesetzt. Damit haben wir diesen schönen, auch durch Alex beschriebenen, kosmetischen Effekt und gleichzeitig die gewünschten Permissions. :)
Bis hierher so toll. Jetzt haben wir nicht nur Otto Normal Verbraucher, sondern auch unsere Power User, die die angegebenen Meta Daten in Verbindungen mit Formularen analysieren. In diesem konkreten Fall zieht sich der Power User alle Listen und die Formularbibliothek in Access rein und macht irgendwelch mir nicht verständlichen (also fachlich, nicht technisch) Joins über die Metadaten um daraus seine Analysen abzuleiten. Das hat er letztens versucht und kann natürlich nicht mehr seine Listen hinzufügen, weil sie hidden sind.
Jetzt haben wir zwei mögliche Lösungen gefunden:
- Wir haben das hidden Flag für einige Minuten per Powershell raus genommen, den Power User geben ein Access Dokuement mit allen Verbindungen zu erstellen und als Vorlage zu speichern. Dann haben per Powershell die Listen wieder hidden gesetzt und siehe da, Access findet bestehende Verbindungen trotzdem. Unser Power User war glücklich, unser Otto Normal Verbraucher bekommt die schönere Sicht. Hierbei sollte noch beachten werden, dass Listen aus der Navigation verschwinden, wenn man sie hidden setzt. Wenn noch Links auf einzelne Listen aus welchen Gründen auch immer vorhanden sein sollen, dann muss man sie über die Websiteeinstellungen wieder händisch nachziehen.
- Man legt eine ODBC Verbindung an (Google oder Bing fragen, wie ein Connection String für eine SharePoint Liste aussieht) und kann dann die Liste in Access, aber auch in anderen Tools nutzen. Da unsere Standardclient den Anwendern nicht erlauben eigene ODBC Verbindungen zu pflegen, haben wir uns gegen diese Möglichkeit entschieden.
Viele Grüße
Simon
- Als Antwort markiert SimonIw Freitag, 22. März 2013 16:04
-
Hallo Simon,
Danke Dir sehr für die Rückmeldung!
Gruss,
Alex
Alex Pitulice, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.