更新时间:2022-08-16 GMT+08:00

查询映射列表

功能介绍

该接口用于查询映射列表信息。

URI

GET /v3/OS-FEDERATION/mappings

请求

  • Request Header参数说明

    参数

    是否必选

    类型

    说明

    Content-Type

    String

    该字段内容填为“application/json;charset=utf8”

    X-Auth-Token

    String

    已认证的token。

  • 请求样例
    curl -i -k -H 'Accept:application/json' -H 'Content-Type:application/json;charset=utf8' -H "X-Auth-Token:$token" -X GET https://sample.domain.com/v3/OS-FEDERATION/mappings

响应

  • Response Body参数说明

    参数

    是否必选

    类型

    说明

    mappings

    Array

    映射列表。

    links

    Object

    映射的资源链接。

  • mappings参数说明

    参数

    是否必选

    类型

    说明

    id

    String

    映射的ID。

    rules

    Object

    将联邦用户映射为本地用户的规则列表。

    以使用SAML协议为例:

     "rules": [
                {
                    "local": [
                        {
                            "user": {
                                "name": "{0}"
                            }
                        },
                        {
                            "group": {
                                "name": "0cd5e9"
                            }
                        }
                    ],
                    "remote": [
                        {
                            "type": "UserName"
                        },
                        {
                            "type": "orgPersonType",
                            "not_any_of": [
                                "Contractor",
                                "Guest"
                            ]
                        }
    
                    ]
                }
            ]

    local:表示联邦用户在本系统中的用户信息。

    • user:联邦用户在本系统中的用户名称。{0}表示remote中用户信息的第一个属性。
    • group:联邦用户在本系统中所属用户组。

    remote:表示联邦用户在IdP中的用户信息,由断言属性及运算符组成的表达式,取值由断言决定。

    • "type": "UserName"表示IdP断言中的属性。
    • "type": "orgPersonType"表示IdP断言中的属性。
    • "not_any_of":输入属性值中不包含指定值才生效,并返回布尔值,返回值不能用于local块中的占位符。

    links

    Object

    映射的资源链接。

  • 响应样例
    {
        "links": {
            "next": null,
            "previous": null,
            "self": "https://example.com/v3/OS-FEDERATION/mappings"
        },
        "mappings": [
            {
                "id": "ACME",
                "links": {
                    "self": "https://example.com/v3/OS-FEDERATION/mappings/ACME"
                },
                "rules": [
                    {
                        "local": [
                            {
                                "user": {
                                    "name": "{0}"
                                }
                            },
                            {
                                "group": {
                                    "id": "0cd5e9"
                                }
                            }
                        ],
                        "remote": [
                            {
                                "type": "UserName"
                            },
                            {
                                "type": "orgPersonType",
                                "any_one_of": [
                                    "Contractor",
                                    "SubContractor"
                                ]
                            }
                        ]
                    }
                ]
            }
        ]
    }

状态码

状态码

说明

200

请求成功。

400

请求错误。

401

认证失败。

403

鉴权失败。

404

找不到资源。

405

不允许的方法。

413

请求体过大。

500

内部服务错误。

503

服务不可用。