Archive for the 'SharePoint' Category

SharePoint 2010 Diagnostics Log Files werden nicht komprimiert

Ich hatte vor einiger Zeit bei einem Kunden das Problem, dass die Diagnostic Logs von Microsoft SharePoint 2010 nicht automatisch komprimieren ließen. SharePoint kümmert sich ja selber um die Verwaltung des Speicherplatzes. Eines der neuen Features ist, dass auf die Files in dem LOGS Ordner automatisch die NTFS Kompression aktiviert wird.

Der Kunde betreibt mehrere Farmen (Production, Staging, Testing und Dev), um den ganzen Lifecyle des Deployments korrekt abzudecken. Bis auf die Produktion laufen alle Farmen als Guest in geshared virtuellen Umgebungen. Die Produktion hat eigene Virtualisierungshosts und wurde extra für SharePoint neu aufgebaut. Ich konfiguriere (abweichend vom Standard) das Verzeichnis der LOGS nicht in den 14er Hive sondern auf “D:\SP2010-DiagLogs”. Auf einigen der Maschinen im Staging ist mir dann aufgefallen, dass der Ordner für das SharePoint Diagnostics Logging keine NTFS Kompression verwendet. Im ersten Moment dachte ich, dass hier hat einer der Kollegen was “konfiguriert” und ich wollte es manuell gerade ziehen. Ich stellte allerdings fest, dass die Option für die Kompression des Dateisystems nicht existiert.

Eine kurze Recherche brachte zum Thema SharePoint Diagnostic Logs wenig, um nicht zu sagen gar nichts. Die Suche wurde nun erweitert auf OS-Ebene, da die Funktion der ”File Compression” nicht durch SharePoint bereitgestellt wird. Es stellte sich dann langsam heraus, dass die Funktion nur für Platten bereitsteht, die mit einer Cluster-Größe von 4kb formatiert wurden. Hier ein Auszug von Microsoft Support:

The minimum default cluster size for NTFS under Windows NT 4.0 and later is 4 kilobytes (KB) because NTFS file compression is not possible on drives with a larger cluster size.
http://support.microsoft.com/kb/140365/en-us

Und es war tatsächlich so, dass in einigen der D: Drives der Guest im Development eine “falsche” Cluster-Size hatten.

Ciao Marco

Sign In As A Different User – Benutzer wechseln für IIS basierte Sites

Meine Kollege Karten Kleinschmidt und ich haben beim Kunden ein interessante kleine Aufgabe bekommen, in der es darum ging, den verwendeten Benutzer (Domainen Benutzer) an einer bestehenden Webseite zu wechseln.

In einem Unternehmensnetzwerk mit integrierter Anmeldung an der Domain muss der User im Normalfall keine weiteren Anmeldeinformationen eingeben, um auf Websites zuzugreifen. Anwendungen wie SharePoint, CRM und viele Eigenentwicklungen nutzen diese Funktion natürlich für Authentifizierung und Autorisierung aus. Es kommt aber immer mal wieder vor, dass der aktuelle Benutzer nicht der “richtige” Benutzer für die aktuelle Aufgabe ist. In vielen Unternehmen haben Benutzer neben dem eigenen Account einen administrativen Benutzer (gk\ms und gk\adm_ms). Ist man am PC mit dem normalen Account angemeldet und möchte nun den administrativen Account verwenden, dann muss man den ganzen Brower mit anderen Credentials starten, sich am PC ummelden oder per Terminal Services auf einem anderen Rechner anmelden. Anwendungen wie SharePoint bieten solche Funktionen Out-Of-The-Box bereits an. Für Anwendungen, welche das nicht können, ist es für den normalen Mitarbeiter im Unternehmen kein leichtes Unterfangen, diese Aufgabe zu lösen.

Karsten (und damit irgendwann auch ich) hat nun die Aufgabe, für eine Website im Lync Umfeld so eine Funktion anzubieten. Eine kurze Recherche (Bing | Google) hat gezeigt, dass Roel van Lisdonk in seinem Blogpost ASP .NET – C# – How to “Sign in as Different User” like in Microsoft SharePoint with Windows Authentication genau das beschreibt. Seine Lösung ist allerdings Page-basierend und ich wollte was allgemeineres. Ich habe dann einfach seine Code als Basis genommen, ein HTTPModule erstellt und das Ergebnis dann auf Codeplex veröffentlicht. Da nicht so viel Eigenleistung drin steckt, war es schnell klar, dass es nur “fair” ist es weiter zu teilen. Hier ist also das erste Glück & Kanja Codeplex Projekt.

http://signinas.codeplex.com – Glück & Kanja Consulting AG – Sign In As A Different User

Das Projekt steckt sicher noch in den Kinderschuhen und kann deutlich erweitert werden, aber dafür gibt es ja Codeplex :-)

Ich hatte übrigens viel “Spaß” mit Codeplex, aber das ist ne andere Geschichte und die Schuld von TFS ;-)

SharePoint Blob Cache Corrupt

In einer der SharePoint 2007 Farmen, die ich betreue, nutzen wir die Blobcache Funktion, um Video’s, Flash und Bilder zu cachen. Wir haben zwei Web Front End Server (WFE) und die Funktion leistet eigentlich gute Dienste. Es kommt allerdings immer mal wieder vor, dass Bilder (das Verhältnis ist viel höher zum restlichen Content im Cache) nicht mehr angezeigt werden und es ein ASP.NET Error gibt. Genau es gibt folgendes Fehler:

Server Error in '/' Application.
-------------------------------------------------------------------------------- 

Cannot complete this action. 

Please try again.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Runtime.InteropServices.COMException: Cannot complete this action. 

Please try again. 

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  

Stack Trace: 

[COMException (0x80004005): Cannot complete this action. 

Please try again.]
   Microsoft.SharePoint.Library.SPRequestInternalClass.GetAclForScope(String bstrWebUrl, Guid guidScopeId, Object& pvarAcl, UInt64& lAnonymousMask) +0
   Microsoft.SharePoint.Library.SPRequest.GetAclForScope(String bstrWebUrl, Guid guidScopeId, Object& pvarAcl, UInt64& lAnonymousMask) +238 

[SPException: Cannot complete this action. 

Please try again.]
   Microsoft.SharePoint.Library.SPRequest.GetAclForScope(String bstrWebUrl, Guid guidScopeId, Object& pvarAcl, UInt64& lAnonymousMask) +349
   Microsoft.SharePoint.SPReusableAcl..ctor(SPRequest request, String webUrl, Guid scopeId) +149
   Microsoft.SharePoint.SPSite.GetReusableAclForScope(Guid scopeId) +133
   Microsoft.SharePoint.Publishing.<>c__DisplayClass3.<EnsureAuthenticatedRights>b__0() +1296
   Microsoft.SharePoint.SPSecurity.CodeToRunElevatedWrapper(Object state) +73
   Microsoft.SharePoint.<>c__DisplayClass4.<RunWithElevatedPrivileges>b__2() +592
   Microsoft.SharePoint.Utilities.SecurityContext.RunAsProcess(CodeToRunElevated secureCode) +319
   Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(WaitCallback secureCode, Object param) +571
   Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(CodeToRunElevated secureCode) +135
   Microsoft.SharePoint.Publishing.BlobCache.EnsureAuthenticatedRights(Guid siteID, Guid scopeID) +1020
   Microsoft.SharePoint.Publishing.BlobCache.RewriteUrl(Object sender, EventArgs e) +2949
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +80
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +171 

--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:2.0.50727.3603; ASP.NET Version:2.0.50727.3082

image

Die Lösung in diesem Fall ist das Resetten des Caches für diese SiteColletion. Über die SiteSettings kommt man zu den “Object Cache Settings” und hier kann man die drei Checkboxen zum Zurücksetzen des Caches setzen:

image

Ich hoffe es hilft dem einen oder anderen, der noch in Sharepoint 2007 feststeckt ;-)

Ciao Marco

Windows Server 2008 R2, Sharepoint 2007 und WebDav Probleme

webdavproblemDie letzten SharePoint 2007 Installationen werden immer häufiger auf Windows Server 2008 R2 (W2K8R2) ausgeführt. Der Unterschied (für SharePoint relevant) zum “alten” Windows Server 2008 (W2K8) liegt zum Beispiel in einigen IIS7 Änderungen. Eine dieser Änderungen hat mich in einer der letzten Installationen “eingeholt”. Wie ich SharePoint installiere, habe ich bereits dokumentiert. Bei der Auswahl der Internet Information Server 7 (IIS7) Konfiguration sind nun die ersten Out-Of-Band Komponenten direkt anwählbar. Hier habe ich, ohne mir weiter Gedanken zu machen, auch WebDav ausgewählt, da nun die downloadbare Variante von W2K8 direkt integriert ist.

Nach einer Woche hatte ich dann die Kundenanfrage auf dem Tisch: WebDav geht nicht unter Vista und höher. Beim Klick auf “Open in Windows Explorer” dauert es einen kleinen Moment und es passiert… garnichts. Unter XP bekommt man in der Regel zwei Authentifizierungsanfragen bevor der Share sich dann doch öffnet. Der Server an sich ist aktuell nur unter HTTP und nicht unter HTTPS unterwegs. Wichtig bei XP Clients, da es hier noch die FrontPage Extensions genutzt werden können, weshalb auch der Zugriff unter XP klappte.

Erstes Troubleshooting habe ich mit folgenden Guide von MS gemacht:
Whitepaper – Understanding and Troubleshooting the SharePoint Explorer View

Leider ohne Erfolg. Im HTTP Log des IIS fangen wir dann folgende Meldung: “405 Method not allowed”. Kurz mit Bing gegoogled und kein Treffer gefunden (googlen mit Google brachte ebenfalls kein Ergebnis). Irgendwann hatte ich zusammen mit dem Kunden die Idee, dass wir mal die IIS Features checken und einfach mal die WebDav Funktion wieder abwählten. Es brachte den nötigen Erfolg. Bleibt also anzumerken:

Die Option WebDav unter Windows Server 2008 (auch R2) kann SharePoint ins Stolpern bringen, da SharePoint eine eigene Implementierung hat, was oft übersehen wird.

Ciao Marco

Office und SharePoint 2010 Beta für MSDN Subscriber verfügbar

officebetaTwitter ist schon cool… Ich dachte ich checke mal, ob sich in der Beta Welt von Office was tut und siehe da… alles voll. In der MSDN war zuerst nur über den RSS Feed was zu sehen… und seit 5 Minuten kann ich auch die gewohnte Struktur der MSDN nutzen.

Viel Spaß beim Downloaden :-) Der Server ist schon da (rund 1,5 MB/s) und der Rest ist gescheduled.

Wenn ich mir am Wochenede nicht irgendwie ne Nervenentzündung unterm Schulterblatt zugezogen hätte… würde ich heute vielleicht noch etwas länger durch halten… aber so muss ich gleich Schluss machen :-S

Viele Spaß.

Ciao Marco

SharePoint, FQDN, ServiceAccounts und SSP Provisioning failed

In meiner letzten SharePoint Installation wurde ich mit einem Active Directory mit Windows NT 4.0 Wurzeln begrüßt. Die Domäne wurde von “kunde.de” auf “neu.kunde.de” upgegraded. Der NETBIOS Name der Domain ist somit “kunde.de” und der Full Qualified Domain Name (FQDN) ist “neu.kunde.de”. In der Vergangenheit hatte ich keine gute Erfahrung mit FQDN’s im Bezug auf den SQL Server gemacht. Mein Versuch den Server über den vollen Namen anzusprechend, ist gescheitert (Pre SP1 Erfahrung).

Im aktuellen Fall haben wir versucht, den FQDN für die Angabe der Domain Accounts in der Form “neu.kunde.deaccountname” zu verwenden. Bis zur Provisionierung des Shared Service Provider hat das auch super funktioniert. Das Erstellen des SSP endete mit folgender Seite:
image_2 

In der Liste der SSP’s gab es mehr Details:
image_8

Im Eventlog:
A runtime exception was detected. Details follow.
Message: Windows NT user or group ‘ms.localsvcMossProd’ not found. Check the name again.

A runtime exception was detected. Details follow.
Message: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.
Techinal Details:
System.Data.SqlClient.SqlException: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Microsoft.Office.Server.Data.SqlSession.ExecuteNonQuery(SqlCommand command)
at Microsoft.Office.Server.Data.SqlServerManager.GrantLogin(String user)
at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeConfigurationDatabaseAccess(SharedComponentSecurity security)
at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeAccessControl(SharedComponentSecurity sharedApplicationSecurity)
at Microsoft.Office.Server.Administration.SharedResourceProvider.Microsoft.Office.Server.Administration.ISharedComponent.Install()
at Microsoft.Office.Server.Administration.SharedResourceProvider.Provision()

Die SharePoint Logs:

06/24/2009 17:32:42.34     OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server General             6pqn    High        Granting user 'ms.localsvcMossProd' login access to server 'moss-prod-db'.
06/24/2009 17:32:43.04     OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880i    High        System.Data.SqlClient.SqlException: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.     at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)     at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)     at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)     at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(C...
06/24/2009 17:32:43.04*    OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880i    High        ...ommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)     at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)     at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)     at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()     at Microsoft.Office.Server.Data.SqlSession.ExecuteNonQuery(SqlCommand command)
06/24/2009 17:32:43.04     OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880j    High        SqlError: 'Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.'    Source: '.Net SqlClient Data Provider' Number: 15401 State: 1 Class: 11 Procedure: 'sp_grantlogin' LineNumber: 49 Server: 'W2K8-PROD-SQL'
06/24/2009 17:32:43.04     OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880k    High           at Microsoft.Office.Server.Data.SqlServerManager.GrantLogin(String user)     at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeConfigurationDatabaseAccess(SharedComponentSecurity security)     at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeAccessControl(SharedComponentSecurity sharedApplicationSecurity)     at Microsoft.Office.Server.Administration.SharedResourceProvider.Microsoft.Office.Server.Administration.ISharedComponent.Install()     at Microsoft.Office.Server.Administration.SharedResourceProvider.Provision()     at Microsoft.Office.Server.Administration.SharedResourceProviderJob.Execute(Guid targetInstanceId)     at Microsoft.SharePoint.Administration.SPTimerJobInvoke.Invoke(TimerJobExecuteData& data, Int32& result)
06/24/2009 17:32:43.05     OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880l    High        ConnectionString: 'Data Source=moss-prod-db;Initial Catalog=master;Integrated Security=True;Enlist=False;Pooling=False'    ConnectionState: Open ConnectionTimeout: 15
06/24/2009 17:32:43.06     OWSTIMER.EXE (0x0788)                       0x0DC4                                      484                               880m    High        SqlCommand: 'sp_grantlogin'     CommandType: StoredProcedure CommandTimeout: 0     Parameter: '@loginame' Type: NVarChar Size: 128 Direction: Input Value: 'ms.localsvcMossProd'
06/24/2009 17:32:43.12     OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server General             900n    Critical    A runtime exception was detected. Details follow.  Message: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.  Techinal Details: System.Data.SqlClient.SqlException: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.     at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)     at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)     at System.Data.SqlClient.Sq...
06/24/2009 17:32:43.12*    OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server General             900n    Critical    ...lCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)     at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean re
06/24/2009 17:32:43.13     OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server Shared Services     7fxr    Exception    (Watson Reporting Cancelled) System.Data.SqlClient.SqlException: Windows NT user or group 'ms.localsvcMossProd' not found. Check the name again.     at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)     at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)     at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)     at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)     at System.Data.SqlClient.Sql...
06/24/2009 17:32:43.13*    OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server Shared Services     7fxr    Exception    ...Command.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)     at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)     at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)     at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()     at Microsoft.Office.Server.Data.SqlSession.ExecuteNonQuery(SqlCommand command)     at Microsoft.Office.Server.Data.SqlServerManager.GrantLogin(String user)     at Microsoft.Office.Server.Administration.SharedResourceProvider.SynchronizeConfigurationDatabaseAccess(SharedComponentSecurity security)     at Microsoft.Office.Se...
06/24/2009 17:32:43.13*    OWSTIMER.EXE (0x0788)                       0x0DC4    Office Server                     Office Server Shared Services     7fxr    Exception    ...rver.Administration.SharedResourceProvider.SynchronizeAccessControl(SharedComponentSecurity sharedApplicationSecurity)     at Microsoft.Office.Server.Administration.SharedResourceProvider.Microsoft.Office.Server.Administration.ISharedComponent.Install()     at Microsoft.Office.Server.Administration.SharedResourceProvider.Provision()     

Aus irgendeinem Grund konnte der Account nicht korrekt auf den SQL Server zugreifen. Eine Analyse der IIS Application Pool Accouts hat gezeigt, dass dort einige Accounts in der Form “neu.kunde.deaccountname” (FQDN) und andere in der Form “neu.kundeaccountname” (NETBIOS) gespeichert wurden:

image_10

In der Datenbank werden die User wie folgt gelistet (NETBIOS):

image_6

Lösung:

Das Problem ist also der FQDN. Das Provisioning des SSP wird jede Minute erneut versucht und hinterläßt die entsprechenden Spuren im Eventlog und im SharePoint Log. Jetzt ist die Hilfe von STSADM gefragt, damit die Accounts wieder gerade gezogen werden können. Einfach alle Accounts nach Anleitung des folgenden KB auf die Form “kunde.deaccountanme” (NETBIOS) ändern:

KB 934838: How to change service accounts and service account passwords in SharePoint Server 2007 and in Windows SharePoint Services 3.0

Nach den Änderungen wurde der SSP provisioniert und ich konnte weiter machen :-)

Erst heute mit der Lösung “in der Hand” bin ich mit den richtigen Schlagwörtern über Bing.com zu folgendem Blog Post gekommen:

Thaddparker: Error in using FQDN Domain Names and MOSS 2007

Ein kurzer Check hat gezeigt, dass die Verwendung in Form von “accountname@neu.kunde.de” ebenfalls beim Provisionieren des SSP nicht funktioniert:

Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchAdminSharedWebServiceInstance (15226029-e4cd-4ad6-aefc-965019284510).
Reason: The specified account name is invalid.
Parameter name: account
Techinal Support Details:
System.ArgumentException: The specified account name is invalid.
Parameter name: account ---> System.Security.Principal.IdentityNotMappedException: Some or all identity references could not be translated.
at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)
at System.Security.Principal.NTAccount.Translate(Type targetType)
at Microsoft.Office.Server.Utilities.WindowsSecurity.ValidateAccount(NTAccount account, Boolean throwIfInvalid)
--- End of inner exception stack trace ---
at Microsoft.Office.Server.Utilities.WindowsSecurity.ValidateAccount(NTAccount account, Boolean throwIfInvalid)
at Microsoft.Office.Server.Administration.SharedAccessRule.Validate()
at Microsoft.Office.Server.Administration.SharedComponentSecurity.SetAccessRule(SharedAccessRule accessRule)
at Microsoft.Office.Server.Administration.SharedResourceProvider.GetApplicationSecurity()
at Microsoft.Office.Server.Administration.SharedWebServiceInstance.ProvisionSharedResourceProviderWebConfigSettings(SharedResourceProvider srp)
at Microsoft.Office.Server.Administration.SharedWebServiceInstance.Synchronize()
at Microsoft.Office.Server.Administration.ApplicationServerJob.ProvisionLocalSharedServiceInstances(Boolean isAdministrationServiceJob)

Leason learned? Es steckt halt immer noch zu viel Tahoe in SharePoint und NETBIOS rulez :-(

Ciao Marco

Fresh SharePoint Install mit SP2 und Language Pack DE

Nachdem in letzter Zeit viel Maintenance an bestehenden Systemen betrieben wurde, gab es auch mal wieder eine Initialinstallation bei einem Kunden. Es wurde sich für ein Single Box Deployment entschieden. Folgende Details (sehr übliche Konfiguration und von mir empfohlene Konfiguration):

  1. Windows Server 2008 Standard – X64 – SP2 – EN
  2. Microsoft SQL Server 2008 Standard – X64 – SP1 – EN
  3. Microsoft SharePoint Server 2007 Standard – X64 – SP2 – EN – Language Pack German

freshIch hab mich an meine übliche Installationsreihenfolge gehalten und das Setup lief Weitestgehends reibungslos. Als einer der letzten Schritte kommt das Erstellen der Haupt-Portal-Applikation (in der Regel das Intranet Portal) an die Reihe. Ich installiere wann immer möglich ein englischen Basis SharePoint, damit man die Central Administration in Englisch bekommt. Für die Enduser muss es dann aber ein deutsches Portal sein, damit die Fachbereiche damit arbeiten können. Und was soll ich sagen… beim Erstellen der SiteCollection fehlt der DropDown für die Sprachauswahl :-S Für die Installation hatte ich einen alten Blog Post als Spickzettel verwendet: Wie installiere ICH SharePoint in einer Farm?

Ich hatte wie folgt installiert:

  1. MOSS x64 mit SP1 (Splistream Trial Download von MS)
  2. Language Pack DE x64 (gibt es nicht als SP1, also Download aus dem MSDN Sub.)
  3. WSS SP2 + WSS SP2 Language Pack (das Setup des Language Pack bracht ab und sagt es wäre nicht passend für das System)
  4. MOSS SP2 + MOSS SP2 Language Pack
  5. April CU WSS
  6. April CU MOSS
  7. PSCONFIG Wizard und erstellen einer neuen Farm

Bis auf den Punkt 3 Language WSS SP2 hat alles funktioniert. Ich habe ein paar alte Dokus zu reinen SP1 Installationen gecheckt und hatte das bisher genau so gemacht. Nach dem Language Pack habe ich WSS SP1 Language Pack und MOSS SP1 Language Pack installiert und das hatte beides funktioniert :-S Was war also los? Ich habe meine Testumgebung angeworfen und eine Neue SharePoint Farm erstellt. Genau dasselbe Verhalten. Dann mal an die Reparatur:

Versuch 1:

  1. Download WSS SP1 Language Pack x64 DE
  2. Installation bricht ab und sagt, es gäbe keine Software zu aktualisieren

Versuch 2:

  1. Download WSS Language Pack x64 DE
  2. Installation WSS Language Pack = OK
  3. Installation WSS Language Pack SP2 = OK
  4. Installation April CU WSS = OK
  5. PSCONFIG = OK

Anlegen einer neuen Website im Central Admin und siehe da… ein Language DropDown :-)

Mir ist nicht klar, warum das Verhalten von SP1 Fresh Install zu SP2 Fresh Install sich unterscheidet, oder ob sich meine Install Sources geändert haben, aber Microsoft macht es uns nicht wirklich einfach, mit all den Versionen. Bei einer Single Box Installation kann man fast auf das Splipstreamen verzichten und gleich mit der nackten Version beginnen, was allerdings unter Windows Server 2008 zu einem Warnhinweis führt (Kompatibilitätshinweis, der ignoriert werden kann solange man ein SP1 oder höher nach installiert).

Ich habe nach den Problemen meine Installationsanleitung aktualisiert:
Wie installiere ICH SharePoint in einer Farm?

Ciao Marco

Aktuellsten SharePoint Patchstand finden

image_2 Microsoft bietet unter folgender URL immer die letzte verfügbare PatchVersion für SharePoint 2007 an:
Cumulative updates are available from the Microsoft Office team to fix reported problems

Ciao Marco

Trusted Location in Office 2007

Wer mit SharePoint arbeitet und darin die üblichen verdächtigen Dateitypen der Office Familie verwendet, kennt vielleicht die Securityhinweise, wenn zum Beispiel Excel aus einer SharePoint Lib geladen wird. SharePoint gilt in solchen Situationen eigentlich als Vertrauenswürdig ;-) Also sollten wir es auch so behandeln. Hier ein paar Info’s wie man das machen kann.

Genereller Artikel:
http://technet.microsoft.com/en-us/library/cc178946.aspx#trustedsettings

Detail Informationen:
MS Excel Team Blog – Trust Center Part 4: Trusted Locations

image

Wie komme ich zu dem Dialog?
http://office.microsoft.com/en-us/help/HA100319991033.aspx

Alternativ kann man die Einstellungen auch per Group Policy setzen und im Unternehmen verteilen.

Ciao Marco

SharePoint – Send To – Could not find the destination item or folder on this server.

image SharePoint und WSS können Dokumente von einer Bibliothek in eine andere, über ein DropDown Menü am Item selber, kopieren. Jetzt hatten wir bei einem Kunden ein echt komisches Problem. Auf einigen Rechnern gab es ein Problem beim Kopieren. Es ist auch aufgefallen, das bei einem Test auf einem Windows Server 2003, die Oberfläche für den Dialog ganz anders aussieht, also auf einer Standard Workstation. Mit Office 2007 auf der Maschine nutzt der Client ein ActiveX Control. Ohne ActiveX nutzt SharePoint eine ASPX Page und die kann zwar über SiteCollections hinweg kopieren, aber nicht über Application, also von http://portal.ms.local auf http://mysite.ms.local

Das ganze wird hier beschrieben:

http://office.microsoft.com/en-us/help/HA101208501033.aspx

By default, you can use the Send To command to copy files to libraries within a site collection. If you copy files from a client computer that has a program that is compatible with Microsoft Windows SharePoint Services 3.0, such as Microsoft Office Word 2007, and a browser that supports Microsoft ActiveX Controls, such as Microsoft Internet Explorer, you can use the Send To command to copy files not only between libraries within a site collection, but also between different Web applications. If you copy files from the browser of a client computer that does not support ActiveX Controls, you will be able to copy files only to libraries within site collections that share the same domain name (top-level site name) as the source library.

Ciao Marco