预订演示

请注意 : 本帮助页面不适用于最新版本的Enterprise Architect. 最新的帮助文档在这里.

前页 后页

用于访问 OSLC RESTful API 的用户凭据

要检索、更新、创建或删除资源/资源特征,您需要使用 OSLC GET/POST 请求传入用户身份验证令牌。如果通过专业云服务器连接的模型已通过模型凭据或OpenID身份验证启用用户安全,则您必须对用户进行身份验证才能接收用户身份验证令牌。而对于没有用户安全的模型,您可以直接请求用户Authentication Token。除非您传入用户Authentication Token,否则专业云服务器不会处理OSLC请求。

获取用户身份验证令牌:

  • 在启用了OpenID身份验证的模型中,发布授权代码并将 URI 重定向到特定 URL;授权码可以通过在授权用户端点(在服务提供者资源中指定)授权用户获得;重定向 URI 是OpenID服务器发送授权码的 URI(这在OpenID服务器配置中指定)
  • 在启用了模型凭据安全性的模型中,将用户的Enterprise Architect模型安全凭据(用户ID 和密码)发布到特定 URL;这些凭据与您将在启用安全的模型中的“登录到 EA存储库”对话框中键入的凭据相同
  • 在没有模型安全的模型中,调用特定的 URL
  • 验证成功后,返回的 XML 将在 XML元素的 ss:用户中包含用户身份验证令牌(以及其他信息)

请求用户身份验证令牌

行动

1

如果模型有:

  • 启用OpenID验证,前往第 2节
  • 窗口NTLM认证开启,进入第3节
  • 模型凭据安全已启用,转到第 4节
  • 没有模型安全,转到第 5节

2

通过 POST 授权代码和重定向 URI 来验证用户 ID:

URL:<protocol>://<server>/<model_name>/oslc/am/login/

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

转到第 6节。

3

通过 POST 到此 URL 获取用户身份验证令牌:

URL:<protocol>://<server>/<model_name>/oslc/am/login/

POST体:sso=ntlm;

转到第 6节。

4

通过 POST用户的Enterprise Architect模型来验证用户 ID:

URL:<protocol>://<server>/<model_name>/oslc/am/login/

POST体:uid=<USER ID>;pwd=<PASSWORD>;

转到第 6节。

5

通过 POST 到此 URL 获取用户身份验证令牌:

URL:<protocol>://<server>/<model_name>/oslc/am/login/

POST体:uid=;pwd=;

6

如果验证成功,响应通常是:

<?xml 版本=" 1 .0" 编码="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 1 ">

<ss:登录>

<!--布尔值,指定模型是否允许资源创建/更新-->

<ss:readonlymodel>值</ss:readonlymodel>

<!--布尔值,指定您是否拥有有效的专业云服务器许可证-->

<ss:validlicense>值</ss:validlicense>

<!--指定启用安全模型中用户的完整名称和用户ID-->

<ss:用户全名>

<foaf:人>

<foaf:name>全名</foaf:name>

<foaf:nick>用户 ID</foaf:nick>

</foaf:人>

</ss:用户全名>

<!--指定用户Authentication Token-->

<ss:useridentifier>用户身份验证令牌</ss:useridentifier>

<!--指定支持OpenID OpenID的模型访问>

<ss:accesstoken>开放式访问令牌</ss:accesstoken>

<!--指定支持OpenID Authentication的模型中的OpenID Refresh Token-->

<ss:refreshtoken>OPENID 刷新令牌</ss:refreshtoken>

<!--布尔值,指定您是否有权创建/更新资源-->

<ss:elementpermission>值</ss:elementpermission>

<!--布尔值,指定您是否有权更新图表-->

<ss:diagrampermission>值</ss:diagrampermission>

<!--布尔值,指定您是否有权创建/更新资源测试-->

<ss:testpermission>值</ss:testpermission>

<!--布尔值,指定您是否有权创建/更新资源分配-->

<ss:resourceallocationpermission>值</ss:resourceallocationpermission>

<!--布尔值,指定您是否有权创建/更新资源维护项目-->

<ss:maintenanceitepermission>值</ss:maintenanceitepermission>

<!--布尔值,指定您是否有权创建/更新资源项目管理项-->

<ss:projectmanagementitepermission>值</ss:projectmanagementitepermission>

</ss:登录>

</rdf:RDF>

使用 OSLC 请求传递用户身份验证令牌

一旦您收到用户身份验证令牌,您将在每个 OSLC 请求中传递它;即传入用户Authentication Token:

  • 使用 GET 请求作为查询string参数“useridentifier”的值检索资源或资源特征XML 时
  • 当使用 POST RDF/XML 作为 XML元素的 ss:useridentifier 的值创建/更新资源或资源特征时

使用 GET 请求传递用户身份验证令牌

对于 GET 请求,将用户身份验证令牌作为查询string参数 '用户' 的值传入:

  • <protocol>://<server>/<model_name>/oslc/am/OSLC REQUEST/ ?useridentifier=<用户身份验证令牌>

例子

不。

示例输入

1

检索Enterprise Architect包资源的属性:

  • 使用GUID {5147E138-1F14-4738-B721-5FCC0F8821A8}
  • 在启用了安全性的模型中
  • 其中用户身份验证令牌为 {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

检索所有资源:

  • 以 Class1 为名
  • 其中用户身份验证令牌为 {72825AF9-E116-48f1-9DF8-77815E66B1A7}
http:// localhost :480/firebird_model/oslc/am/qc/?useridentifier={72825AF9-E116-48f1-9DF8-77815E66B1A7}&oslc.where=dcterms:title="Class1"

使用 OSLC POST 请求传入用户身份验证令牌

对于 OSLC POST 请求,您需要将用户身份验证令牌作为 POST 请求随附的 RDF/XML 的一部分传入。

例子

不。

输入

1

在 Security Enabled模型中:

  • 用户身份验证令牌为 {72825AF9-E116-48f1-9DF8-77815E66B1A7}
  • A类'Class1'是在一个包下创建的,带有Enterprise Architect GUID {965A54C2-6A89-46d7-AB7E-F192668010CA}
设置了注记、复杂性和版本。

<?xml 版本=" 1 .0" 编码="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 1 "http://xmlns.com/foaf/0.1/"

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

<oslc_am:资源>

<!--必需的属性-->

<dcterms:title>Class1</dcterms:title>

<dcterms:type>类</dcterms:type>

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

<dcterms:description>通过 OSLC 创建</dcterms:description>

<ss:complexity>简单</ss:complexity>

<ss:version> 1 .0</ss:version>

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

</oslc_am:资源>

</rdf:RDF>

2

在某个模型中:

  • 用户身份验证令牌为 {72825AF9-E116-48f1-9DF8-77815E66B1A7}
  • 与参与者 '参与者' 的Enterprise Architect { GUID -AB7E-参与者} 的名称已更新为 '参与者1_
<?xml 版本=" 1 .0" 编码="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 1 "http://xmlns.com/foaf/0.1/"

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

<oslc_am:资源>

<!--必需的属性-->

<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:资源>

</rdf:RDF>

从模型注销

通常,30 分钟不活动log您退出模型;您必须通过 POST 到凭据验证 URL 再次登录。您还可以通过在此 GET 请求中将用户身份验证令牌作为查询string参数 '用户' 的值传递来注销模型:

  • <protocol>://<server>/<model_name>/oslc/am/logout/?useridentifier=<用户Authentication Token>
如果成功(即传入的用户Authentication Token有效),您将收到200确定HTTP响应,您将无法再访问模型。

如果不成功(即传入的用户Authentication Token 无效),您将收到404 Not Found HTTP 响应。

注记

  • 此功能可通过专业云服务器获得,具有有效许可证
  • OSLC请求不会被专业云服务器处理,除非用户Authentication Token随请求一起传入
  • 30 分钟不活动log您退出模型;您必须通过 POST 到凭据验证 URL 再次登录

了解更多