novembre 2009 - Posts

0

Lorsqu’on a une plateforme avec OCS R2 et également un CRM 4.0, il est très intéressant de lier les technologies afin d’apporter toutes les fonctionnalités de communication unifiée à travers la console CRM 4.0. Pour ce faire l’équipe produit CRM a développé un “pluggin” appelé ACP pour Agent Communications Panel. Le petit hic c’est qu’ils l’ont développés pour des versions US de CRM .. et donc vous aurez un joli message d’erreur lors de l’installation de celui-ci :

clip_image001

Voici le CRM avant l’installation de l’ACP:

clip_image002

 

D’’ailleurs pour le télécharger, voici l’URL: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0d689f13-4953-40ea-995e-49469dae559e
Pour revenir au problème “Microsoft Dynamics CRM 4.0 is not present on this computer. This application can only be installed on a server with Microsoft Dynamics CRM 4.0 installed.”, c’est car l’ACP n’est supporté que sur une version US de CRM. Pour contourner le problème, il faut “hacker” l’installer MSI avec votre outil préféré, ORCA pour être Corporate (http://www.technipages.com/download-orca-msi-editor.html) ou sinon Ressources Hacker qui est pas mal également.

Donc là il faut simplement virer dans le header la ligne qui fait la vérification de version CRM 4.0. Une fois que c’est supprimé, vous repackagez un MSI sans cette ligne et vous pourrez installer l’ACP.

Une fois que c’est installé vous pouvez aller sur l’URL: https://crm:5555/AgentCommunications/Microsoft.AgentCommunicationsPanel.xbap Vous verrez alors la fenêtre suivante :

clip_image003

Et bam une autre erreur:

 

clip_image004

C’est normal car je n’ai pas lu le mode d’emploi et il faut que j’ajoute sur mes machines clientes 2 certificats :

clip_image005

Il faut ajouter ces 2 certificats dans les autorités de certification racines de confiance et dans les éditeurs approuvés.

clip_image006

On refresh la page et ça fonctionne !

clip_image007

Voici le résultat en image :

clip_image008

 

Donc voilà ça poutre !

 

Source: http://www.confusedamused.com/categories/collaboration/

0

Je viens de me connecter sur Facebook et cet imbécile me propose d’upgrader vers IE8 alors que j’y suis déjà ;-o

image

 

Sinon il me propose de switcher vers le renard en feux ou ses copains. Je l’aime IE8 … surtout que je vois les specs de IE9 :)

0

Lors des MSDays j’ai présenté un sujet intitulé “Héberger vos applications PHP sur plateforme Microsoft”. Il n’y a pratiquement pas de tutorial sur le Web de comment faire ça facilement en français. Surtout qu’avec le support de FastCGI en natif avec Windows Server 2008, il faut en profiter. PHP exploite le Worker de IIS comme ce que fait une application .NET ou Static ! Il y a d’ailleurs beaucoup d’améliorations avec IIS 7.5 et FastCGI. Je vous invite à lire tous les articles sur http://iis.net/

Je vais donc vous montrer qu’en 5 minutes on peut faire tourner du PHP sur du Windows. Voici les différentes étapes :

1°) Préparation du Windows Server

J’ai un Windows Server 2008 (ou 2008 R2 avec IIS 7.5 mais je pourrai également télécharger l’extension FastCGI pour du Windows Server 2003) vierge. Je vais m’assurer que mon fuseau horaire est correct, que j’ai appliqué les différentes mises à jour Windows via Windows Update, que j’ai désactivé la sécurité avancée d’IE (qui est très chiante). Bref le minimum à faire.

2°) Installation de IIS

Via la console Server Manager, je vais ajouter le rôle IIS et rajouter la case CGI lors de la sélection des fonctionnalités IIS. Le CGI est la seule fonctionnalité nécessaire pour permettre d’exécuter du PHP sur du Windows. On peut également le faire sur un Windows Vista ou 7 pour un environnement de développement !

image

3°) Téléchargement des sources / installers de PHP

Je vais sur http://windows.php.net/ puis je télécharge la version qui m’intéresse (sachant que IIS permet d’exécuter plusieurs versions de PHP sur le même serveur). Dans mon cas je vais télécharger le Zip et également l’Installer de PHP 5.3. Vous pouvez également prendre la 5.2.11.

 

image

4°) Installation de PHP sur Windows

Je me retrouve donc avec 2 fichiers car il y a 2 façons d’installer PHP sur Windows.

image

La première est l’archive, j’aurai alors 2 fichiers php.ini, un pour la production et un pour le développement et il faudra que je configure le Handler Mapping de IIS tout seul. Sinon j’ai l’installer de PHP qui me fait ça tout seul. Je suis feignant, je vais donc choisir l’installer. Je lance l’exécutable :

La page de bienvenu :

clip_image001

 

Les accords de licence :

 

clip_image002

 

Et la fenêtre qui nous permet de choisir IIS, ce qui configurera automatiquement le Handler Mapping de IIS

 

clip_image003

 

Ici on peut configurer les variables d’environnement pour que les pages PHP soit interprétées par l’exécutable php-win.exe. On peut également activer d’autres extensions. Je laisse tout par défaut mais je vais installer le manuel PHP car ça sert toujours.

clip_image004


On lance l’installation :

clip_image005


Et c’est terminé.

clip_image006

 

On peut maintenant lancer la console IIS et vérifier le Handler Mapping :

image

J’ai bien une entrée supplémentaire appelée PHP_via_FastCGI. On peut double cliquer dessus pour voir le détails du Mapping. On va simplement faire comprendre les pages PHP à IIS, appeler le module FastCGI qui a été ajouté grâce à la fonctionnalité CGI puis charger l’exécutable php-cgi.exe qui est dans le dossier d’installation de PHP. D’ailleurs à propos de ce dossier d’installation, il peut être plus judicieux de le déporter sur une autre partition que la partition système…

Si j’avais choisi l’installation en passant par l'archive PHP, j’aurai du cliquer sur “Add Module Mapping” et renseigner ces différents champs.

 

5°) Modification du fichier php.ini

Le fichier php.ini est dans le dossier d’installation de PHP. On va utiliser Notepad, l’éditeur par défaut, pour l'ouvrir. L’installer de PHP m’ajoute les paramètres essentiels pour exécuter du PHP dans le fichier PHP.ini mais il en manque quand même. Il ne le fait pas très proprement en plus de cela car s’il le faisait proprement il n’aurait qu’à dé-commenter les bonnes lignes et changer les valeurs. Ici il rajoute un bloc de paramètres dans le fichier comme ça :

image

On pourrait le faire proprement directement avec l'installation en passant par l’archive Zip. Donc ici on va laisser les paramètres :

  • cgi.force.redirect=0 => Pour la sécurité, forcé par défaut de toute façon.
  • fastcgi.impersonate=1 => Pour la sécurité IIS et CGI.
  • extension_dir=”C:\Program Files (x86)\PHP\ext” => là où sont stockés mes fichiers DLL, les extensions PHP.

et on va activer les paramètres suivants, dé-commenter la ligne (ctrl + F pour rechercher avec Notepad) :

  • open_basedir = C:\inetpub => pour spécifier le dossier ou seront stockés mes fichiers PHP (emplacement par défaut avec IIS 7.x). La bonne pratique est bien évidemment d’externaliser ces pages sur un autre disque, comme ce qui est le cas pour les logs IIS.
  • cgi.fix_pathinfo = 1 => pour régler des problèmes de chemin. Une grosse évolution :)
  • date.timezone = Europe/Paris => le fuseau horaire qui doit être matché avec celui de votre OS. Cela permet d’éviter les erreurs 500 dans IIS.


La configuration du fichier php.ini est terminée, je sauvegarde le fichier. Nous allons pouvoir créer un fichier PHP et tester que PHP fonctionne bien sur IIS !!!

6°) Création d’un fichier PHP et test

Je me rends donc dans le dossier C:\inetpub\wwwroot\ et je crée un fichier que j’appelle phpinfo.php

image

Je vais ensuite l’éditer et faire un petit phpinfo, du vrai développement pour un IT. J’ouvre le fichier avec Notepad bien évidemment !

image

J’enregistre et je vais pouvoir ouvrir mon navigateur favoris, c’est à dire Internet Explorer 8 et vérifier que PHP a été exécuté sur mon serveur.

image

Si je ne suis pas un développeur de génie … ;-)

Bon on peut faire tout ça en mode Geek en passant par une invite de commandes Windows (pkgmgr pour IIS puis appcmd pour le Handler Mapping).

 

Les bonnes pratiques avec PHP

Il y a quelques bonnes pratiques à respecter. Le premier est le compte de service qui est utilisé pour l’Application Pool, soit utiliser un des comptes par défaut de Windows, soit créer un compte de service pour des configurations plus complexes. A vous de voir en fonction de vos besoins. Ensuite la bonne pratique est d’utiliser une application pool par site.

On peut également jouer avec les paramètres du PHP.ini :

Valeur

Description

register_globals=Off

Désactiver les register_globals.

open_basedir="c:\inetpub"

Restreindre où les processus PHP peuvent lire et écrire sur le disque système.

safe_mode=Off
safe_mode_gid=Off

Désactiver le mode safe.

max_execution_time=30
max_input_time=60

Limiter le nombre d’exécution des scripts.

memory_limit=16M
upload_max_filesize=2M
post_max_size=8M
max_input_nesting_levels=64

Limiter l’usage de la mémoire et la taille des fichiers.

display_errors=Off
log_errors=On
error_log="C:\path\of\your\choice"

Configurer les messages d’erreurs et le logging.

fastcgi.logging=0

Le module FastCGI de IIS échoue quand PHP envoie des données sur stderr en utilisant le protocole FastCGI. Désactiver le logging va empêcher que PHP envoie des informations d’erreurs sur stderr, et générant des erreurs 500 sur le client.

expose_php=Off

Cacher la présence de PHP.

allow_url_fopen=Off
allow_url_include=Off

Désactiver les URL à distance pour les fonctions de manipulation de fichiers, ce qui pourrait causer des vulnérabilités d’injection de code.

 

Dernier truc, vous pouvez installer l’Admin Pack pour IIS qui vous rajoute un icone dans la console IIS '”FastCGI Settings”. Vous pourrez alors optimiser et configurer différents paramètres tel que le nombre de requêtes CGI maximales.

 

Exécuter plusieurs versions de PHP sur le même serveur :

Ca vous tente de faire tourner plusieurs versions de PHP sur le même serveur ? C’est possible et complètement supporté. En mode geek et très rapide, on va créer 3 sites, chacun de ces sites exécutant une version de PHP différente :

C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath='c:\php448\php.exe']
C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath='c:\php5211\php-cgi.exe']
C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath='c:\php53\php-cgi.exe']

On a maintenant 3 sites et on va configurer le handler mapping pour ces 3 sites :

C:\>%windir%\system32\inetsrv\appcmd set config site1 –section:system.webServer/handlers /+”..[name=’PHP448_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php448\php.exe’,resourceType=’Either’]
C:\>%windir%\system32\inetsrv\appcmd set config site2 –section:system.webServer/handlers /+”..[name=’PHP521_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php5211\php-cgi.exe’,resourceType=’Either’]
C:\>%windir%\system32\inetsrv\appcmd set config site3 –section:system.webServer/handlers /+”..[name=’PHP525nts_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php53\php-cgi.exe’,resourceType=’Either’]

Ok c’est un peu geek mais on pourrait le scripter et automatiser toute la procédure :)

 

Conclusion

C’est plutôt génial tout ça. On pourrait également préparer nos fichiers XML pour déployer n versions de PHP sur le même serveur, ce qui ressemblerait à :

<system.webServer>
    <handlers accessPolicy="Read, Script">
        <add name="PHP via FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\PHP53\php-cgi.exe|-d open_basedir=C:\Websites\Website1" resourceType="Unspecified" requireAccess="Script" />
    </handlers>
</system.webServer>

On peut également exploiter les fonctionnalités de réécriture d’URLs avec des applications PHP. Bref on peut aller très loin. Il y a d’ailleurs le Windows Cache Extension pour PHP qui est en version RC depuis peu, je vous invite à le tester (ici => wincacheforphp)
Voici d’ailleurs quelques articles à lire:

WINCACHE 1.0 RC - New cool features
WINCACHE 1.0 RC - Using the statistics page
Windows Cache Extension 1.0 for PHP – RC

Sources et quelques liens:
http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-70/
Installing PHP on Windows Vista with FastCGI
Installing FastCGI Support On Server Core
Using FastCGI to Host PHP Applications on IIS 6.0

0

C’est un assistant en .NET 2.0 qui vous permet d’éditer l’assistant (fichiers XML) de MDT. Vous pouvez donc le faire à travers une interface graphique et vous pouvez également tester. Sa version 2.0 vient de sortir et apporte quelques améliorations.

  • Ajouter la capacité de modifier les valeurs d’une variable d’une séquence de tâches avant d’exécuter l’assistant.
  • Montre les variables de la séquence de tâches après que l’assistant a terminé.
  • Entoure correctement les entrées du fichier de définition XML dans les balises CDATA pour que les caractères spéciaux ne causent pas de problèmes.
  • Fonctionne avec MDT 2010 (fonctionne normalement avec MDT 2008.5).

Comment ça fonctionne ?

Il faut donc télécharger l’outil, il n’y a pas d’installation, il suffit de l’exécuter puis d’aller le menu File puis cliquer sur Open.
Il faut aller chercher le fichier XML DeployWiz_Definition_ENU.xml dans le dossier Scripts de votre partage de distribution :

 

image

L’outil chargera et affichera alors les différentes étapes de l’assistant MDT lorsque vous démarrez en WinPE :

image

 

Vous remarquez que le panneau de droite il y a 3 onglets. Le premier permet de lister les variables chargées, le deuxième d’éditer la fenêtre (ce qui permettrait de faire un assistant en français par exemple) et le troisième d’avoir un rendu comme si vous étiez dans l’assistant.

 

image

Sympa non ? Vous pouvez donc bien vous amuser à tout modifier. Vous pouvez également supprimer des étapes de l’assistant mais cela ne sert à rien car on peut également passer par le fichier customsettings.ini pour passer ces étapes.

C’est disponible sur CodePlex : http://mdtwizardeditor.codeplex.com/
Bref c’est génial, très pratique.

1

Il s’agit d’un guide complet pour déployer Windows 7 en entreprise. Il y a énormément d’extraits du Livre Windows 7 Ressources Kit et des articles de TechNet.
Il y a l’ensemble des bases qui est rappelé (WinPE, WIM, etc.) puis ça enchaine rapidement sur la planification du déploiement, le test de compatibilité des applications, WDS, l’activation en volume et MDT ! Il y a ensuite quelques articles de TechNet.

Le sommaire du Windows 7 Ressources Kit :

image

Et voici pour la partie TechNet :

image

Ce document PDF est disponible en téléchargement gratuit sur http://www.microsoft.com/downloads/details.aspx?FamilyID=EE2A1D38-88A9-43B3-95BC-7E962F0B6030&displaylang=en

0

Je vais reprendre le texte officiel :

Ces boîtes à outils ont été conçues pour permettre aux développeurs Web d'étendre simplement des fonctionnalités d'applications web en leur fournissant un ensemble de codes, modèles et documentation fonctionnels.

ee679803.02(fr-fr,MSDN.10)[1]

Voici les liens pour télécharger les différents kits d’outils (sur MSDN Code Gallery) :

- Web Application Toolkit pour Internet Explorer 8 Extensibility
- Web Application Toolkit pour Bing Search
- Web Application Toolkit pour REST Services
- Web Application Toolkit pour Applications Web Mobile
- Web Application Toolkit pour les Modèles d'Email
- Web Application Toolkit pour réaliser votre Site Web Social
- Web Application Toolkit pour les FAQs

Il y a une vidéo pour chaque toolkit sur la page principale http://msdn.microsoft.com/fr-fr/asp.net/ee679803.aspx
Les développeurs sont servis ;-o

0

Je l’ai vu passé il y a quelques jours, le kit d’outils de sécurité pour Windows 7 est enfin sorti. Il est le dernier de la suite des kits existants (Office 2007 / IE8 / XP / Vista / 2003 et 2008) et était attendu par beaucoup de monde. Ce kit fournit plusieurs éléments, des bonnes pratiques, des outils d’automatisation pour aider la configuration et le déploiement de paramètres de sécurité. Après le déploiement des kits, vous pourrez vérifier l’exactitude des politiques de sécurité appliquées à l’aide de SCCM 2007 R2 grâce à la fonctionnalité DCM (Desired Configuration Management).

Ces kit d’outils contiennent :

- L’outil GPOAccelerator.
- Le guide de sécurité, le plus important à mes yeux. Le guide de sécurité pour Windows 7 a été complètement revu par rapport à Vista en incluant une grosse partie sur la sécurité (UAC, AppLocker, Biométrie, etc.) mais également des parties sur la compatibilité applicative et la protection des données (BitLocker, EFS, RMS, etc.).
- Des classeurs de référence (Surface d’attaque, paramètres de base en sécurité)
- Des fichiers XML prêts à l’emploi pour la sécurité.
- Des fichiers INF.
- Un aperçu qui parle des bonnes pratiques et comment monitorer la sécurité pour des systèmes d’exploitation Windows et les applications Office.
- Les packs DCM pour SCCM 2007 R2 et un guide pour comment les utiliser.

Vous pouvez télécharger l’ensemble de ces kits à l’adresse http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=5534bee1-3cad-4bf0-b92b-a8e545573a3e

0

Ils ne sont pas aussi doués que sur d’autres vidéos mais c’est quand même bien fun :

 

0

Je viens de voir la vidéo, elle est pas mal. J’étais à la soirée VIP à EOS puis je suis passé au Windows Café ou il y avait beaucoup plus d’ambiance et j’ai revu les copains MSP et MVP, sans oublier les copains de Heaven :-)

Voila :

 

Windows Vista .. c’était pas mon idée (copyright Mitsu).