Skip to content

Commit

Permalink
Merge pull request #14 from dnum-mi/20231218_durcissement_sommaire
Browse files Browse the repository at this point in the history
20231218 durcissement sommaire
  • Loading branch information
Metazel authored Feb 1, 2024
2 parents 845d1d7 + 34b36f9 commit 7e2ed8e
Show file tree
Hide file tree
Showing 120 changed files with 3,910 additions and 129 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/Deploy docker image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,4 @@ jobs:
uses: docker/build-push-action@v5
with:
push: true
tags: ${{ secrets.DOCKERHUB_USERNAME }}/cct-mi-dsfr:1.0
tags: ${{ secrets.DOCKERHUB_USERNAME }}/cct-mi:2.0
36 changes: 36 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
S# The Docker image that will be used to build your app

# gitlabrunner partagé
default:
tags:
- shared
- region1

variables:
registry_url: nexus.forge-dc.cloudmi.minint.fr
proxy_host: pio.service.consul
proxy_port: 3128
http_proxy: http://${proxy_host}:${proxy_port}
https_proxy: http://${proxy_host}:${proxy_port}
no_proxy: localhost,.pi2.minint.fr
GIT_SSL_NO_VERIFY: "true"
image: node:18
stages:
- pages
# Functions that should be executed before the build script is run
pages:
stage: pages
script:
- npm install
- npm run build
- npm run postbuild
- cp -pR _site/* public/
- cp _site/fr/index.html public/
artifacts:
paths:
# The folder that contains the files to be exposed at the Page URL
- public
rules:
# This ensures that only pushes to the default branch will trigger
# a pages deploy
- if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
40 changes: 40 additions & 0 deletions content/fr/1-chapeau/1-executive-summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
title: Executive summary
layout: layouts/page.njk
showBreadcrumb: true
eleventyNavigation:
key: Executive summary
parent: À propos
order: 1
---



# Executive summary

À travers sa doctrine « Cloud au centre », l’État encourage l’ensemble des acteurs publics à se saisir de son potentiel afin de développer une nouvelle génération de services numériques de qualité, tout en protégeant au mieux les données des entreprises et des citoyens français.

Dans le but de disposer un SI adapté et agile, le MIOM a posé un ensemble de normes techniques et des recommandations de nature, formalisés dans un document de Cadre de Cohérence Technique (CCT), pour le développement de nouvelles applications compatibles avec ces normes et hébergées sur son infrastructure, et de services de qualité qui répondent aux besoins des métiers et déployables rapidement et à coûts réduits.

Ce document représente le document « chapeau » du Cadre de Cohérence Technique (CCT) qui vise à faire le lien vers d’autres documents, selon les offres du MIOM et interministériel, dont chacun d’eux est couplé d’un guide de bonnes pratiques et d’une liste d’annexes et d’exigences.

Le premier chapitre de ce document décrit le contexte et les objectifs du CCT. Il donne une visibilité sur son architecture documentaire et son applicabilité selon différents cas d’usages, tout en mentionnant les domaines concernés et les acteurs ciblés ainsi que son utilisation au sein des projets et des processus du MIOM et interministériel. Le deuxième chapitre défini le cadre d’applicabilité de ce CCT sur les différentes offres de services avec les usages concernés et le dernier chapitre définit son cycle de vie et sa « gouvernance.

Pour un accès rapide aux documents du CCT correspondant à votre besoin, vous pouvez vous référer au tableau ci-dessous :

{% from "components/component.njk" import component with context %}
{{ component("table", {
title: "Interet des contenus du site",
headers: ["","Env. numérique de travail (MIOM et Intermin)", "Legacy / Cloud Pi (MIOM)","Cloud Native (Intermin)","Guide de bonnes pratiques d'archi (Intermin et MIOM)","Guide de bonnes pratiques de sécurité (Intermin et MIOM)"],
data: [
["Env. numérique de travail *uniquement*","X","","","X","X"],
["Env. numérique de travail & Cloud Pi Native","X","","X","X","X"],
["Env. numérique de travail & Legacy/Cloud Pi","X","X","","X","X"],
["Cloud Pi Native *uniquement*","","","X","X","X"],
["Legacy/Cloud Pi *uniquement*","","X","","X","X"]
]
}) }}



{%include "components/back_to_top.njk" %}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
---
title: Pour commencer
title: Présentation générale
layout: layouts/page.njk
showBreadcrumb: true
eleventyNavigation:
key: pour commencer
parent: Présentation
order: 1
key: Présentation générale
parent: À propos
order: 2
---

À travers sa doctrine « Cloud au centre », l’État encourage l’ensemble des acteurs publics
Expand Down Expand Up @@ -70,11 +70,10 @@ Ce CCT chapeau doit permettre aux Concepteurs/Développeurs, architectes, chefs

Ce document représente le document « chapeau » du CCT qui vise à faire le lien vers d’autres documents, selon les offres du MIOM et interministériel, dont chacun d’eux est couplé d’un guide de bonnes pratiques et d’une liste d’annexes et d’exigences.
Pour plus de flexibilité dans l’évolution et dans l’applicabilité du CCT, celui-ci est scindé en plusieurs documents dont l’architecture est détaillée dans le chapitre 1.3. Ce document « chapeau » vise à faire le lien vers d’autres documents listés ci-dessous dont chacun d’eux est couplé d’une liste d’annexes et d’exigences.
- Environnements numériques de travail
- Legacy
- Cloud Native
- Guides de bonnes pratiques d’architecture
- Guides de bonnes pratiques de sécurité
- [Environnements numériques de travail](../../4-environnement-numerique-de-travail/introduction/)
- [Offres d'hebergement](../../3-doctrine-d-hebergement/introduction/)
- [Socle d’architecture](../../5-socle-d-architecture/Introduction/)
- [Socle de sécurité](../../6-socle-de-securite/introduction/)

## Architecture documentaire et applicabilité selon les cas

Expand All @@ -94,8 +93,8 @@ l’application : a-t-elle une interface « client lourd » ? Une implémentatio

*Figure: Les documents du CCT à utiliser en fonction des types d'application*.

- Dans le cas d’une application existante avec des évolutions mineures (définir ce
qu’est une évolution mineure) à intégrer, quelque soit le type de solution (2.a, 2.b,

- Dans le cas d’une application existante avec des évolutions mineures (définir ce qu’est une évolution mineure) à intégrer, quelque soit le type de solution (2.a, 2.b,
2.c, 2.d ou 2.e) le cadre d’applicabilité sera revu selon les spécificités de chaque
application et des évolutions.

Expand Down Expand Up @@ -179,17 +178,23 @@ d‘applications existantes.
non compatibles avec les nouvelles normes. Elle ne pourra être utilisée pour
des nouveaux usages que de manière exceptionnelle et dérogatoire.

|Critères de comparaison|Legacy|Cloud Native|
|--------|----------|------|
| **Modèle de responsabilité**| Responsabilité entièrement portée par le MIOM à partir de l’intégration de l’application, sur le déploiement et l’exploitation| Responsabilité partagée avec une autonomisation du développeur « you build it,you run it »|
|**Processus de déploiement**| Tests, intégration et déploiement manuels ou semi-automatisés|Tests, intégration et déploiements automatisés Déploiements fréquents |
|**Exigences et contrôle**|Cadre et exigences sur l’ensemble des couches de l’application Contrôle complet de l’application et infrastructure, homologation de bout en bout| Cadre et exigences focalisés sur les interfaces de l’application et les données exposées Liberté laissée au développeur tant que les interfaces sont respectées|
|**Consommation service transverse**|Services transverses à mettre en œuvre et intégrer «manuellement»| Intégration native des services sur étagère et automatiquement|
|**Valorisation de la donnée**|Intégration «manuelle» aux services d’exposition de la donnée|Capacités «sur étagère» et automatisée d’exposition des données|
|**Observabilité**|Logs non normés, peu ou pas centralisés.|Centralisation systématique du monitoring et des logs de l’infrastructure et des applications permettant une vision 360 sur l’application Normalisation des logs (techniques, métiers, sécurité)|
|**Processus de run**|Exploitation des applications dans un modèle **«pet»**, configurations manuelles et réparation des incidents au sein des serveurs|Exploitation dans un modèle **«cattle»**, détection automatisée des problèmes (health check) et reconstruction des containers plutôt que réparation|


{% from "components/component.njk" import component with context %}
{{ component("table", {
title: "",
headers: ["Critères de comparaison","Hors Cloud Native","Cloud Native"],
data: [
["Modèle de responsabilité","Responsabilité entièrement portée par le MIOM à partir de l’intégration de l’application, sur le déploiement et l’exploitation","Responsabilité partagée avec une autonomisation du développeur 'you build it,you run it'"],
["Processus de déploiement","Tests, intégration et déploiement manuels ou semi-automatisés","Tests, intégration et déploiements automatisés Déploiements fréquents"],
["Exigences et contrôle","Cadre et exigences sur l’ensemble des couches de l’application Contrôle complet de l’application et infrastructure, homologation de bout en bout","Cadre et exigences focalisés sur les interfaces de l’application et les données exposées Liberté laissée au développeur tant que les interfaces sont respectées"],
["Consommation service transverse","Services transverses à mettre en œuvre et intégrer 'manuellement'","Intégration native des services sur étagère et automatiquement"],
["Valorisation de la donnée","Intégration 'manuelle' aux services d’exposition de la donnée","Capacités 'sur étagère' et automatisée d’exposition des données"],
["Observabilité","Logs non normés, peu ou pas centralisés","Centralisation systématique du monitoring et des logs de l’infrastructure et des applications permettant une vision 360 sur l’application Normalisation des logs (techniques, métiers, sécurité)"],
["Processus de run","Exploitation des applications dans un modèle 'pet', configurations manuelles et réparation des incidents au sein des serveurs","Exploitation dans un modèle 'cattle', détection automatisée des problèmes (health check) et reconstruction des containers plutôt que réparation"]
]
}) }}


### Détail sur les contrôles et validation en fonction de l’application

- Pour les grandes applications:
Expand Down Expand Up @@ -244,7 +249,12 @@ des chefs de projets
<br>

:::callout Thèmes
<<<<<<< HEAD:content/fr/1-chapeau/2-presentation-generale.md
[Après cette saine lecture découvrons les](../../blog/)
=======
[Après cette saine lecture découvrons les](../blog/)
>>>>>>> main:content/fr/chapeau.md
:::

{% include "components/back_to_top.njk" %}

{% include "components/back_to_top.njk" %}
68 changes: 68 additions & 0 deletions content/fr/1-chapeau/Guide_CCT_dans_la_commande_publique.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
title: CCT dans la passation des marchés publics
layout: layouts/page.njk
showBreadcrumb: true
eleventyNavigation:
key: CCT dans la passation des marchés publics
parent: À propos
order: 3
---


# Guide d’utilisation du CCT dans la passation des marchés publics

## <a name="CCT">Cadre de Cohérence Technique (CCT)</a>

Le Cadre de Cohérence Technique (CCT) est un dispositif, à disposition des acteurs SIC, chefs de projets et prestataires, qui a pour objectif la maîtrise du système d’information, la réduction des coûts et la capitalisation sur les compétences. Il concourt à fournir à l’utilisateur – qu’il soit citoyen/usager, agent, entreprise, ou association - un service numérique de qualité. Cet objectif de qualité doit s'entendre dans toutes ses composantes :

- en terme de qualité logicielle : un service simple et compréhensible, répondant au besoin, accessible à tous, sécurisé, et préservant les données personnelles
- en terme de délai et d'évolutivité : le bon service au bon moment
- en terme de coût : même si en général le service est gratuit, c'est bien l'argent du contribuable qui est mobilisé pour le produire, le maintenir et le faire évoluer

Le CCT du ministère de l'intérieur est constitué de nombreux contenus, mais dans l'optique des marchés publics deux éléments jouent un rôle fondamental :

- un guide d'intégration
- un référentiel de produits


### <a name="GI">Le guide d'intégration</a>

Le guide d'intégration liste les conditions de la bonne intégration d'une application dans l'écosystème ministériel et interministériel. Il ne porte pas, ou peu, sur l'architecture interne de ladite application mais apporte un cadre quant à ses interfaces avec l'écosystème du SI de l'État. La conformité de l'application ou du produit à ces interfaces en est un gage de réussite. Les interfaces sont classifiées dans 6 piliers que sont l'utilisateur, les données et API, la sécurité du SI, la fabrique de code, l'hébergement et les services transverses. Cf schéma ci-dessous.

![Rosace](/img/CommandePubliquesAutres.png/)

Chaque pilier comporte un certain nombre de fiches de domaine qui énoncent chacune

- le contexte et les enjeux du domaine
- les règles et recommandations propres au domaine
- les composants mutualisés, les API, ou les offres de service sur étagère, qu'il convient d'utiliser sauf justification expresse

### <a name="Prod">Le référentiel des produits</a>

Le référentiel des produits est l’une des composantes, historique, du CCT ministériel. Il concourt à la finalité du CCT en préconisant, pour chaque fonction logicielle des composants maîtrisés par le ministère, avec une parité volontariste entre solution éditeur et solution libre.

Certains produits, quand ils ne figurent pas au référentiel, peuvent déroger à la règle commune s'ils sont **logiciels « embarqués » dans une application métier.** On entend par logiciel « embarqué » dans une application métier un logiciel **qui ne nécessite aucune intervention ni aucune compétence spécifique de la part des exploitants** (dont les intégrateurs, architectes ....) , notamment :

- l'installation et la mise à jour de ces logiciels embarqués sont pleinement intégrées à celles de l'application métier qui les utilise
- ces composants ne nécessitent pas de TMA (Tierce Maintenance Applicative) ni de MCO (Maintien en Conditions Opérationnelles) spécifique.

### <a name="Regl">Règles et recommandations</a>

|Ref|Statut|Intitulé|
|---|------|--------|
|-|RG|` `Un fournisseur désirant inclure dans sa solution un composant non référencé et donc non maîtrisé par le ministère dans le référentiel des produits du CCT, devra remplir les garanties pour que celui-ci puisse être considéré comme un logiciel « embarqué » dans l’application, et devra s’assurer que l’usage de ce composant n’impact pas la sécurité du SI. La gestion de ce composant est alors à la charge du demandeur sur tout le cycle de vie de celui-ci.|

## <a name="Doc">Ressources documentaires</a>

De nombreux clausiers sont disponibles sur étagère. Quelques références suivent ci-dessous.

- Le site <https://www.numerique.gouv.fr/> présente dans le cas du logiciel libre des [« conseils à la rédaction de clauses de propriété intellectuelle pour les marchés de développement et de maintenance de logiciels libres »](https://www.economie.gouv.fr/apie/actualites/conseils-redaction-clauses-propriete-intellectuelle)
- Le [site du SHFD - Service du Haut Fonctionnaire de Défense](http://ssi.minint.fr) présente ses propres [clauses concernant la sécurité du système d'information](http://ssi.minint.fr/index.php/clauses-de-securite-dans-les-marches) ainsi qu'un [guide de l'externalisation](http://ssi.minint.fr/files/referentiel_SSI/SSI_global/Guide_externalisation_V_1_0-1.pdf)
- Clausier propriété intellectuelle avec l’APIE et la DAE (Direction des Achats de l'État), daté de mars 2019 : [Guide de l'achat public - Achats informatiques et propriété intellectuelle](https://www.economie.gouv.fr/files/files/directions_services/dae/doc/Guide_PII_web.pdf).
- Pour information : [Publications de l'Agence du Patrimoine Immatériel de l'État (APIE)](https://www.economie.gouv.fr/apie/publications)

**Remarque :** le contenu des offres de service est mis à disposition du soumissionnaire en tant que de besoin.



{%include "components/back_to_top.njk" %}
1 change: 1 addition & 0 deletions content/fr/1-chapeau/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Cet espace regroupe les contenus qui présentent le Cadre de cohérence Technique. Les documents de cet espace posent le contexte, les objectifs, les modalités d'usages du Cadre de cohérence Technique.
Loading

0 comments on commit 7e2ed8e

Please sign in to comment.