Réserver une Démo

SVP notez : Cette page d’aide n’est pas pour la dernière version d’Enterprise Architect. La dernière aide peut être trouvée ici.

Pré. Proc.

Informations d'identification de l'utilisateur pour accéder à l'API OSLC RESTful

Pour récupérer, mettre à jour, créer ou supprimer une ressource/fonctionnalité de ressource, vous devez transmettre un jeton d'authentification utilisateur avec la requête Fonctionnalité GET/POST. Si le modèle connecté via Pro Cloud Server a la sécurité utilisateur activée via les informations d'identification du Modèle ou l'authentification OpenID, vous devrez authentifier l'utilisateur pour recevoir un jeton d'authentification utilisateur. Alors que, pour un modèle qui n'a pas de sécurité utilisateur, vous pouvez directement demander un jeton d'authentification utilisateur. À moins que vous ne transmettiez le jeton d'authentification de l'utilisateur, la demande OSLC ne sera pas traitée par le Pro Cloud Server .

Pour obtenir le jeton d'authentification utilisateur :

  • Dans un Modèle sur lequel l'authentification OpenID est activée, POSTez le code d'autorisation et redirigez l'URI vers une URL spécifique ; le code d'autorisation peut être obtenu en autorisant l'utilisateur au point de terminaison de l'URI d' autorisation (qui est spécifié dans la ressource du fournisseur de services ); l'URI de redirection est l'URI à laquelle le code d'autorisation est envoyé par le serveur OpenID (ceci est spécifié dans la configuration du serveur OpenID)
  • Dans un modèle sur lequel Modèle Credential Security est activé, Modèle les informations d'identification Enterprise Architect Modèle Security de l'utilisateur ( ID utilisateur et mot de passe) vers une URL spécifique ; ce sont les mêmes informations d'identification que vous saisirez dans la boîte de dialogue "Connexion à EA Référentiel " dans un modèle sécurisé
  • Dans un Modèle qui n'a pas de Modèle de sécurité, appelez une URL spécifique
  • Une fois la validation réussie, le XML renvoyé contiendra le jeton d'authentification de l'utilisateur (entre autres informations) dans l'élément XML 'ss:useridentifier'

Demande de jeton d'authentification utilisateur

Marcher

Action

1

Si le modèle a :

  • Authentification OpenID activée, passez à l'étape 2
  • Authentification Windows NTLM activée, passez à l'étape 3
  • Modèle Credential Security activé, passez à l'étape 4
  • pas de Modèle Security, passez à l'étape 5

2

Validez l' ID utilisateur en postant le code d'autorisation et redirigez l'URI vers :

URL : <protocole>://<serveur>/<nom_modèle>/oslc/am/login/

Corps POST : sso=openid;code=<AUTHORIZATION CODE>;redirecturi=<REDIRECT URI> ;

Passez à l'étape 6.

3

Obtenez le jeton d'authentification utilisateur en postant cette URL :

URL : <protocole>://<serveur>/<nom_modèle>/oslc/am/login/

Corps POST : sso=ntlm ;

Passez à l'étape 6.

4

Validez l' ID utilisateur en postant les informations d'identification Enterprise Architect Modèle Security de son utilisateur à :

URL : <protocole>://<serveur>/<nom_modèle>/oslc/am/login/

Corps POST : uid=<ID UTILISATEUR> ;pwd=<MOT DE PASSE> ;

Passez à l'étape 6.

5

Obtenez le jeton d'authentification utilisateur en postant cette URL :

URL : <protocole>://<serveur>/<nom_modèle>/oslc/am/login/

POST Corps : uid=;pwd= ;

6

Si la validation réussit, la réponse sera généralement :

<?xml version="1.0" encoding="UTF-8" ?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:ss="http://www.sparxsystems.com.au/oslc_am#"

xmlns:foaf="http://xmlns.com/foaf/0.1/">

<ss:connexion>

<!-- valeur booléenne qui spécifie si le modèle autorise la création/mise à jour de ressources-->

<ss:readonlymodel>VALEUR</ss:readonlymodel>

<!-- valeur booléenne qui spécifie si vous avez une licence Pro Cloud Server valide-->

<ss:validlicense>VALEUR</ss:validlicense>

<!--spécifie le nom complet et l' ID utilisateur de l'utilisateur dans un modèle à sécurité activée-->

<ss:userfullname>

<foaf:Personne>

<foaf:name>NOM COMPLET</foaf:name>

<foaf:nick>ID UTILISATEUR</foaf:nick>

</foaf:Personne>

</ss:userfullname>

<!--spécifie le jeton d'authentification utilisateur-->

<ss:useridentifier>JETON D'AUTHENTIFICATION UTILISATEUR</ss:useridentifier>

<!--spécifie le jeton d'accès OpenID dans un Modèle qui prend en supporte l'authentification OpenID-->

<ss:accesstoken>JETON D'ACCÈS OPENID</ss:accesstoken>

<!--spécifie le jeton d'actualisation OpenID dans un Modèle en supporte l'authentification OpenID-->

<ss:refreshtoken>TOKEN D'ACTUALISATION OPENID</ss:refreshtoken>

<!-- valeur booléenne qui spécifie si vous avez l'autorisation de créer/mettre à jour des ressources-->

<ss:elementpermission>VALEUR</ss:elementpermission>

<!-- valeur booléenne qui spécifie si vous êtes autorisé à mettre à jour les diagrammes-->

<ss:diagrampermission>VALEUR</ss:diagrampermission>

<!-- valeur booléenne qui spécifie si vous avez l'autorisation de créer/mettre à jour des tests de ressources-->

<ss:testpermission>VALEUR</ss:testpermission>

<!-- valeur booléenne qui spécifie si vous avez l'autorisation de créer/mettre à jour les allocations de ressources-->

<ss:resourceallocationpermission>VALEUR</ss:resourceallocationpermission>

<!-- valeur booléenne qui spécifie si vous avez l'autorisation de créer/mettre à jour les éléments de maintenance des ressources-->

<ss:maintenanceitempermission>VALEUR</ss:maintenanceitempermission>

<!-- valeur booléenne qui spécifie si vous avez la permission de créer/mettre à jour Resource Gestion de Projet Items-->

<ss:projectmanagementitempermission>VALEUR</ss:projectmanagementitempermission>

</ss:connexion>

</rdf:RDF>

En-tête d'autorisation

Lors de la connexion à une définition de port nécessitant une authentification, les demandes OSLC autres que la demande de connexion doivent fournir un en-tête d'autorisation. Si cet en-tête n'est pas fourni, vous recevrez un statut http de 401 Accès refusé.

Schème

Description

OSLC

Une fois que vous avez déjà effectué la connexion, le schéma d'autorisation le plus simple à utiliser est OSLC. Les paramètres d'autorisation ne sont que le guid renvoyé en tant que ss:useridentifier à partir du message de connexion.

Lorsque le jeton d'authentification utilisateur est {72825AF9-E116-48f1-9DF8-77815E66B1A7}, l'en-tête ressemblera à ceci :

Autorisation : OSLC {72825AF9-E116-48f1-9DF8-77815E66B1A7}

Basique

Si "Restreindre l'accès aux utilisateurs Windows et OpenID uniquement" n'est pas sélectionné dans votre modèle, vous pouvez utiliser le schéma d'autorisation de base. Les paramètres d'autorisation sont le nom d'utilisateur et le mot de passe encodés en base64 séparés par deux points.

Lorsque le nom d'utilisateur est aladdin et le mot de passe est opensesame, vous passeriez un en-tête comme celui-ci :

Autorisation : de base YWxhZGRpbjpvcGVuc2VzYW1l

NTLM

Si Accepter l'authentification Windows est activé pour votre modèle, le schéma d'authentification NTLM peut être utilisé.

Votre bibliothèque http doit couvrir les détails, mais le serveur et le client doivent échanger des jetons et les appels OSLC devront passer le deuxième jeton client encodé avec base64.

OpenID

Si OpenID a été configuré pour votre modèle, vous pouvez utiliser le schéma d'authentification OpenID. Suivez les instructions pour obtenir un code d'autorisation d'OpenID, puis incluez-le comme paramètre d'autorisation.

Transmission du jeton d'authentification utilisateur avec les requêtes OSLC

Une fois que vous avez reçu le jeton d'authentification utilisateur, vous le transmettez avec chaque demande OSLC ; c'est-à-dire, transmettez le jeton d'authentification utilisateur :

  • Lors de la récupération d'une ressource ou d'une ressource Fonctionnalité XML en utilisant GET Request comme valeur du paramètre de string de requête 'useridentifier'
  • Lors de la création/mise à jour d'une ressource ou d'une fonctionnalité de ressource en utilisant POST RDF/XML comme valeur de l'élément XML 's: Fonctionnalité '

Transmission du jeton d'authentification utilisateur avec les requêtes GET

Pour les requêtes GET, transmettez le jeton d'authentification utilisateur comme valeur du paramètre string de requête 'useridentifier' :

  • <protocol>://<server>/<model_name>/oslc/am/OSLC REQUEST/?useridentifier=<User Authentication Token>

Non.

Exemple d'entrée

1

Récupérez les propriétés d'une ressource de Paquetage d' Enterprise Architect :

  • Avec le GUID {5147E138-1F14-4738-B721-5FCC0F8821A8}
  • Dans un modèle sécurisé
  • Où le jeton d'authentification de l'utilisateur est {72825AF9-E116-48f1-9DF8-77815E66B1A7}
http://localhost:480/firebird_model/oslc/am/resource/pk_{5147E138-1F14-4738-B721-5FCC0F8821A8}/?useridentifier={72825AF9-E116-48f1-9DF8-77815E66B1A7}

2

Récupérez toutes les ressources :

  • Avec le nom Class1
  • Où le jeton d'authentification de l'utilisateur est {72825AF9-E116-48f1-9DF8-77815E66B1A7}
http://localhost:480/firebird_model/oslc/am/qc/?useridentifier={72825AF9-E116-48f1-9DF8-77815E66B1A7}&oslc.where=dcterms:title="Class1"

Transmission d'un jeton d'authentification utilisateur avec les demandes POST OSLC

Pour les requêtes OSLC POST, vous devez transmettre le jeton d'authentification utilisateur dans le cadre du RDF/XML accompagnant la requête POST.

Non.

Saisir

1

Dans un modèle de sécurité activé où :

  • Le jeton d'authentification utilisateur est {72825AF9-E116-48f1-9DF8-77815E66B1A7}
  • Une classe 'Class1' est créée sous un Paquetage avec le GUID Enterprise Architect {965A54C2-6A89-46d7-AB7E-F192668010CA}
Les Notes , la complexité et la version sont définies.

<?xml version="1.0" encoding="UTF-8" ?>

<rdf:RDF xmlns:oslc_am="http://open-services.net/ns/am#"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dcterms= " http://purl.org/dc/terms/ "

xmlns:foaf="http://xmlns.com/foaf/0.1/ "

xmlns:ss="http://www.sparxsystems.com.au/oslc_am#">

<oslc_am:ressource>

<!--Propriétés requises-->

<dcterms:title>Classe1</dcterms:title>

<dcterms:type>Classe</dcterms:type>

<ss:parentresourceidentifier>pk_{259A54C2-6A89-46d7-AB7E-F192668010CA}</ss:parentresourceidentifier>

<dcterms:description>Créé via OSLC</dcterms:description>

<ss:complexity>Facile</ss:complexity>

<ss:version>1.0</ss:version>

<ss:useridentifier>{72825AF9-E116-48f1-9DF8-77815E66B1A7}</ss:useridentifier>

</oslc_am:Resource>

</rdf:RDF>

2

Dans un modèle où :

  • Le jeton d'authentification utilisateur est {72825AF9-E116-48f1-9DF8-77815E66B1A7}
  • Un acteur 'Actor1' avec le GUID Enterprise Architect {567854C2-6A89-46d7-AB7E-F192668010CA} a son nom mis à jour en 'Actor 1_New'
<?xml version="1.0" encoding="UTF-8" ?>

<rdf:RDF xmlns:oslc_am="http://open-services.net/ns/am#"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dcterms="http://purl.org/dc/terms/ "

xmlns:foaf="http://xmlns.com/foaf/0.1/ "

xmlns:ss="http://www.sparxsystems.com.au/oslc_am#">

<oslc_am:ressource>

<!--Propriétés requises-->

<dcterms:identifier>el_{567854C2-6A89-46d7-AB7E-F192668010CA}</dcterms:identifier>     

<dcterms:title>Actor1_New</dcterms:identifier>

<ss:useridentifier>{72825AF9-E116-48f1-9DF8-77815E66B1A7}</ss:useridentifier>

</oslc_am:Resource>

</rdf:RDF>

Se déconnecter de Modèle

Habituellement, 30 minutes d'inactivité vous log d'un modèle ; vous devrez vous reconnecter en POSTant à l'URL de validation des informations d'identification. Vous pouvez également vous déconnecter d'un modèle en transmettant le jeton d'authentification utilisateur comme valeur du paramètre de string de requête 'useridentifier' dans cette requête GET :

  • <protocol>://<server>/<model_name>/oslc/am/logout/?useridentifier=<User Authentication Token>
En cas de succès (c'est-à-dire que le jeton d'authentification utilisateur transmis est valide), vous recevrez une réponse HTTP 200 OK et vous ne pourrez plus accéder au modèle.

En cas d'échec (c'est-à-dire que le jeton d'authentification utilisateur transmis n'est pas valide), vous recevrez une réponse HTTP 404 Not Found.

Notes

  • Cette facilité est disponible via le Pro Cloud Server , avec une licence valide
  • Une demande OSLC ne sera pas traitée par le Pro Cloud Server à moins que le jeton d'authentification de l'utilisateur ne soit transmis avec la demande
  • 30 minutes d'inactivité vous log d'un modèle ; vous devrez vous reconnecter en POSTant à l'URL de validation des informations d'identification

Apprenez Plus