Zum Hauptinhalt wechseln
VHelms

Isrichtig.de

Startet die Suche
Homepage
Kontakt
Impressum
  

RSS-Feed
Blog von Volker Helms
SharePoint: E-Mail an DocLib funktioniert nicht.
Hallo,
 
heute hatte ich das Problem das plötzlich Mails an verschiedene DocLibs nicht mehr ankamen. Andere DocLibs funktionierten Problemlos. Nach kurzer Suche konnte ich feststellen, dass DocLibs die mit "Accept e-mail messages based on document library permissions" konfiguriert waren keine Mails mehr empfangen konnten.
 
Bei genauerer Untersuchung konnte ich herausfinden das SharePoint zur Überprüfung der SendIn Permission den X-Sender einer Mail nutzt. Warum dies so ist und warum nicht z.B. der From Wert genutzt wird weiß ich nicht.
Nun können in dem X-Sender Feld aber noch zusätzliche Informationen abgelegt werden.
Unter anderem gibt es verschiedene Mailgateways die dort zusätzliche Werte angeben. Zum Beispiel kann dort Bounce Address Tag Validation angegeben werden. Dies wird genutzt um überflüssige NDRs zu eliminieren (ob das allerdings so sinnvoll ist sei mal dahingestellt).
Ein solches Tag sieht Beispielsweise so aus: "x-sender: prvs=1755da8e48=Volker.Helms@testmail.com"
Das BATV Tag ist dann "prvs=1755da8e48=".
SharePoint kommt aber bei der Auflösung des Absenders durch dieses Tag durcheinander und sieht die Mail als nicht berechtigt an. Das heißt SharePoint verwirft die Mail (und informiert keinen Absender - Im Eventlog steht eine Access Denied Meldung).
Nachdem wir dieses Tagging wieder aus den Mails entfernt hatten funktionierte auch der Empfang wieder.
 
Gruß,
Volker
Kurznotiz: HTTPHandler C# Download großer Files
Hallo,
um mit einem HTTPHandler große Files von einem Server zu laden hat Microsoft vor langer Zeit einmal einen KB Artikel veröffentlicht.
 
Hier gehts zum Artikel.
Einen Beispielhändler habe ich mit angehängt.
 
Gruß,
Volker
HttpDownload.txt
Anleitung um SSTP mit 1 Netzwerkkarte zu betreiben
Hallo,
 
falls jemand SSTP auf einem Windows 2008 Server betreiben möchte und dort keine 2 NICs besitzt hat Greg Suvalian eine Lösung. Er beschreibt die notwendigen Schritte um eine SSTP VPN Einwahl auch mit einem Server mit nur einer NIC zu betreiben.
 
Folgende Schritte sind notwendig (Kurzform entspricht der Anleitung von Greg in weiten Zügen):
 
Unterschiede zu anderen Anleitungen:
Es wird keine Domain Controller benötigt
Es wird nur eine Netzwerkkarte benötigt
SSL CRL muss nicht veröffentlicht werden (Certificate Revocation List)

Benötigt wird:
Server SSL certificate (self-signed)
Windows 2008 Server (single NIC)
Vista SP1 or later

Einrichtung:
1. Zuerst muss ein self-signed certificate erstellt und im Certificate Store des Clients und des Servers installiert werden. Wichtig! Das Zertifikat muss beim Client sowohl im Trusted Root Certificate Store des Users als auch im Store der Computerkontos eingetragen werden. Natürlich kann auch ein Zertifikat einer internen CA genutzt werden.
2. Zertifikat mit folgenden Schritten auf Client installieren: MMC starten und im Menü Add Snap-in auswählen, "Certificates" auswählen, im nächsten Screen "Local Computer" und dann "Trusted Root Certification Authorities" auswählen. Zertifikat in diesen Store importieren. Das gleiche für "My Account" durchführen.
3. Zertifikat auf dem Server installieren. Dazu die gleichen Schritte durchgehen. Hier wird das Zertifikat allerdings nur im "Local Computer" Store benötigt.
4. Rolle RRAS dem Windows 2008 Server hinzufügen (über Server Manager). Wir benötigen nur "Remote Access Service" nicht Routing.
5. RRAS MMC starten und "Configure Routing and Remote Access server" aufrufen (rechter Mausklick auf RRAS).
6. Wichtig. Im Assistenten bitte "Custom Configuration" und "VPN access" auswählen.
7. Entweder dem Anwender über sein Computerkonto oder über die Netzwerkpolicy Einwahlberechtigungen erteilen.
8. Der Internetrouter benötigt ein Port Forward auf TCP 443. Falls ein IIS zusätzlich installiert ist - dies ist kein Problem.
9. Client konfigurieren: Network And Sharing Center/Setup Connection aufrufen, Connect to a Network, Setup a connection... aufrufen. Dann folgendes konfigurieren: Connect to a workplace, Use Internet Connection, Hostname und Name eintragen. Zum Schluss "Skip" auswählen um die Verbindung zu speichern (sonst wird diese nach einem Fehler nicht gespeichert). Anschließend die Properties der Einwählverbindung aufrufen und unter Connection/Networking VPN Typ SSTP auswählen. IPV6 kann (sollte) deaktiviert werden.
10. Fertig
 
Gruß,
Volker
SharePoint: SiteCollection über SiteCollection ID finden
Hallo,
 
häufig gibt SharePoint Meldungen mit der SiteCollection ID heraus. Leider weiß man dann nicht welche SC es eigentlich ist. Nun könnte man natürlich alle Site Collections durchschauen - es gibt aber auch eine andere Lösung. Dazu ruft man einfach die URL zur Pflege der Site Collection Administrators in der Central Administration auf. Nachdem man einmal die Site Collection im Menü gewechselt hat sieht man folgende URL im Browser:
 
 
Nun kann man einfach die Site Collection ID, nach der gesucht werden soll, ausgetauscht werden und schwubs wird die entsprechende Site Collection angezeigt.
 
Gruß, Volker
Windows 7: Probleme mit Sharepoint Explorer View/ Office Dokumenten
Unter Windows 7 oder Vista gibt es häufig Probleme mit der Explorer View oder mit dem Zugriff von Officedokumenten. Das Problem äußert sich dann so, dass das Internet Explorer Fenster einfriert oder wiederholt Anmeldefenster angezeigt werden.
 
Das Problem liegt daran wie Windows die Seite interpretiert. Ist in der URL kein Punkt (.) wird die Seite als LocalSite interpretiert. Ist ein Punkt in der URL ist die Seite nicht Lokal. Häufig kann das Problem behoben werden in dem die Seite in die Lokale Intranetzone des Internet Explorers explizit eingetragen wird. Alternativ habe ich gerade einen weiteren Tipp von Boris Gomiunik gefunden.
Er schlägt folgenden Workaround vor:
  • Open Regedit
  • Locate the following key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
  • Create a new Multi-String Key (Menu Edit –> New –> Multi-String Value)
  • Give the Key the name "AuthForwardServerList"
  • After the key has been created, modify its value (Right click it and select Modify)
  • Enter full URLs of your SharePoint sites (one per line).
  • Save and exit registry editor
  • If you use Windows Vista you need a special Hotfix - you don't in Windows 7
  • Restart the Service WebClient Service in Windows Services.
Anonymer User hat keinen Zugriff auf Seiten im Layouts Ordner
Ein anonymer User hat auf einer SharePoint Seite keinen Zugriff auf Seiten im Layouts Ordner (also auf Seiten die direkt auf der Festplatte liegen). Dies ist ja erst einmal richtig da ein User ja nicht alle Seiten aufrufen können soll. Nun kann es aber passieren, dass z.B. ein User in einer SharePoint Webseite Zugriff auf eine DocLib hat, aber keinen Zugriff auf die komplette Webseite. Nun wäre es ja denkbar das ein solcher Anwender auch bestimmte Seiten aus dem Layoutsordner aufrufen können soll.
 
Dazu bietet SharePoint tatsächlich eine Lösung:
Leitet die Webseite im Layoutsordner von "Microsoft.SharePoint.WebControls.LayoutsPageBase" ab kann ein anonymer User nicht auf die Seite zugreifen.
Leitet die Webseite im Layoutsorder aber von "Microsoft.SharePoint.WebControls.UnsecuredLayoutsPageBase" ab können die anonymen User die Seite aufrufen.
 
Weitere Sicherheit kann natürlich im Code implementiert werden.
User bekommt Access Denied beim Dokument umbenennen
Dank René konnte ich heute relativ schnell herausbekommen warum ein Anwender in einer Sharepoint Dokumentbibliothek den Namen (Filename) eines Dokuments nicht ändern konnte. Der Anwender hatte Edit und sogar Approve Rechte. Das sollte ja normalerweise ausreichen. Reicht aber nicht! Ein Rename des Dokuments entspricht Sharepoint intern einem Movebefehl und zu einem Movebefehl gehört auch immer ein delete. Ein Benutzer benötigt also neben dem Editrecht auch das Deleterecht.
 
Wichtig zu wissen ;-)
SPGridView zeigt paging nicht an

Gestern hatte ich das Problem, dass ich in einem SPGridView das Paging angeschaltet hatte - die Pagingcontrols aber nicht angezeigt wurden.
Angeschaltet habe ich das Paging mit:

SPGridView oGrid = new SPGridView();
oGrid.AllowPaging = true;
oGrid.PageSize = 3;

Sollte also soweit funktionieren - tut es aber nicht. Nachdem ich ein wenig gesucht habe, habe ich hier einen Forumseintrag gefunden der des Rätsels Lösung brachte.

Warum auch immer muss nach aktivieren des Pagings und vor dem hinzufügen des Controls zur Collection das Pagingtemplate auf NULL gesetzt werden:

oGrid.PagerTemplate = null;

Anschließend funktioniert das Paging total prima.

SharePoint: Choicefield (multiple selection) über "Edit in Datasheet" hinzufügen
Hallo,
 
ich habe heute versucht in einer Liste Einträge über "Edit in Datasheet" hinzuzufügen. In der Liste gab es sowhl ein Feld für Yes/No als auch ein Choicefield mit einer Multiauswahl. Um die Elemente (aus einer Exceltabelle) hinzuzufügen sind spezielle Formatierungen notwendig. Direkt aus Excel hat es bei mir gar nicht geklappt. Über den Umweg Notepad hat es dann aber funktioniert. Die Formatierungen müssen wie folgt aussehen:
 
Choicefield:
;#Monday;#Tuesday;#Wednesday;#Thursday;#Friday;# Hier ist wichtig das die Auswahl mit ";#" beginnt, getrennt und auch beendet wird. Hier mein Beispiel für die Auswahl der Wochentage.
Yes/No Field:
No = 0, Yes = 1. Interessanterweise muss bei einer Bearbeitung in Access No = false und Yes = true sein. Warum weiß ich aber auch nicht.
 
Gruß, Volker
C#: Convert string zu Guid mit Überprüfung

ich habe heute nach einer Möglichkeit gesucht einen String in eine Guid zu konvertieren. Dazu möchte ich eine Überprüfung haben ob die Konvertierung erfolgreich war. Dazu habe ich ein Codesnippet gefunden was ich euch nicht vorenthalten möchte:

Gefunden habe ich den Code hier: How to validate a valid GUID Value in C#

private static readonly Regex IsGuidRegEx = new Regex(@"^(\{){0,1}[0-9
a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]
{12}(\}){0,1}$"
, RegexOptions.Compiled);
 
private static bool IsGuid(string candidate, out Guid output)
{
    bool isValid = false;
    output = Guid.Empty;
    if (candidate != null)
    {
        if (IsGuidRegEx.IsMatch(candidate))
        {
            output = new Guid(candidate);
            isValid = true;
        }
    }
    return isValid;
}

Gruß,
Volker

1 - 10 Weiter

 Archiv

SharePoint: E-Mail an DocLib funktioniert nicht.
Kurznotiz: HTTPHandler C# Download großer Files
Anleitung um SSTP mit 1 Netzwerkkarte zu betreiben
SharePoint: SiteCollection über SiteCollection ID finden
Windows 7: Probleme mit Sharepoint Explorer View/ Office Dokumenten
Anonymer User hat keinen Zugriff auf Seiten im Layouts Ordner
User bekommt Access Denied beim Dokument umbenennen
SPGridView zeigt paging nicht an

 Downloads

AddSlash2PortalUrl.zipAddSlash2PortalUrl
DispFormSearch.rarDispFormSearch
Exchange2007-Cmdlets.xlsxExchange2007-Cmdlets
HttpDownload.txtHttpDownload
PDF-IFilterAddons.rarPDF-IFilterAddons
1 - 5 Weiter

 ‭(Ausgeblendet)‬ Administratorhyperlinks