Livre pour Administrer et Dépanner Microsoft Exchange Server 2013

L’objectif du livre Microsoft Exchange Server 2013 pour l’Administrateur: Concepts et Pratiques (648 pages) est de vous rendre rapidement autonome et opérationnel dans l’administration, le dépannage et la sécurisation de Microsoft Exchange Server 2013.

Il comporte 48 travaux pratiques : chaque exercice est composé d’un descriptif de l’objectif et de la solution détaillée, étape par étape.

Afin de vous assurer d’être sur la bonne voie, des copies d’écrans illustrent la solution. Enfin, un récapitulatif vous rappelle ce que venez d’apprendre.

018 Tableaux en C#

Les éléments d’un tableau sont des variables qui stockent une valeur. Chaque élément d’un tableau est indexé et accessible grâce à l’opérateur d’accès qui est représenté par une paire de crochets [].

Un exemple d’un programme écrit en C# avec Visual Studio 2013 est commenté dans la vidéo.

Téléchargez la vidéo : 018 Tableaux en C#.

Téléchargez les exemples de code.

017 Confinement en POO en C#

En programmation orientée objet, le confinement permet d’imbriquer une classe dans une autre quand elles sont étroitement liées.

Par exemple, si le livre est vérifié par un seul vérificateur, cela a du sens d’imbriquer la classe Verificateur dans la classe Livre (programme écrit en C# avec Visual Studio 2013).

Dans l’agrégation, le problème à résoudre est différent puisqu’un livre peut avoir plusieurs reliures.

Vous voyez que la cardinalité des relations entre objets du monde physique modifie les notions à implémenter dans C#.

Toutes ces notions (classes, agrégation, confinement, etc.) sont assez ardues: ne vous découragez pas. Il est naturel d’avoir des difficultés à bien comprendre leur implication: cela viendra au fur et à mesure des exemples et de la pratique !

Téléchargez la vidéo : 017 Confinement en POO en C#.

Téléchargez les exemples de code.

Authentification

Certificats

  • Classe 1: vérification email
  • Classe 2: vérification identité
  • Classe 3: vérification plus poussée

Facteurs d’authentification

Quelque chose que nous:

  • connaissons: mot de passe, code PIN.
  • avons: clef RSA.
  • sommes: biométrie (empreintes digitales, iris, géométrie de la main.

016 Agrégation en POO dans C#

Vous n’êtes pas obligés d’utiliser uniquement les types de données de C#: STRING,INT, DOUBLE, DATETIME,
etc, car vous pouvez créer vos propres types de données.

Notamment; vous pouvez définir une classe à partir d’un type de donnée qui est lui-même une classe. En programmation orientée objet, ce mécanisme s’appelle l’agrégation.

L’agrégation permet de définir une entité comme étant liée à plusieurs entités de classe différentes.

Un exemple d’un programme écrit en C# avec Visual Studio 2013 est commenté dans la vidéo.

Téléchargez la vidéo : 016 Agrégation en POO dans C#.

Téléchargez les exemples de code.

Déchiffrer les mots de passes IIS grâce aux commandes natives de Windows

Dans IIS (Internet Information Services), le fichier de configuration applicationHost.config, logé sous C:/Windows/System32/inetsrv/config, contient le compte de service de chaque pool d’applications.

Un pool d’applications est un regroupement de sites et d’applications web. A chaque pool d’application est associé un ou plusieurs programmes intitulés processus de travail ou worker process (w3wp.exe). C’est le processus de travail qui va exécuter la requête http, par exemple.

De ce fait, le programme w3wp.exe s’exécutera avec les droits du compte de service du pool d’applications. Bien évidemment, il est conseillé de donner les droits exactement nécessaires à ce compte de service. Toutefois, le sujet est assez complexe et ne se résume pas qu’à cela.

Stockage du mot de passe du pool d’applications

Ce qui est intéressant c’est le stockage du mot de passe dans le fichier applicationHost.config. En effet, le mot de passe du compte de service est chiffré dans applicationHost.config.

Par exemple, un extrait du fichier pour une configuration SharePoint, qui concerne le pool d’application SecurityTokenServiceApplicationPool:

<configuration> …
<system.applicationHost> …
<applicationPools>
<add name= »SecurityTokenServiceApplicationPool » autoStart= »true » managedPipelineMode= »Integrated »>
<processModel identityType= »SpecificUser » userName= »FORMATIONsvcMOSS27″ password= »[enc:IISWASOnlyAesProvider:UuTHp744ksuY4G/dRfgTRf5kqwdsdf10MNlsYT8Qqtgu7685HRHRS+oUU1rcJ8+5:enc] »

Derrière la balise password, vous trouvez le mot clef chiffré : « [enc:IISWASOnlyAesProvider:UuTHp744ksuY4G/dRfgTRf5kqwdsdf10MNlsYT8Qqtgu7685HRHRS+oUU1rcJ8+5:enc] ».

Le sel de l’histoire c’est qu’il facile de retrouver le mot de passe en clair correspondant grâce à une commande APPCMD de IIS.

Déchiffrage du mot de passe du pool d’applications

La commande APPCMD pour déchiffrer est à  exécuter en tant qu’administrateur dans une invite de commandes:

cd "C:/Windows/System32/inetsrv"

 

appcmd.exe list apppool "SecurityTokenServiceApplicationPool" /text:*

donne le résultat abrégé suivant:

APPPOOL

[add]

[processModel]
identityType: »SpecificUser »
userName: »FORMATIONsvcMOSS27″
password: »Passw0rd@ »

En face de password, vous trouvez le mot de passe en clair.

Précautions pour éviter de divulguer trop d’informations

Cette commande doit être exécutée comme administrateur. Il faut donc être administrateur local pour retrouver le mot de passe.

Cependant, si vous êtes dans une compagnie internationale, avec plusieurs niveaux de ramifications d’administrateurs, vous pourriez récupérer indûment des mots de passe d’autres comptes de services, voire d’administrateurs.

Pire encore, si le compte de service du pool d’applications est le compte Administrateur de domaine !

C’est un argument supplémentaire pour créer des comptes de services spécifiques et de ne jamais utiliser les comptes de domaines comme compte de service.