In this paper, we address the problem of synthesizing opaque systems. A secret predicate S over the runs of a system G is opaque to an external user having partial observability over G, if s/he can never infer from the observation of a run of G that the run belongs to S. We first investigate the case of static partial observability where the set of events the user can observe is fixed a priori. In this context, we show that checking whether a system is opaque is PSPACE-complete, which implies that computing an optimal static observer ensuring opacity is also a PSPACE-complete problem. Next, we introduce dynamic partial observability where the set of events the user can observe changes over time. We show how to check that a system is opaque w.r.t. to a dynamic observer and also address the corresponding synthesis problem: given a system G and secret states S, compute the set of dynamic observers under which S is opaque. Our main result is that the set of such observers can be finitely represented and can be computed in EXPTIME.Key-words: security, confidentiality property, opacity, synthesis, dynamic observation Observateurs dynamiques pour la synthèse de systèmes opaques Résumé : Dans cette article, nous nous intéressonsà la synthèse de systèmes opaques. Un prédicat S sur les exécutions d'un système G est opaque visà vis d'un utilisateur, observant partiellement le système, si celui-ci ne peut jamais déduire des traces observées que l'exécution courante appartientà S. Dans un premier temps, nous nous intéressons au cas où le sous-ensemble desévénements que l'attaquant peut observer est fixe. Dans ce cadre, nous montrons que la vérification de l'opacité est PSPACE complète. Dans un deuxième temps, nous introduisons la notion d'observation partielle dynamique qui traduit le fait que l'ensemble desévénements que l'attaquant peut observer varie avec le temps. Nous montrons comment vérifier l'opacité sur un système visà vis d'un observateur dynamique et considéronségalement le problème de synthèse associé:étant donné un système G et un secret S, calculer l'ensemble des observateurs dynamiques pour lesquels S est opaque. Nous montrons ainsi que cet ensemble peutêtre représenté de manière fini avec une complexité de calcul EXPTIME.