
# 创建身份提供商 - KeystoneCreateIdentityProvider
#### 功能介绍
该接口可以用于++[管理员](https://support.huaweicloud.com/usermanual-iam/iam_01_0001.html)++ 创建身份提供商。请创建身份提供商后，注册协议并修改身份提供商配置。
该接口可以使用全局区域的Endpoint和其他区域的Endpoint调用。IAM的Endpoint请参见：[地区和终端节点](https://developer.huaweicloud.com/endpoint?IAM)。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/IAM/doc?api=KeystoneCreateIdentityProvider)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-iam/iam_19_0001.html)。
#### URI
PUT /v3/OS-FEDERATION/identity_providers/{id}
表1路径参数 
| 参数 | 是否必选 | 参数类型   | 描述       |
|:---|:---|:---|:---|
| id | 是    | String | 身份提供商名称。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                             |
|:---|:---|:---|:---|
| Content-Type | 是    | String | 该字段内容填为"application/json;charset=utf8"。                                                                                        |
| X-Auth-Token | 是    | String | 访问令牌，承载用户的身份、权限等信息。 token所需权限请参见[授权项](https://support.huaweicloud.com/api-iam/iam_19_0001.html)。 |
   
表3请求Body参数 
| 参数                                                                                       | 是否必选 | 参数类型   | 描述       |
|:---|:---|:---|:---|
| [identity_provider] | 是    | Object | 身份提供商信息。 |
   
 表4identity_provider 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| sso_type    | 否    | String  | 参数解释： 身份提供商类型。 约束限制： 同一个账号下两种类型不能同时存在，且iam_user_sso最多只能创建一个。如果选择iam_user_sso，请确保您在云服务平台已创建IAM用户。 取值范围： - virtual_user_sso：联邦登录跳转后映射为虚拟用户。  - iam_user_sso：联邦登录跳转后映射为实际存在的IAM用户。   默认取值： virtual_user_sso |
| description | 否    | String  | 身份提供商描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| enabled     | 否    | Boolean | 身份提供商是否启用，true为启用，false为停用，默认为false。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
#### 响应参数
表5响应Body参数 
| 参数                                                                                                | 参数类型   | 描述       |
|:---|:---|:---|
| [identity_provider] | Object | 身份提供商信息。 |
   
 表6identity_provider 
| 参数                                                                                         | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| sso_type                                                                                   | String           | 参数解释： 身份提供商类型。 约束限制： 同一个账号下两种类型不能同时存在，且iam_user_sso最多只能创建一个。如果选择iam_user_sso，请确保您在云服务平台已创建IAM用户。 取值范围： - virtual_user_sso：联邦登录跳转后映射为虚拟用户。  - iam_user_sso：联邦登录跳转后映射为实际存在的IAM用户。   默认取值： virtual_user_sso |
| id                                                                                         | String           | 身份提供商ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| description                                                                                | String           | 身份提供商描述信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| enabled                                                                                    | Boolean          | 身份提供商是否启用，true为启用，false为停用，默认为false。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| remote_ids                                                                                 | Array of strings | 身份提供商的联邦用户ID列表。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [links] | Object           | 身份提供商的资源链接信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
   
 表7identity_provider.links 
| 参数        | 参数类型   | 描述            |
|:---|:---|:---|
| self      | String | 身份提供商的资源链接地址。 |
| protocols | String | 协议的资源链接地址。    |
   
#### 请求示例
创建身份提供商并且启用。
```
PUT https://iam.myhuaweicloud.com/v3/OS-FEDERATION/identity_providers/{id}
```
```
{
    "identity_provider": {
        "sso_type": "iam_user_sso",
        "description": "Stores ACME identities.",
        "enabled": true
    }
}
```
#### 响应示例
**状态码为 201 时:**
请求成功。
```
{
    "identity_provider": {
        "remote_ids": [],
        "enabled": true,
        "id": "ACME",
        "sso_type": "iam_user_sso",
        "links": {
            "self": "https://iam.myhuaweicloud.com/v3/OS-FEDERATION/identity_providers/ACME",
            "protocols": "https://iam.myhuaweicloud.com/v3/OS-FEDERATION/identity_providers/ACME/protocols"
        },
        "description": "Stores ACME identities."
    }
}
```
#### 返回值
| 返回值 | 描述        |
|:---|:---|
| 201 | 请求成功。     |
| 400 | 参数无效。     |
| 401 | 认证失败。     |
| 403 | 没有操作权限。   |
| 404 | 未找到相应的资源。 |
| 405 | 不允许的方法。   |
| 409 | 资源冲突。     |
| 413 | 请求体过大。    |
| 500 | 请求体过大。    |
| 503 | 服务不可用。    |
   
#### 错误码
无
