30 août 2014

SHAREPOINT 2013 : AutoSPIntaller SharePoint with SP1

AutoSPInstaller a subi un nouveau lifting lui permettant à présent de supporter l'installation des binaires "SharePoint 2013 with SP1".
 
Pour ce qui ne connaissent pas, "AutoSPInstaller" est l'outil indispensable pour monter des fermes SharePoint. L'installation est réalisée à l'aide de scripts PowerShell.
Il permet entre autres de spécifier les noms des bases de données de services applicatifs, configurer les services, configurer plusieurs comptes managés,...
 
Ce produit disponible librement sur CodePlex est actuellement en version 3.96 qui au passage incorpore de nombreuses améliorations pour paramétrer encore plus finement les fermes SharePoint.



Cependant, vous pouvez être amené à rencontrer une erreur lors de l'installation des prérequis de SharePoint en mode Offline: "Error: Custom file location is not accessible".
Humm hum, pas très explicite comme erreur...
Dans le même temps, si vous installez les prérequis en mode "Online", vous ne rencontrerez aucun problème.
Après quelques investigations dans les logs, il s'avère que l'installeur recherche un fichier introuvable". En effet, un nouveau prérequis a fait son apparition avec la release de SP1 de SP2013. Il s'agit d'une mise à jour de "WCF Data Services" (la version 5.6).
Pour se faire, vous devrez donc télécharger cette mise à jour puis la déposer dans le répertoire "PrerequisisteInstallerFiles" de SharePoint dans votre "AutoSPInstaller".
Il faudra néanmoins le renommer en "WCFDataServices56.exe" car le "WCFDataServices.exe" faisait déjà parti des prérequis de SharePoint 2013 RTM (Microsoft WCF Data Services 5.0).
 
Une fois cette petite astuce réalisée, vous pourrez installer vos serveurs SharePoint 2013 en incluant directement le SP1.

12 août 2014

SHAREPOINT : Selectionner la signin page ADFS par défaut

Aujourd'hui un petit post sur l'utilisation du couple ADFS et SharePoint.
 
Il est possible d'associer sur une web application un fournisseur basé sur ADFS en créant un "trusted identity provider". Cette action est à réaliser depuis le menu "Authentication provider" disponible dans le menu des gestion des applications web.
 
Par contre, il est fortement recommandé de laisser sélectionner le provider NTLM afin que les éléments puissent être indexés par le service de recherche.
Dans cette configuration, vous vous retrouverez donc avec une jolie zone déroulante de sélection du mode d'authentification lors de l'accès à l'application web :

 
 
Autant dire que ce n'est pas le top d'un point de vue expérience utilisateur...
Afin de corriger ceci, il suffit de paramétrer une url dans la section "Sign in page URL" présente dans la zone de sélection des providers (cette zone n'accepte que des url accessibles sur l'application web).
Pour accéder directement au formulaire d'authentification ADFS, il suffira de positionner le chemin suivant dans l'adresse personnalisée "/_trust/default.aspx":

 
 
 Ainsi, lors de l'accès à l'application web, vous serez automatiquement redirigé vers le formulaire ADFS si vous n'êtes pas préalablement identifié:

 
Simple, mais encore faut-il le savoir... 

10 août 2014

SHAREPOINT 2013 : Mise à jour AppFabric

SharePoint 2013 a intégré une grande nouveauté se nommant le cache distribué.
Ce mécanisme de cache est utilisé dans de nombreuses briques de SharePoint:
  • Authentification,
  • Echange de news,
  • Performance de chargement des pages,
  • ...
Ce cache distribué est basé sur le composant "App Fabric 1.1" qui est un prérequis à l'installation de SharePoint.

Contrairement à ce qui était affirmé lors des premiers mois de SP2013, il est possible de patcher le composant "App Fabric V1.1" en installant les cumulative update. A l'heure actuelle App Fabric comprend 5 versions de mise à jour (CU1 à CU5).
Je vous conseille d'installer à minima la CU4 qui a apporté de nombreuses corrections et améliorations des performances.
 
Note : Tout comme pour SharePoint, chaque CU d'App Fabric inclut les éléments précédemment corrigés. Il n'est donc pas nécessaire d'installer toutes les CU mais uniquement celle que vous souhaitez.
 
Comment déterminer la version d'App Fabric installée sur votre serveur?
  • Obtenir la version d'App Fabric via le panneau de configuration du serveur:
  • Obtenir la version d'App Fabric via Powershell:
(Get-ItemProperty "C:\Program Files\AppFabric 1.1 for Windows Server\PowershellModules\DistributedCacheConfiguration\Microsoft.ApplicationServer.Caching.Configuration.dll" -Name VersionInfo).VersionInfo.ProductVersion


 
 

Il est préférable de ne pas paralléliser le patch d'App Fabric sur vos serveur SharePoint 2013 mais plutôt de réaliser les mises à jour séquentiellement sur chacun des serveurs de votre ferme.
Pour mettre à jour "AppFabric", il faudra suivre les étapes suivantes sur chaque serveur :
  1. Arrêter le service AppFabric ("Stop-SPDistributedCacheServiceInstance -Graceful"). Le paramètre Graceful permettant de vider le cache proprement sans perdre d'informations.
  2. Installer la CU d'AppFabric,
  3. Réaliser les éventuelles configurations post-installation (par exemple si passage du CU3, suivre la correction suivante : http://support.microsoft.com/kb/2787717),
  4. Redémarrer le service (via l'administration centrale de SharePoint ou par PowerShell).
 

31 juillet 2014

SharePoint 2013 : PortalSuperUserAccount et PortalSuperReaderAccount

Il est dans les bonnes pratiques d'appliquer à votre application web les comptes "SuperUser" et "SuperReader" dès lors que vous avez activé le publishing sur un des sites de l'application web.

Pour vérifier si les comptes sont correctement configurés sur votre ferme, vous pouvez utiliser ce script PowerShell qui affichera les propriétés pour chacune des web application de votre ferme:
 
Get-SPWebApplication | %{Write-Host "Application web : " $_.url "'nCompte super user : " $_.properties["portalsuperuseraccount"] "'nCompte super reader : " $_.properties["portalsuperreaderaccount"] "'n"}
 
 
Pour affecter les comptes à une application web en particulier, vous pourrez suivre les commandes suivantes:
 
$wa = Get-SPWebApplication -Identity "WebApplication"
$wa.Properties["portalsuperuseraccount"] = "SuperUser"
$wa.Properties["portalsuperreaderaccount"] = "SuperReader"
$wa.Update()
 
Dans laquelle vous devrez remplacer les valeurs suivantes:
  • WebApplication : Nom de l'application web concernée.
  • SuperUser : Compte à utiliser pour le super utilisateur (attention positionner le compte claims si votre web app est en mode claims).
  • SuperReader : Compte à utiliser pour le super lecteur (attention positionner le compte claims si votre web app est en mode claims).
 
 
Attention au niveau des comptes "SuperUser" et "SuperReader", il faudra écrire les comptes claims si votre web application utilise les revendications (ce qui est le cas par défaut dans SP2013).

21 juillet 2014

INFOPATH : Formater une date

InfoPath dispose d'un panel de fonctions permettant de réaliser la plupart des besoins dans vos formulaires (math, url, utilisateurs, dates,...).
 
Il est possible d'utiliser ces fonctions fournies par InfoPath mais aussi des fonctions XPath basiques qui ne sont pas visibles depuis l'interface.
Une fonctionnalité puissante (permettant de ne pas utiliser de code managé) est la possibilité de formater l'affichage d'une date dans un autre champ du formulaire.
 
Pour cela, il faudra passer par la fonction XPATH non disponible via l'éditeur de fonction d'InfoPath : "format-date".
Pour réaliser ce besoin, il suffira de suivre les actions suivantes:
  1. Se placer sur le champ texte qui accueillera la date à formater,
  2. Cliquer sur valeur par défaut,
  3. Cliquer sur "Fonction",
  4. Insérer la fonction suivante : msxsl:format-date(DateField; 'MMMM') (en prenant soin de remplacer "DateField" par votre champ date InfoPath),
 
Votre champ affichera à présent le mois sous sa valeur textuelle.
Pour les personnes n'étant pas à l'aise avec les divers formatages de dates, la liste est disponible sur le MSDN de Microsoft: http://msdn.microsoft.com/en-us/library/ms256099(v=vs.110).aspx