1. Vue générale
This API is used to manage certificates for HTTPS access and their associated contexts. This API is used for internal purposes only.
1.1. Information de version
Version : v1
1.2. Information de contact
Contact : Direction de la diffusion et des partenariats
Email de contact : contact@programmevitam.fr
1.3. Information de licence
Licence : License to be defined …
Licence URL : URL not defined.
Conditions de service : Terms of service
1.4. Schéma d’URI
Serveur : localhost
Chemin de base : /
1.5. Tags
-
Certificats : Gestions des certificats
-
Contextes : Gestion des contextes de sécurité
1.6. Produit
-
application/json
2. Ressources
2.1. Certificats
Gestions des certificats
2.1.1. Création d’un certificat
POST /security/v1/certificates
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Body |
dto |
dto |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
Consomme
-
application/json
Exemple de requête HTTP
Requête path
/security/v1/certificates
Requête header
"string"
Requête body
{
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
}
Exemple de réponse HTTP
Réponse 200
{
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
}
2.1.2. Récupération de la liste de certificats
GET /security/v1/certificates
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Query |
criteria |
criteria |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
< CertificateDto > array |
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Exemple de requête HTTP
Requête path
/security/v1/certificates
Requête header
"string"
Requête query
{
"criteria" : "string"
}
Exemple de réponse HTTP
Réponse 200
[ {
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
} ]
2.1.3. Récupération d’un certificat
GET /security/v1/certificates/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Query |
criteria |
criteria |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Exemple de requête HTTP
Requête path
/security/v1/certificates/string
Requête header
"string"
Requête query
{
"criteria" : "string"
}
Exemple de réponse HTTP
Réponse 200
{
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
}
2.1.4. Mise à jour d’un certificat
PUT /security/v1/certificates/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Body |
dto |
dto |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Consomme
-
application/json
Exemple de requête HTTP
Requête path
/security/v1/certificates/string
Requête header
"string"
Requête body
{
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
}
Exemple de réponse HTTP
Réponse 200
{
"contextId" : "string",
"data" : "string",
"id" : "string",
"issuerDN" : "string",
"serialNumber" : "string",
"subjectDN" : "string"
}
2.1.5. Suppression d’un certificat
DELETE /security/v1/certificates/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
Pas de contenu |
2.1.6. Vérification de l’existence d’un certificat
HEAD /security/v1/certificates/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
Pas de contenu |
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
Consomme
-
application/json
2.2. Contextes
Gestion des contextes de sécurité
2.2.1. Création d’un contexte
POST /security/v1/contexts
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Body |
dto |
dto |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
Consomme
-
application/json
Exemple de requête HTTP
Requête path
/security/v1/contexts
Requête header
"string"
Requête body
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
Exemple de réponse HTTP
Réponse 200
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
2.2.2. Récupération de la liste de contextes
GET /security/v1/contexts
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Query |
criteria |
criteria |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
< ContextDto > array |
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Exemple de requête HTTP
Requête path
/security/v1/contexts
Requête header
"string"
Requête query
{
"criteria" : "string"
}
Exemple de réponse HTTP
Réponse 200
[ {
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
} ]
2.2.3. Récupération d’un contexte à partir d’un certificat
POST /security/v1/contexts/certificate
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Body |
data |
data |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
Consomme
-
application/json
Exemple de requête HTTP
Requête path
/security/v1/contexts/certificate
Requête header
"string"
Requête body
{ }
Exemple de réponse HTTP
Réponse 200
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
2.2.4. Récupération d’un contexte à partir d’un identifiant
GET /security/v1/contexts/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Query |
criteria |
criteria |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Exemple de requête HTTP
Requête path
/security/v1/contexts/string
Requête header
"string"
Requête query
{
"criteria" : "string"
}
Exemple de réponse HTTP
Réponse 200
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
2.2.5. Mise à jour d’un contexte
PUT /security/v1/contexts/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Body |
dto |
dto |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Consomme
-
application/json
Exemple de requête HTTP
Requête path
/security/v1/contexts/string
Requête header
"string"
Requête body
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
Exemple de réponse HTTP
Réponse 200
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
2.2.6. Suppression d’un contexte de sécurité
DELETE /security/v1/contexts/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
Pas de contenu |
2.2.7. Vérification de l’existence d’un contexte
HEAD /security/v1/contexts/{id}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
200 |
OK |
Pas de contenu |
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
Consomme
-
application/json
2.2.8. Ajouter un tenant au context
PUT /security/v1/contexts/{id}/tenant/{tenantIdentifier}
Paramètres
Type | Nom | Description | Schéma |
---|---|---|---|
Header |
X-Application-Id |
Identifiant unique transférer utilisé dans la génération des logs et des journaux VITAM |
string |
Header |
X-Tenant-Id |
Identifiant du tenant sur lequel doit être exécutée la requête |
integer (int32) |
Header |
X-User-Token |
Identifiant technique du token généré par le serveur CAS lors de l’autentification |
string |
Path |
id |
id |
string |
Path |
tenantIdentifier |
tenantIdentifier |
integer (int32) |
Réponses
Code HTTP | Description | Schéma |
---|---|---|
201 |
Created |
|
401 |
La requête n’est pas autorisée. Le X-User-Token n’est pas valide |
Pas de contenu |
403 |
L’utilisateur ne possède pas les droits pour effectuer cette opération |
Pas de contenu |
404 |
Non trouvée |
Pas de contenu |
Consomme
-
application/json
Exemple de réponse HTTP
Réponse 201
{
"fullAccess" : true,
"id" : "string",
"name" : "string",
"roleNames" : [ "string" ],
"tenants" : [ 0 ]
}
3. Définitions
3.1. CertificateDto
Nom | Description | Schéma |
---|---|---|
contextId |
Exemple : |
string |
data |
Exemple : |
string |
id |
Exemple : |
string |
issuerDN |
Exemple : |
string |
serialNumber |
Exemple : |
string |
subjectDN |
Exemple : |
string |
3.2. ContextDto
Nom | Description | Schéma |
---|---|---|
fullAccess |
Exemple : |
boolean |
id |
Exemple : |
string |
name |
Exemple : |
string |
roleNames |
Exemple : |
< string > array |
tenants |
Exemple : |
< integer (int32) > array |