'1.0',
'info' => ['style' => 'ROA', 'product' => 'Eiam-developerapi', 'version' => '2022-02-25'],
'directories' => [
[
'children' => ['ObtainJwtAuthenticationToken', 'FetchOAuthAuthenticationToken', 'GenerateJwtAuthenticationToken', 'ListAuthenticationTokens', 'ObtainJwtAuthenticationTokenByDerivedShortToken', 'ReinstateAuthenticationToken', 'ReinstateAuthenticationTokenByConsumer', 'RevokeAuthenticationToken', 'RevokeAuthenticationTokenByConsumer', 'ValidateAuthenticationToken'],
'type' => 'directory',
'title' => '认证令牌API',
'id' => 424911,
],
[
'children' => ['CreateUserExclusiveCredential', 'ObtainCredential'],
'type' => 'directory',
'title' => '凭据 API',
'id' => 424912,
],
[
'children' => ['ObtainCloudAccountRoleAccessCredential'],
'type' => 'directory',
'title' => '云角色访问凭证 API',
'id' => 424913,
],
[
'children' => ['GenerateTokenByAuthorizationServer', 'GenerateToken', 'GenerateDeviceCode', 'GetUserInfo', 'RevokeToken'],
'type' => 'directory',
'title' => 'OIDC API',
'id' => 424914,
],
[
'children' => ['GetApplicationProvisioningScope'],
'type' => 'directory',
'title' => '授权范围 API',
'id' => 424915,
],
[
'children' => ['CreateOrganizationalUnit', 'PatchOrganizationalUnit', 'GetOrganizationalUnit', 'DeleteOrganizationalUnit', 'ListOrganizationalUnits', 'ListOrganizationalUnitParentIds', 'GetOrganizationalUnitIdByExternalId'],
'type' => 'directory',
'title' => '组织管理 API',
'id' => 424916,
],
[
'children' => ['CreateUser', 'PatchUser', 'GetUser', 'UpdateUserPassword', 'DeleteUser', 'ListUsers', 'EnableUser', 'DisableUser', 'GetUserIdByEmail', 'GetUserIdByPhoneNumber', 'GetUserIdByUserExternalId', 'GetUserIdByUsername', 'SetUserPrimaryOrganizationalUnit', 'AddUserToOrganizationalUnits', 'RemoveUserFromOrganizationalUnits', 'ListGroupsForUser'],
'type' => 'directory',
'title' => '账户管理 API',
'id' => 424917,
],
[
'children' => ['GetGroup', 'CreateGroup', 'PatchGroup', 'DeleteGroup', 'ListGroups', 'AddUsersToGroup', 'RemoveUsersFromGroup', 'ListUsersForGroup'],
'type' => 'directory',
'title' => '账户组管理 API',
'id' => 424918,
],
],
'components' => [
'schemas' => [],
],
'apis' => [
'AddUserToOrganizationalUnits' => [
'summary' => '将一个EIAM账户加入到多个EIAM组织中,这些组织作为账户的从属组织,如果账户已属于相关组织,则不做更新。',
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/addUserToOrganizationalUnits',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'organizationalUnitIds' => [
'title' => '组织ID列表。',
'description' => '组织ID列表。',
'type' => 'array',
'items' => ['description' => '组织ID。', 'type' => 'string', 'required' => false, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'required' => true,
'example' => '[ou_wovwffm62xifdziem7an7xxxxx]',
],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '将一个EIAM账户加入到多个EIAM组织中',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'AddUsersToGroup' => [
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}/actions/addUsersToGroup',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasIEJFYH'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'userIds' => [
'title' => '账户ID列表',
'description' => '账户ID列表',
'type' => 'array',
'items' => ['description' => '账户ID。', 'type' => 'string', 'required' => false, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'required' => true,
'example' => '[user_d6sbsuumeta4h66ec3il7yxxxx}',
],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '将多个EIAM账户加入到一个EIAM组中',
'summary' => '将多个EIAM账户加入到一个EIAM组中,如果账户已属于相关组,则不做更新。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'CreateGroup' => [
'path' => '/v2/{instanceId}/{applicationId}/groups',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas7VNWU7'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'groupName' => ['title' => '组织名称。', 'description' => '组织名称。', 'type' => 'string', 'required' => true, 'example' => 'name001'],
'groupExternalId' => ['title' => '外部ID。', 'description' => '外部ID。', 'type' => 'string', 'required' => false, 'example' => 'group_2bo6lefcewdausyyxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'GroupIdObject',
'description' => 'GroupIdObject',
'type' => 'object',
'properties' => [
'groupId' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
],
],
],
'title' => '创建一个EIAM组',
'summary' => '调用CreateGroup接口,创建组资源。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"groupId\\": \\"group_wovwffm62xifdziem7an7xxxxx\\"\\n}","type":"json"}]',
],
'CreateOrganizationalUnit' => [
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'organizationalUnitName' => ['title' => '机构名称', 'description' => '组织名称,长度限制最长为64字符。', 'type' => 'string', 'required' => true, 'example' => 'name001'],
'parentId' => ['title' => '父机构ID', 'description' => '父组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitExternalId' => ['title' => '机构外部ID', 'description' => '组织外部ID,用于外部数据与IDaaS组织的数据关联映射,默认为IDaaS组织ID,长度限制最长为64字符。', 'type' => 'string', 'required' => false, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'description' => ['title' => '描述', 'description' => '组织描述,长度限制最长为128字符。', 'type' => 'string', 'required' => false, 'example' => '测试组织'],
],
'required' => false,
'example' => 'app_xx001',
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'OrganizationalUnitIdObject',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'organizationalUnitId' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
],
],
],
'title' => '创建一个EIAM组织',
'summary' => '调用CreateOrganizationalUnit接口,在指定组织下创建新组织资源。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内|'."\n"
.'| 400 | MissingParameter.OrganizationalUnitName | The specified parameter:OrganizationalUnitName is required! | 缺少组织名称参数|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx| 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:manage_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"organizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\"\\n}","type":"json"}]',
],
'CreateUser' => [
'summary' => '调用CreateUser接口在指定组织下,创建新的EIAM的账户资源。',
'path' => '/v2/{instanceId}/{applicationId}/users',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'username' => ['title' => '账户名称。', 'description' => '账户名称,可包含英文字母、数字、符号“_” 、“ .”、“@”、“-”,长度最大限制256字符。', 'type' => 'string', 'required' => true, 'example' => 'name001'],
'displayName' => ['title' => '账户展示名。', 'description' => '账户展示名。长度限制最长为128字符。', 'type' => 'string', 'required' => false, 'example' => 'display_name001'],
'password' => ['title' => '密码, 参考密码策略', 'description' => '账户密码,密码规则参考IDaaS控制台密码策略。', 'type' => 'string', 'required' => false, 'example' => 'xxxxx'],
'phoneRegion' => ['title' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +, 手机号若设置,此参数必填', 'description' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +, 手机号若设置,此参数必填。', 'type' => 'string', 'required' => false, 'example' => '86'],
'phoneNumber' => ['title' => '手机号', 'description' => '账户手机号,格式为6~15位数字。', 'type' => 'string', 'required' => false, 'example' => '156xxxxxxx'],
'phoneNumberVerified' => ['title' => '手机号是否验证,手机号若设置此字段必须设置,无特殊业务可直接设置为true', 'description' => '手机号是否验证,手机号若设置此字段必须设置,无特殊业务可直接设置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'email' => ['title' => '邮箱', 'description' => '邮箱,邮箱前缀可包含大写英文字母、小写英文字母、数字、点、下划线或中划线,长度限制最长为128字符。', 'type' => 'string', 'required' => false, 'example' => 'example@example.com'],
'emailVerified' => ['title' => '邮箱是否验证,邮箱若设置此字段必须设置,无特殊业务可直接设置为true', 'description' => '邮箱是否验证,邮箱若设置此字段必须设置,无特殊业务可直接设置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'userExternalId' => ['title' => '账户外部ID', 'description' => '账户外部ID,用于与外部系统的关联,最大长度限制128字符,若不设置,默认设置为账户ID。', 'type' => 'string', 'required' => false, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'primaryOrganizationalUnitId' => ['title' => '账户主机构ID', 'description' => '主组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'description' => ['title' => '描述', 'description' => '账户描述,长度限制最长为256字符。', 'type' => 'string', 'required' => false, 'example' => '测试账户'],
'passwordInitializationConfig' => [
'title' => '密码初始化配置',
'description' => '密码初始化配置。',
'type' => 'object',
'properties' => [
'passwordInitializationPolicyPriority' => ['title' => '密码初始化策略优先级,不传不生效。枚举取值:global(全局优先)、custom(自定义优先)', 'description' => '密码初始化策略优先级,默认不生效,取值可选范围:'."\n"
.'- global:全局优先,采用实例级别的密码初始化策略,即本次设置的密码初始化策略均无效,参考密码相关策略的密码初始化策略。'."\n"
.'- custom:自定义优先,以当前定义的密码初始化策略为准,包括是否开启强制改密、密码初始化方式以及通知渠道。', 'type' => 'string', 'required' => false, 'example' => 'global'],
'passwordForcedUpdateStatus' => ['title' => '强制修改密码状态,默认不启用。枚举取值:enabled(开启)、disabled(禁用)', 'description' => '强制修改密码状态,默认不启用,取值可选范围:'."\n"
.'- enabled:开启。'."\n"
.'- disabled:禁用。', 'type' => 'string', 'required' => false, 'example' => 'enabled'],
'userNotificationChannels' => [
'title' => '密码通知渠道。枚举取值:email(邮件)、sms(短信)',
'description' => '密码通知渠道,取值可选范围:'."\n"
.'- email:邮件。'."\n"
.'- sms:短信。',
'type' => 'array',
'items' => ['description' => '密码通知渠道。', 'type' => 'string', 'required' => false, 'example' => 'email'],
'required' => false,
'example' => 'sms',
],
'passwordInitializationType' => ['title' => '密码初始化方式。枚举取值:random(随机)', 'description' => '密码初始化方式,取值可选范围:'."\n"
.'- random:随机。', 'type' => 'string', 'required' => false, 'example' => 'random'],
],
'required' => false,
],
'customFields' => [
'title' => '扩展字段列表',
'description' => '账户扩展字段列表。',
'type' => 'array',
'items' => [
'description' => '扩展字段标识和值对象。',
'type' => 'object',
'properties' => [
'fieldName' => ['title' => '扩展字段标识', 'description' => '扩展字段标识。类型和值域可通过控制台查看对应扩展字段值的详细信息。', 'type' => 'string', 'required' => false, 'example' => 'age'],
'fieldValue' => ['title' => '扩展字段值', 'description' => '扩展字段值。', 'type' => 'string', 'required' => false, 'example' => 'fieldValue_001'],
],
'required' => false,
],
'required' => false,
],
],
'required' => false,
'example' => 'app_xx001',
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '调用CreateUser接口在指定组织下,创建新的EIAM的账户资源',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'userId' => ['title' => '账户ID。', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\"\\n}","type":"json"}]',
'title' => '创建一个EIAM账户',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | token无效|'."\n"
.'| 400 | invalid_request | Access token application id not match | 请求无效,token信息与参数应用ID不一致|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不存在或组织不在同步范围内|'."\n"
.'| 404 | instance\\_not\\_found | Instance id not found: idaas_ue2jvisn35ea5lmthk267xxxxx | 实例不存在 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 400 | MissingParameter.Username | The specified parameter:Username is required! | 缺少账户名参数 |'."\n"
.'| 400 | MissingParameter.PhoneRegion | The specified parameter:PhoneRegion is required! | 缺少手机区号参数,若已设置手机号,此为必填项 |'."\n"
.'| 400 | MissingParameter.PhoneNumberVerified | The specified parameter:PhoneRegion is required! | 缺少手机区号是否已验证参数,若已设置手机号,此为必填项 |'."\n"
.'| 400 | MissingParameter.Email | The specified parameter:Email is required! | 缺少邮箱是否已验证参数,若已设置邮箱,此为必填项 |'."\n"
.'| 400 | MissingParameter.Username | The specified parameter:Username is required! | 缺少账户名参数 |'."\n"
.'| 400 | MissingParameter.PrimaryOrganizationalUnitId | The specified parameter:PrimaryOrganizationalUnitId is required! | 缺少主组织参数 |'."\n"
.'| 400 | InvalidParameter.PhoneNumber | The specified parameter:PhoneNumber is invalid. | 无效的手机号 |'."\n"
.'| 400 | InvalidParameter.PhoneRegion | The specified parameter:PhoneRegion is invalid. | 无效的手机区号 |'."\n"
.'| 400 | InvalidParameter.Password | The specified parameter:Password is invalid. | 密码不符合规则,请参考IDaaS控制台密码规则 |'."\n"
.'| 400 | InvalidParameter.Email | The specified parameter:Email is invalid. | 无效的邮箱 |'."\n"
.'| 400 | InvalidParameter.DisplayName | The specified parameter:DisplayName is invalid. | 账户显示名过长 |'."\n"
.'| 400 | InvalidParameter.Description | The specified parameter:Description is invalid. | 账户描述过长 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-11-18T04:15:32.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-08-18T08:41:27.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
],
'CreateUserExclusiveCredential' => [
'summary' => '创建账户专属凭据。',
'path' => '/v2/{instanceId}/credentials/_/actions/createUserExclusive',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。 '."\n"
.'> 请输入IDaaS签发的Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => 'EIAM 实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'credentialIdentifier' => ['title' => '凭据标识。', 'description' => '凭据标识。', 'type' => 'string', 'required' => true, 'example' => 'credential_identifier_test'],
'credentialName' => ['title' => '凭据名称。', 'description' => '凭据名称。', 'type' => 'string', 'required' => true, 'example' => 'credential_name'],
'credentialScenarioLabel' => ['title' => '凭据使用场景标签。', 'description' => '凭据的使用场景标签。取值可选范围:'."\n"
.'- llm:大模型。'."\n"
.'- saas:三方 SaaS 服务。', 'type' => 'string', 'required' => false, 'example' => 'llm'],
'credentialType' => ['title' => '凭据类型。', 'description' => '凭据类型。取值可选范围:'."\n"
.'- api_key:API Key认证凭证。'."\n"
.'- oauth_client:OAuth客户端认证凭证。', 'type' => 'string', 'required' => true, 'example' => 'api_key'],
'credentialContent' => [
'title' => '凭据内容。',
'description' => '凭据的内容。',
'type' => 'object',
'properties' => [
'apiKeyContent' => [
'title' => 'Api Key的内容。',
'description' => 'API Key 凭证类型的凭据内容。',
'type' => 'object',
'properties' => [
'apiKey' => ['title' => 'Api Key的值。', 'description' => 'Api Key的值。', 'type' => 'string', 'required' => true, 'example' => 'sk-nsklncmwizncxxxx'],
],
'required' => false,
],
],
'required' => true,
],
'description' => ['title' => '描述。', 'description' => '凭据描述。', 'type' => 'string', 'required' => false, 'example' => 'credential_description'],
'credentialExternalId' => ['title' => '凭据外部唯一标识。', 'type' => 'string'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => '响应体。',
'type' => 'object',
'properties' => [
'credentialId' => ['title' => '凭据ID。', 'description' => '凭据 ID。', 'type' => 'string', 'example' => 'cred_mkv7rgt4d7i4u7zqtzev2mxxxx'],
'credentialIdentifier' => ['title' => '凭据标识。', 'description' => '凭据标识。', 'type' => 'string', 'example' => 'credential_identifier_test'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '创建账户专属凭据',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“管理静态凭据”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为 `urn:cloud:idaas:pam|credential:manage`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"credentialId\\": \\"cred_mkv7rgt4d7i4u7zqtzev2mxxxx\\",\\n \\"credentialIdentifier\\": \\"credential_identifier_test\\"\\n}","type":"json"}]',
],
'DeleteGroup' => [
'summary' => '调用DeleteGroup接口,删除指定组。',
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasJ7WKML', 'FEATUREidaas7VNWU7'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
],
'responses' => [
200 => [],
],
'title' => '删除一个EIAM组',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'DeleteOrganizationalUnit' => [
'summary' => '调用DeleteOrganizationalUnit接口,删除指定组织。',
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits/{organizationalUnitId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'."\n"],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'organizationalUnitId',
'in' => 'path',
'schema' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
],
'responses' => [
200 => [],
],
'title' => '删除一个EIAM组织',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内或不存在|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:manage_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'DeleteUser' => [
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}',
'methods' => ['delete'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
'responses' => [
200 => [],
],
'title' => '删除一个EIAM账户',
'summary' => '调用DeleteUser接口,删除一个EIAM账户信息。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 404 | ResourceNotFound.User | The specified User resource: user_d6sbsuumeta4h66ec3il7yxxxx not found. | 账户不存在 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'DisableUser' => [
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/disable',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas1FXU07'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'required' => true, 'example' => 'user_001'],
],
],
'responses' => [
200 => [],
],
'title' => '禁用一个EIAM账户',
'summary' => '调用DisableUser接口,禁用指定的EIAM账户。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | '."\n"
.'| 404 | ResourceNotFound.User | The specified User resource: user_xxxx not found. | '."\n"
.'| 404 | application_not_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | '."\n"
.'| 403 | application_disabled | Application is disabled | '."\n"
.'| 403 | application_api_disabled | Application api invoke disabled | '."\n"
.'| 403 | permission_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | '."\n"
.'| 500 | Internal Server Error | Internal Server Error |',
'changeSet' => [
['createdAt' => '2022-11-18T04:15:27.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'EnableUser' => [
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/enable',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas1FXU07'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'required' => true, 'example' => 'user_001'],
],
],
'responses' => [
200 => [],
],
'title' => '启用一个EIAM账户',
'summary' => '调用EnableUser接口,启用指定的EIAM账户。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | '."\n"
.'| 404 | ResourceNotFound.User | The specified User resource: user_xxxx not found. | '."\n"
.'| 404 | application_not_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | '."\n"
.'| 403 | application_disabled | Application is disabled | '."\n"
.'| 403 | application_api_disabled | Application api invoke disabled | '."\n"
.'| 403 | permission_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | '."\n"
.'| 500 | Internal Server Error | Internal Server Error |',
'changeSet' => [
['createdAt' => '2022-11-18T04:15:27.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'FetchOAuthAuthenticationToken' => [
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/fetchOAuthAccessToken',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求Body。',
'type' => 'object',
'properties' => [
'credentialProviderIdentifier' => ['title' => '凭据提供商的业务标识。', 'description' => '凭据提供商标识。', 'type' => 'string', 'required' => true, 'example' => 'test_example_identifier'],
'scope' => ['title' => 'OAuth协议的scope。', 'description' => '对应OAuth协议的scope。'."\n"
."\n"
.'> 若不指定,则签发出的OAuth Access Token的scope范围为对应的凭据提供商处的Scope配置。'."\n"
."\n"
.'>多个 Scope 值之间会通过空格分隔。>', 'type' => 'string', 'required' => false, 'example' => 'example:test_01 example:test_02'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'OAuth认证令牌详情。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => '实例 ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌ID。', 'type' => 'string', 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
'credentialProviderId' => ['title' => '凭据提供商的ID。', 'description' => '凭据提供商 ID。', 'type' => 'string', 'example' => 'atp_01kr2cmj5gxxx4fvmls2e93dxxxxx'],
'createTime' => ['title' => '认证令牌的创建时间,Unix时间戳。', 'description' => '认证令牌的创建时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '认证令牌的更新时间,Unix时间戳。', 'description' => '认证令牌的更新时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'authenticationTokenType' => ['title' => '认证令牌的类型。', 'description' => '认证令牌类型。'."\n"
."\n"
.'> 取值固定为`oauth_access_token`,表示OAuth Access Token类型的认证令牌。', 'type' => 'string', 'example' => 'oauth_access_token'],
'revoked' => ['title' => '认证令牌是否被吊销。', 'description' => '认证令牌是否被吊销。', 'type' => 'boolean', 'example' => 'false'],
'creatorType' => ['title' => '认证令牌的创建者类型。', 'description' => '认证令牌创建者类型。取值可选范围:'."\n"
."\n"
.'- application:应用', 'type' => 'string', 'example' => 'application'],
'creatorId' => ['title' => '认证令牌的创建者ID。', 'description' => '认证令牌创建者ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'consumerType' => ['title' => '认证令牌的使用者类型。', 'description' => '认证令牌使用者类型。取值可选范围:'."\n"
."\n"
.'- application:应用'."\n"
.'- custom:自定义类型', 'type' => 'string', 'example' => 'application'],
'consumerId' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'expirationTime' => ['title' => '认证令牌的过期时间,Unix时间戳,单位秒。', 'description' => '认证令牌过期时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1772693568000'],
'oauthAccessTokenContent' => [
'title' => 'OAuth Access Token类型的认证令牌内容。',
'description' => 'OAuth Access Token类型认证令牌内容。',
'type' => 'object',
'properties' => [
'accessTokenValue' => ['title' => '对应OAuth协议中的AccessToken响应的access_token字段。', 'description' => '对应OAuth协议中的Token端点响应的access_token字段。', 'type' => 'string', 'example' => 'DgEBAGP2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'tokenType' => ['title' => '对应OAuth协议中的AccessToken响应的token_type字段。', 'description' => '对应OAuth协议中的Token 端点响应的token_type字段。', 'type' => 'string', 'example' => 'Bearer'],
'scope' => ['title' => '对应OAuth协议中的AccessToken响应的scope字段。', 'description' => '对应OAuth协议中的Token 端点响应的scope字段。', 'type' => 'string', 'example' => 'example:test_01 example:test_02'],
],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '拉取一个有效的OAuth认证令牌',
'summary' => '拉取一个有效的OAuth认证令牌。',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“获取认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:obtain`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"authenticationTokenId\\": \\"atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx\\",\\n \\"credentialProviderId\\": \\"atp_01kr2cmj5gxxx4fvmls2e93dxxxxx\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830225000,\\n \\"authenticationTokenType\\": \\"oauth_access_token\\",\\n \\"revoked\\": false,\\n \\"creatorType\\": \\"application\\",\\n \\"creatorId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"consumerType\\": \\"application\\",\\n \\"consumerId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"expirationTime\\": 1772693568000,\\n \\"oauthAccessTokenContent\\": {\\n \\"accessTokenValue\\": \\"DgEBAGP2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\",\\n \\"tokenType\\": \\"Bearer\\",\\n \\"scope\\": \\"example:test_01 example:test_02\\"\\n }\\n}","type":"json"}]',
],
'GenerateDeviceCode' => [
'summary' => '调用GenerateDeviceCode接口,生成设备流code。',
'path' => '/v2/{instanceId}/{applicationId}/oauth2/device/code',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasUATW0R', 'FEATUREidaasLUEH19'],
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'scope',
'in' => 'query',
'schema' => ['title' => 'scope范围', 'description' => 'scope范围。', 'type' => 'string', 'required' => false, 'example' => 'xxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeviceCodeResponse',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'device_code' => ['title' => '设备验证码', 'description' => '设备码。', 'type' => 'string', 'example' => 'xxxxx'],
'user_code' => ['title' => '终端用户验证码', 'description' => '用户授权码。', 'type' => 'string', 'example' => 'xxxxx'],
'verification_uri' => ['title' => '验证URI', 'description' => '检验uri。', 'type' => 'string', 'example' => 'https://example.com/authorize/device'],
'verification_uri_complete' => ['title' => '包含user_code的完整验证URI', 'description' => '完整的检验uri。', 'type' => 'string', 'example' => 'https://example.com/authorize/device?user_code='."\n"
.'xxxx'],
'expires_in' => ['title' => 'device_code和user_code的有效时长,单位秒', 'description' => '有效时长,单位秒', 'type' => 'integer', 'format' => 'int64', 'example' => '1200'],
'expires_at' => ['title' => '过期时间', 'description' => '失效时间,格式为Unix时间戳,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1653288641'],
'interval' => ['title' => '请求token节点的超时时间,单位秒', 'description' => '请求token节点的超时时间,单位秒', 'type' => 'integer', 'format' => 'int64', 'example' => '5'],
],
],
],
],
'title' => '生成设备Code',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_request | Application is not turn device grant flow on| 设备流授权未开启 |'."\n"
.'| 400 | invalid\\_request | Invalid client id| client id无效 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"device_code\\": \\"xxxxx\\",\\n \\"user_code\\": \\"xxxxx\\",\\n \\"verification_uri\\": \\"https://example.com/authorize/device\\",\\n \\"verification_uri_complete\\": \\"https://example.com/authorize/device?user_code=\\\\nxxxx\\",\\n \\"expires_in\\": 1200,\\n \\"expires_at\\": 1653288641,\\n \\"interval\\": 5\\n}","type":"json"}]',
],
'GenerateJwtAuthenticationToken' => [
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/generateJwt',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'credentialProviderIdentifier' => ['title' => '凭据提供商的业务标识。', 'description' => '凭据提供商标识。', 'type' => 'string', 'required' => true, 'example' => 'test_example_identifier'],
'issuer' => ['title' => '对应JWT的iss字段。', 'description' => '对应JWT的iss字段。', 'type' => 'string', 'required' => false, 'example' => 'https://test.issuer.com'],
'subject' => ['title' => '对应JWT的sub字段。', 'description' => '对应JWT的sub字段。', 'type' => 'string', 'required' => true, 'example' => 'test_jwt_subject'],
'audiences' => [
'title' => '对应JWT的aud字段。',
'description' => '对应JWT的aud字段。',
'type' => 'array',
'items' => ['description' => 'JWT受众。', 'type' => 'string', 'required' => false, 'example' => 'test_jwt_audience'],
'required' => true,
],
'customClaims' => [
'title' => '自定义Claims。',
'description' => '自定义Claims。'."\n"
."\n"
.'>键值对形式,其中键必须为字符串类型。>',
'type' => 'object',
'required' => false,
'additionalProperties' => ['title' => '', 'description' => '自定义Claim键值对。', 'type' => 'any', 'example' => '-'],
],
'expiration' => ['title' => 'JWT的有效时长,单位秒。', 'description' => 'JWT的有效时长,单位秒。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'exclusiveMinimum' => true, 'example' => '900'],
'includeDerivedShortToken' => ['title' => '生成JWT是否需要包含“派生短令牌”。', 'description' => '生成JWT是否需要包含“派生短令牌”。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'JWT认证令牌详情。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => '实例 ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌 ID。', 'type' => 'string', 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
'credentialProviderId' => ['title' => '凭据提供商的ID。', 'description' => '凭据提供商 ID。', 'type' => 'string', 'example' => 'atp_01kr2cmj5gxxx4fvmls2e93dxxxxx'],
'createTime' => ['title' => '认证令牌的创建时间,Unix时间戳。', 'description' => '认证令牌的创建时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '认证令牌的更新时间,Unix时间戳。', 'description' => '认证令牌的更新时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'authenticationTokenType' => ['title' => '认证令牌的类型。', 'description' => '认证令牌类型。'."\n"
."\n"
.'> 取值固定为`jwt`,表示JWT类型的认证令牌。', 'type' => 'string', 'example' => 'jwt'],
'revoked' => ['title' => '认证令牌是否被吊销。', 'description' => '认证令牌是否被吊销。', 'type' => 'boolean', 'example' => 'false'],
'creatorType' => ['title' => '认证令牌的创建者类型。', 'description' => '认证令牌创建者类型。取值可选范围:'."\n"
."\n"
.'- application:应用', 'type' => 'string', 'example' => 'application'],
'creatorId' => ['title' => '认证令牌的创建者ID。', 'description' => '认证令牌创建者 ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'consumerType' => ['title' => '认证令牌的使用者类型。', 'description' => '认证令牌使用者类型。取值可选范围:'."\n"
."\n"
.'- application:应用'."\n"
.'- custom:自定义类型', 'type' => 'string', 'example' => 'custom'],
'consumerId' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者ID。', 'type' => 'string', 'example' => 'test_jwt_subject'],
'expirationTime' => ['title' => '认证令牌的过期时间,Unix时间戳,单位秒。', 'description' => '认证令牌过期时间,Unix时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1772693568000'],
'jwtContent' => [
'title' => 'JWT类型的认证令牌的内容。',
'description' => 'JWT类型认证令牌内容。',
'type' => 'object',
'properties' => [
'jwtValue' => ['title' => 'JWT内容。', 'description' => 'JWT内容。', 'type' => 'string', 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'derivedShortToken' => ['title' => 'JWT的派生短令牌。', 'description' => 'JWT的派生短令牌。', 'type' => 'string', 'example' => 'sk-Nx2vzxxxxxxxxxxxxxxxxx'],
],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '生成一个JWT认证令牌',
'summary' => '生成一个JWT认证令牌。',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“获取认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:obtain`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"authenticationTokenId\\": \\"atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx\\",\\n \\"credentialProviderId\\": \\"atp_01kr2cmj5gxxx4fvmls2e93dxxxxx\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830225000,\\n \\"authenticationTokenType\\": \\"jwt\\",\\n \\"revoked\\": false,\\n \\"creatorType\\": \\"application\\",\\n \\"creatorId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"consumerType\\": \\"custom\\",\\n \\"consumerId\\": \\"test_jwt_subject\\",\\n \\"expirationTime\\": 1772693568000,\\n \\"jwtContent\\": {\\n \\"jwtValue\\": \\"eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\",\\n \\"derivedShortToken\\": \\"sk-Nx2vzxxxxxxxxxxxxxxxxx\\"\\n }\\n}","type":"json"}]',
],
'GenerateToken' => [
'summary' => '使用凭证信息,生成指定IDaaS EIAM实例下某个应用的access token。',
'path' => '/v2/{instanceId}/{applicationId}/oauth2/token',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'produces' => [],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。'."\n", 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。'."\n", 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'client_id',
'in' => 'query',
'schema' => ['description' => '客户端ID。', 'type' => 'string', 'required' => false, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'client_secret',
'in' => 'query',
'schema' => ['description' => '客户端密钥,赋值场景:'."\n"
.'当grant\\_type为client\\_credentials",采用client\\_secret\\_post方式时,需填写此值。'."\n", 'type' => 'string', 'required' => false, 'example' => 'CSEHDcHcrUKHw1CuxkJEHPveWRXBGqVqRsxxxx'],
],
[
'name' => 'grant_type',
'in' => 'query',
'schema' => [
'title' => '授权类型',
'description' => '授权类型,目前支持的类型如下:'."\n"
.'- client\\_credentials 客户端模式,需要传入client\\_id和client\\_secret'."\n"
.'- refresh\\_token 刷新令牌'."\n"
.'- authorization\\_code 授权码模式'."\n"
.'- urn:ietf:params:oauth:grant-type:device_code 设备流模式'."\n"
.'- password 帐密模式',
'type' => 'string',
'required' => true,
'enumValueTitles' => [],
'example' => 'client_credentials',
'enum' => ['authorization_code', 'urn:ietf:params:oauth:grant-type:device_code', 'refresh_token', 'client_credentials', 'password'],
],
],
[
'name' => 'code',
'in' => 'query',
'schema' => ['title' => 'code码', 'description' => '授权code码,传入场景:'."\n"
.'grant\\_type=authorization_code 授权码模式时,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'xxxx'],
],
[
'name' => 'username',
'in' => 'query',
'schema' => ['title' => '用户名', 'description' => '账户名,在帐密模式下,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'uesrname_001'],
],
[
'name' => 'password',
'in' => 'query',
'schema' => ['title' => '密码', 'description' => '账户名,在帐密模式下,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx'],
],
[
'name' => 'device_code',
'in' => 'query',
'schema' => ['title' => '设备码', 'description' => '设备code码,传入场景:'."\n"
.'grant\\_type=urn:ietf:params:oauth:grant-type:device_code即设备流模式时,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'xxxx'],
],
[
'name' => 'redirect_uri',
'in' => 'query',
'schema' => ['title' => '重定向URI', 'description' => '重定向URI,传入场景:'."\n"
.'grant_type=authorization_code 授权码模式时,必须参数,与获取授权码请求中的重定向URI必须是一致的。', 'type' => 'string', 'required' => false, 'example' => 'xxx'],
],
[
'name' => 'refresh_token',
'in' => 'query',
'schema' => ['title' => '更新token', 'description' => '刷新token,传入场景:'."\n"
.'grant\\_type=refresh_token即刷新令牌模式时,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'ATxxx'],
],
[
'name' => 'code_verifier',
'in' => 'query',
'schema' => ['title' => '验证code', 'description' => '授权码模式下,开启PKCE能力时,对应的验证code。', 'type' => 'string', 'required' => false, 'example' => 'xxx'],
],
[
'name' => 'exclusive_tag',
'in' => 'query',
'schema' => ['title' => '排除的tag', 'description' => '排除的tag。', 'type' => 'string', 'required' => false, 'example' => 'ATxxx'],
],
[
'name' => 'scope',
'in' => 'query',
'schema' => ['title' => 'scope范围', 'description' => 'scope范围,非必须,支持多选,多个取值以空格分隔。'."\n"
.'可选取值:'."\n"
.'- openid '."\n"
.'- email'."\n"
.'- phone'."\n"
.'- profile', 'type' => 'string', 'required' => false, 'example' => 'xxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'token信息',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'token_type' => [
'title' => 'token类型,包含Basic,Bearer',
'description' => 'token类型,取值可选范围:'."\n"
.'Basic - Basic类型'."\n"
.'Bearer - Bearer类型',
'type' => 'string',
'enumValueTitles' => ['Basic' => 'Basic', 'Bearer' => 'Bearer'],
'example' => 'Bearer',
],
'access_token' => ['title' => 'access_token', 'description' => 'access_token。', 'type' => 'string', 'example' => 'ATxxx'],
'refresh_token' => ['title' => 'refresh_token', 'description' => 'refresh_token。', 'type' => 'string', 'example' => 'RTxxx'],
'expires_in' => ['title' => '有效时长,单位秒', 'description' => '有效时长,单位秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1200'],
'expires_at' => ['title' => '过期时间', 'description' => '失效时间,格式为Unix时间戳,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1653288641'],
'id_token' => ['title' => 'id_token', 'description' => 'id_token。', 'type' => 'string', 'example' => 'xxxxx'],
],
],
],
],
'title' => '生成应用认证token',
'description' => '目前支持的方式:授权码模式、设备流、刷新token、客户端模式、账密模式。'."\n"
.'### 1. 授权码模式(Authorization Code)'."\n"
.'适用场景:标准OAuth 2.0授权码流程,适用于有前端交互的Web应用。'."\n"
.'调用示例:'."\n"
.' ```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=authorization_code'."\n"
.'&code={授权码}'."\n"
.'&redirect_uri={回调地址}'."\n"
.'&client_id={客户端ID}'."\n"
.'&client_secret={客户端密钥}'."\n"
.' ```'."\n"
.'参数说明:'."\n"
."\n"
.'● code:通过授权端点获取的授权码。'."\n"
."\n"
.'● redirect_uri:必须与获取code时使用的redirect_uri一致'."\n"
."\n"
.'### 1.1 公共客户端下的授权码模式'."\n"
."\n"
.'适用场景:适用于无法安全保存密钥的应用,如SPA、原生应用。该流程中,无需使用 client_secret,但必须使用PKCE机制。调用示例:'."\n"
."\n"
.' ```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=authorization_code'."\n"
.'&code={授权码}'."\n"
.'&redirect_uri={回调地址}'."\n"
.'&client_id={客户端ID}'."\n"
.'&code_verifier={code_verifier}'."\n"
.' ```'."\n"
."\n"
.'参数说明:'."\n"
."\n"
.'● code_verifier:PKCE机制中的验证密钥,客户端在发起授权请求时生成,并用于派生code_challenge。在换取token时,必须将此值原样提交,且必须与生成code_challenge时使用的值一致。'."\n"
."\n"
.'code_verifier和code_challenge生成的Java示例:'."\n"
."\n"
.'``` java'."\n"
.'String codeVerifier = Base64.getUrlEncoder().withoutPadding().encodeToString(new SecureRandom().generateSeed(43));'."\n"
.'String codeChallenge = Base64.getUrlEncoder().withoutPadding().encodeToString(java.security.MessageDigest.getInstance("SHA-256").digest(codeVerifier.getBytes()));'."\n"
.'```'."\n"
."\n"
.'### 2. 设备流(Device Flow)。'."\n"
.'适用场景:适用于电视、IoT等输入受限设备。调用示例:'."\n"
."\n"
.'```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=urn:ietf:params:oauth:grant-type:device_code'."\n"
.'&device_code={设备码}'."\n"
.'&client_id={客户端ID}'."\n"
.'&client_secret={客户端密钥}'."\n"
."\n"
.'```'."\n"
."\n"
.'获取设备码:需先调用`/oauth2/device/code`获取device_code和user_code'."\n"
."\n"
.'### 2.1 公共客户端下的设备流'."\n"
.'适用场景:无法方便地进行交互式登录,且属于公共客户端。调用示例:'."\n"
."\n"
.'```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=urn:ietf:params:oauth:grant-type:device_code'."\n"
.'&device_code={设备码}'."\n"
.'&client_id={客户端ID}'."\n"
."\n"
.'```'."\n"
."\n"
.'### 3. 刷新Token(Refresh Token)。'."\n"
.'适用场景:使用refresh_token获取新的access_token。调用示例:'."\n"
.'```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=refresh_token'."\n"
.'&refresh_token={刷新令牌}'."\n"
.'&client_id={客户端ID}'."\n"
.'&client_secret={客户端密钥}'."\n"
."\n"
.'```'."\n"
."\n"
.'### 4. 客户端模式(Client Credentials)。'."\n"
.'适用场景:服务端间认证,无需用户参与。调用示例:'."\n"
.'```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=client_credentials'."\n"
.'&client_id={客户端ID}'."\n"
.'&client_secret={客户端密钥}'."\n"
.'&scope={权限范围}'."\n"
."\n"
.'```'."\n"
.'### 5. 账密模式(Password)。'."\n"
.'适用场景:传统用户名密码认证(需谨慎使用)。调用示例:'."\n"
.'```'."\n"
.'POST /v2/{instanceId}/{applicationId}/oauth2/token'."\n"
.'Content-Type: application/x-www-form-urlencoded'."\n"
."\n"
.'grant_type=password'."\n"
.'&username={用户名}'."\n"
.'&password={密码}'."\n"
.'&client_id={客户端ID}'."\n"
.'&scope={权限范围}',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_grant | Invalid or not supported grant\\_type: client\\_credentials| 应用API未开放 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2023-04-04T10:57:29.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-11-18T04:15:26.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"token_type\\": \\"Bearer\\",\\n \\"access_token\\": \\"ATxxx\\",\\n \\"refresh_token\\": \\"RTxxx\\",\\n \\"expires_in\\": 1200,\\n \\"expires_at\\": 1653288641,\\n \\"id_token\\": \\"xxxxx\\"\\n}","type":"json"}]',
],
'GenerateTokenByAuthorizationServer' => [
'path' => '/v2/{instanceId}/authorizationServer/{authorizationServerId}/oauth2/token',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'produces' => ['application/json'],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'authorizationServerId',
'in' => 'path',
'schema' => ['title' => '授权服务器ID', 'description' => '授权服务器ID。', 'type' => 'string', 'required' => true, 'example' => 'iauths_system'],
],
[
'name' => 'grant_type',
'in' => 'query',
'schema' => ['title' => '授权类型', 'description' => '授权类型。', 'type' => 'string', 'required' => true, 'example' => 'authorization_code'],
],
[
'name' => 'client_id',
'in' => 'query',
'schema' => ['description' => '客户端ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'code',
'in' => 'query',
'schema' => ['title' => 'code码', 'description' => '授权code码,传入场景:'."\n"
.'grant\\_type=authorization_code 授权码模式时,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'CO541xY59EsKniV2wvWDXZ4jiKxxxxx'],
],
[
'name' => 'username',
'in' => 'query',
'schema' => ['title' => '用户名', 'description' => '用户名。', 'type' => 'string', 'required' => false, 'example' => 'userxxxxx'],
],
[
'name' => 'password',
'in' => 'query',
'schema' => ['title' => '用户密码', 'description' => '用户密码。', 'type' => 'string', 'required' => false, 'example' => 'testxxxxx'],
],
[
'name' => 'device_code',
'in' => 'query',
'schema' => ['title' => '设备码', 'description' => '设备code码,传入场景:'."\n"
.'grant\\_type=urn:ietf:params:oauth:grant-type:device_code即设备流模式时,必填参数。', 'type' => 'string', 'required' => false, 'example' => 'DCxxxxxx'],
],
[
'name' => 'redirect_uri',
'in' => 'query',
'schema' => ['title' => '重定向URI', 'description' => '重定向URI,传入场景:'."\n"
.'grant_type=authorization_code 授权码模式时,必须参数,与获取授权码请求中的重定向URI必须是一致的。', 'type' => 'string', 'required' => false, 'example' => 'https://example.com/xxxxx'],
],
[
'name' => 'refresh_token',
'in' => 'query',
'schema' => ['title' => '刷新token', 'description' => '刷新凭证。', 'type' => 'string', 'required' => false, 'example' => 'RTxxxxx'],
],
[
'name' => 'scope',
'in' => 'query',
'schema' => ['title' => 'scope范围', 'description' => 'scope范围。', 'type' => 'string', 'required' => false, 'example' => 'openid'],
],
[
'name' => 'code_verifier',
'in' => 'query',
'schema' => ['title' => '验证code', 'description' => '验证 code。', 'type' => 'string', 'required' => false, 'example' => 'xxxxx'],
],
[
'name' => 'client_assertion',
'in' => 'query',
'schema' => ['title' => '客户端断言', 'description' => '客户端断言。', 'type' => 'string', 'required' => false, 'example' => 'eyJraWQiOiJLRVlLZ0Iyxxxxx'],
],
[
'name' => 'client_assertion_type',
'in' => 'query',
'schema' => ['title' => '客户端断言的类型', 'description' => '客户端断言的类型。', 'type' => 'string', 'required' => false, 'example' => 'urn:ietf:params:oauth:client-assertion-type:jwt-bearer'],
],
[
'name' => 'application_federated_credential_name',
'in' => 'query',
'schema' => ['title' => '应用联邦凭证名称', 'description' => '应用联邦凭证名称。', 'type' => 'string', 'required' => false, 'example' => 'testxxxxx'],
],
[
'name' => 'client_x509',
'in' => 'query',
'schema' => ['title' => '终端证书', 'description' => '终端证书。', 'type' => 'string', 'required' => false, 'example' => 'testxxxxx'],
],
[
'name' => 'client_x509_chain',
'in' => 'query',
'schema' => ['title' => '中间证书列表', 'description' => '中间证书列表。', 'type' => 'string', 'required' => false, 'example' => 'testxxxxx'],
],
[
'name' => 'client_secret',
'in' => 'query',
'schema' => ['title' => '客户端密钥', 'description' => '客户端密钥。', 'type' => 'string', 'required' => false, 'example' => 'CSEHDcHcrUKHw1CuxkJEHPveWRxxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'token信息',
'description' => 'token信息',
'type' => 'object',
'properties' => [
'token_type' => ['description' => '凭证类型。', 'type' => 'string', 'example' => 'Bearer'],
'access_token' => ['description' => '访问凭证。', 'type' => 'string', 'example' => 'eyJraWQiOiJLRVlLZ0Iyxxxxx'."\n"],
'refresh_token' => ['description' => '刷新凭证。', 'type' => 'string', 'example' => 'ATxxxxx'],
'expires_in' => ['description' => '访问凭证的有效时长,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1200'],
'expires_at' => ['description' => '访问凭证的失效时间,格式为Unix时间戳,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1653288641'],
'id_token' => ['description' => '身份凭证。', 'type' => 'string', 'example' => 'eyJraWQiOiJLRVlLZ0Iyxxxxx'."\n"],
'scope' => ['description' => 'scope 范围。', 'type' => 'string', 'example' => 'openid'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '通过实例级授权服务器生成应用认证 token',
'summary' => '实例级授权服务器 Token 端点',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"token_type\\": \\"Bearer\\",\\n \\"access_token\\": \\"eyJraWQiOiJLRVlLZ0Iyxxxxx\\\\n\\",\\n \\"refresh_token\\": \\"ATxxxxx\\",\\n \\"expires_in\\": 1200,\\n \\"expires_at\\": 1653288641,\\n \\"id_token\\": \\"eyJraWQiOiJLRVlLZ0Iyxxxxx\\\\n\\",\\n \\"scope\\": \\"openid\\"\\n}","type":"json"}]',
],
'GetApplicationProvisioningScope' => [
'path' => '/v2/{instanceId}/{applicationId}/provisioningScope',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas60YEMV'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => ' '."\n"
.'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '同步授权范围',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'organizationalUnitIds' => [
'title' => '机构ID列表',
'description' => '组织ID列表。',
'type' => 'array',
'items' => ['description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'example' => '[ou_xxx001]',
],
'groupIds' => [
'description' => '组ID列表。',
'type' => 'array',
'items' => ['description' => '组ID。', 'type' => 'string', 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
],
],
],
],
'title' => '获取应用同步范围信息',
'summary' => '调用GetApplicationProvisioningScope接口,获取指定实例下对应应用的同步范围信息。',
'description' => '> - 同步范围在IDaaS控制台的应用管理中设置,创建应用之后,默认拥有此API的权限'."\n",
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_001| 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:read_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2025-03-13T10:05:30.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-11T00:42:07.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"organizationalUnitIds\\": [\\n \\"ou_wovwffm62xifdziem7an7xxxxx\\"\\n ],\\n \\"groupIds\\": [\\n \\"group_wovwffm62xifdziem7an7xxxxx\\"\\n ]\\n}","type":"json"}]',
],
'GetGroup' => [
'summary' => '调用GetGroup接口,获取指定组的详细信息。',
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas1LGU5E'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperGroupDTO',
'description' => 'DeveloperGroupDTO',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'groupId' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'example' => 'group_ufdsasn35ea5lmthk267xxxxx'],
'groupName' => ['title' => '组名称。', 'description' => '组名称。', 'type' => 'string', 'example' => 'name_test'],
'description' => ['title' => '组描述。', 'description' => '组描述。', 'type' => 'string', 'example' => 'description_demo'],
'groupExternalId' => ['title' => '组外部标识。', 'description' => '组外部标识。', 'type' => 'string', 'example' => 'group_ufdsasn35ea5lmthk267xxxxx'],
'groupSourceType' => ['title' => '组来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]。', 'description' => '组来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]。', 'type' => 'string', 'example' => 'build_in'],
'groupSourceId' => ['title' => '组来源ID。', 'description' => '组来源ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'createTime' => ['title' => '组创建时间, Unix时间戳格式,单位为毫秒。', 'description' => '组创建时间, Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'updateTime' => ['title' => '组最近一次更新时间,Unix时间戳格式,单位为毫秒。', 'description' => '组最近一次更新时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
],
],
],
],
'title' => '查询一个EIAM组信息',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"groupId\\": \\"group_ufdsasn35ea5lmthk267xxxxx\\",\\n \\"groupName\\": \\"name_test\\",\\n \\"description\\": \\"description_demo\\",\\n \\"groupExternalId\\": \\"group_ufdsasn35ea5lmthk267xxxxx\\",\\n \\"groupSourceType\\": \\"build_in\\",\\n \\"groupSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"createTime\\": 1652085686179,\\n \\"updateTime\\": 1652085686179\\n}","type":"json"}]',
],
'GetOrganizationalUnit' => [
'summary' => '调用GetOrganizationalUnit接口,获取指定组织的详细信息。',
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits/{organizationalUnitId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'organizationalUnitId',
'in' => 'path',
'schema' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperOrganizationalUnitDTO',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'organizationalUnitId' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitName' => ['title' => '机构名称', 'description' => '组织名称。', 'type' => 'string', 'example' => 'name001'],
'parentId' => ['title' => '父机构ID', 'description' => '父组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitExternalId' => ['title' => '外部ID', 'description' => '外部ID。', 'type' => 'string', 'example' => 'id_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitSourceType' => ['title' => '来源类型', 'description' => '来源类型,取值可选范围:'."\n"
.'- build_in - 自建。'."\n"
.'- ding\\_talk - 钉钉导入。'."\n"
.'- ad - AD导入。'."\n"
.'- ldap - LDAP导入。', 'type' => 'string', 'example' => 'build_in'],
'organizationalUnitSourceId' => ['title' => '来源ID', 'description' => '来源ID。', 'type' => 'string', 'example' => 'id_wovwffm62xifdziem7an7xxxxx'],
'createTime' => ['title' => '创建时间,毫秒', 'description' => '创建时间,格式为Unix时间戳,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652083425923'],
'updateTime' => ['title' => '最近一次更新时间,毫秒', 'description' => '最近更新时间,格式为Unix时间戳,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652083425923'],
'description' => ['title' => '描述', 'description' => '描述。', 'type' => 'string', 'example' => 'xxxxx'],
],
],
],
],
'title' => '查询一个EIAM组织信息',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:read_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"organizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitName\\": \\"name001\\",\\n \\"parentId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitExternalId\\": \\"id_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitSourceType\\": \\"build_in\\",\\n \\"organizationalUnitSourceId\\": \\"id_wovwffm62xifdziem7an7xxxxx\\",\\n \\"createTime\\": 1652083425923,\\n \\"updateTime\\": 1652083425923,\\n \\"description\\": \\"xxxxx\\"\\n}","type":"json"}]',
],
'GetOrganizationalUnitIdByExternalId' => [
'summary' => '调用GetOrganizationalUnitIdByExternalId接口,通过组织外部ID获取组织内部ID。',
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits/_/actions/getOrganizationalUnitIdByExternalId',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasZCZ2SC'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'."\n"],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'organizationalUnitExternalId' => ['title' => '组织外部ID', 'description' => '组织外部ID,用于外部数据与IDaaS组织的数据关联映射,默认为IDaaS组织ID。'."\n"
."\n"
.'说明:外部ID在同一来源类型和来源ID下唯一。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitSourceType' => ['title' => '组织来源类型, 取值可选范围: build_in(自建), ding_talk(钉钉导入),ad(AD导入),ldap(LDAP导入)', 'description' => '组织来源类型,取值可选范围:'."\n"
.'- build\\_in:自建。'."\n"
.'- ding\\_talk:钉钉导入。'."\n"
.'- ad:AD导入。'."\n"
.'- ldap:LDAP导入。', 'type' => 'string', 'required' => true, 'example' => 'build_in'],
'organizationalUnitSourceId' => ['title' => '组织来源ID,自建类型(build_in)值为实例ID,非自建类型,为对应企业ID,比如钉钉,对应的corpId', 'description' => '组织来源ID。'."\n"
."\n"
.'自建类型默认为实例ID,其他类型,分别对应不同来源的企业ID,比如钉钉来源对应钉钉企业的corpId。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
'required' => false,
'example' => 'xxx001',
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'OrganizationalUnitIdObject',
'description' => 'OrganizationalUnitIdObject',
'type' => 'object',
'properties' => [
'organizationalUnitId' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
],
],
],
'title' => '通过组织外部ID获取组织ID',
'changeSet' => [
['createdAt' => '2022-08-17T12:25:48.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"organizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\"\\n}","type":"json"}]',
],
'GetUser' => [
'summary' => '调用GetUser接口,查询一个EIAM账户详细信息。',
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperUserDetailDTO',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'organizationalUnits' => [
'title' => '账户所属组织列表',
'description' => '账户所属组织列表。',
'type' => 'array',
'items' => [
'description' => '组织对象。',
'type' => 'object',
'properties' => [
'organizationalUnitId' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitName' => ['title' => '机构名称', 'description' => '组织名称。', 'type' => 'string', 'example' => 'name001'],
'primary' => ['title' => '是否主机构', 'description' => '是否主组织。', 'type' => 'boolean', 'example' => 'true'],
],
],
],
'primaryOrganizationalUnitId' => ['title' => '账户主机构ID', 'description' => '账户主组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'customFields' => [
'title' => '账户扩展字段列表',
'description' => '账户扩展字段列表。',
'type' => 'array',
'items' => [
'description' => '扩展字段数据对象。',
'type' => 'object',
'properties' => [
'fieldName' => ['title' => '字段标识', 'description' => '扩展字段标识。', 'type' => 'string', 'example' => 'xxxx'],
'fieldValue' => ['title' => '字段数据值', 'description' => '字段数据值。'."\n"
.'任何数据类型的字段值均以字符串的方式返回。比如布尔类型返回的值为"true"或"false"', 'type' => 'string', 'example' => '字段数据值'],
],
],
],
'userId' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'username' => ['title' => '账户名', 'description' => '账户名。', 'type' => 'string', 'example' => 'name001'],
'displayName' => ['title' => '显示名', 'description' => '账户显示名。', 'type' => 'string', 'example' => 'display_name001'],
'passwordSet' => ['title' => '密码是否已设置', 'description' => '密码是否已设置。', 'type' => 'boolean', 'example' => 'true'],
'phoneRegion' => ['title' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +', 'description' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +。', 'type' => 'string', 'example' => '86'],
'phoneNumber' => ['title' => '手机号', 'description' => '账户手机号。', 'type' => 'string', 'example' => '156xxxxxxx'],
'phoneNumberVerified' => ['title' => '手机号是否验证', 'description' => '手机号是否已验证,true表示手机号已经过用户验证或被管理员设置为已验证,false表示未验证。', 'type' => 'boolean', 'example' => 'true'],
'email' => ['title' => '邮箱', 'description' => '邮箱。', 'type' => 'string', 'example' => 'example@example.com'],
'emailVerified' => ['title' => '邮箱是否验证', 'description' => '邮箱是否已验证,true表示邮箱已经过用户的验证或被管理员设置为已验证,false表示未验证。', 'type' => 'boolean', 'example' => 'true'],
'userExternalId' => ['title' => '外部ID', 'description' => '账户外部ID,用于外部数据与IDaaS账户的数据关联映射,默认为IDaaS账户ID。'."\n"
."\n"
.'说明:外部ID在同一来源类型和来源ID下唯一。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'userSourceType' => ['title' => '来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]', 'description' => '账户来源类型,取值可选范围:'."\n"
.'- build_in:自建。'."\n"
.'- ding_talk:钉钉导入。'."\n"
.'- ad:AD导入。'."\n"
.'- ldap:LDAP导入', 'type' => 'string', 'example' => 'build_in'],
'userSourceId' => ['title' => '来源ID', 'description' => '账户来源ID。'."\n"
."\n"
.'自建类型默认为实例ID,其他类型,分别对应不同来源的企业ID,比如钉钉来源对应钉钉企业的corpId。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'status' => ['title' => '账户状态, enabled:启用,disabled:禁用', 'description' => '账户状态,取值可选范围:'."\n"
.'enabled - 启用中。'."\n"
.'disabled - 禁用中。', 'type' => 'string', 'example' => 'enabled'],
'accountExpireTime' => ['title' => '账户过期时间, 毫秒时间', 'description' => '账户过期时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'registerTime' => ['description' => '账户注册时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'lockExpireTime' => ['title' => '锁定过期时间, 毫秒时间', 'description' => '账户锁定过期时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'createTime' => ['title' => '创建时间, 毫秒时间', 'description' => '账户创建时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'updateTime' => ['title' => '最近一次更新时间, 毫秒时间', 'description' => '账户最近一次更新时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'description' => ['title' => '账号描述', 'description' => '账户描述。', 'type' => 'string', 'example' => '测试账户'],
'groups' => [
'title' => '账户所属组列表',
'description' => '账户所属组列表。',
'type' => 'array',
'items' => [
'description' => '账户所属组对象。',
'type' => 'object',
'properties' => [
'groupId' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'example' => 'group_ufdsasn35ea5lmthk267xxxxx'],
'groupName' => ['title' => '组名称。', 'description' => '组名称。', 'type' => 'string', 'example' => 'name_test'],
'description' => ['title' => '组描述。', 'description' => '组描述。', 'type' => 'string', 'example' => 'description_demo'],
],
],
],
],
],
],
],
'title' => '查询一个EIAM账户详细信息',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | MissingParameter.xxxx | The specified parameter:xxx is required! | 缺少xxxx参数 |'."\n"
.'| 400 | InvalidParameter.xxxx | The specified parameter:xxxx is required! | xxxx参数无效 |'."\n"
.'| 404 | ResourceNotFound.User | The specified User resource: user_d6sbsuumeta4h66ec3il7yxxxx not found. | 账户不存在 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:read_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2023-04-16T14:35:21.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-11-18T04:15:26.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-08-18T08:41:27.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"organizationalUnits\\": [\\n {\\n \\"organizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitName\\": \\"name001\\",\\n \\"primary\\": true\\n }\\n ],\\n \\"primaryOrganizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"customFields\\": [\\n {\\n \\"fieldName\\": \\"xxxx\\",\\n \\"fieldValue\\": \\"字段数据值\\"\\n }\\n ],\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\",\\n \\"username\\": \\"name001\\",\\n \\"displayName\\": \\"display_name001\\",\\n \\"passwordSet\\": true,\\n \\"phoneRegion\\": \\"86\\",\\n \\"phoneNumber\\": \\"156xxxxxxx\\",\\n \\"phoneNumberVerified\\": true,\\n \\"email\\": \\"example@example.com\\",\\n \\"emailVerified\\": true,\\n \\"userExternalId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\",\\n \\"userSourceType\\": \\"build_in\\",\\n \\"userSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"status\\": \\"enabled\\",\\n \\"accountExpireTime\\": 1652085686179,\\n \\"registerTime\\": 1652085686179,\\n \\"lockExpireTime\\": 1652085686179,\\n \\"createTime\\": 1652085686179,\\n \\"updateTime\\": 1652085686179,\\n \\"description\\": \\"测试账户\\",\\n \\"groups\\": [\\n {\\n \\"groupId\\": \\"group_ufdsasn35ea5lmthk267xxxxx\\",\\n \\"groupName\\": \\"name_test\\",\\n \\"description\\": \\"description_demo\\"\\n }\\n ]\\n}","type":"json"}]',
],
'GetUserIdByEmail' => [
'path' => '/v2/{instanceId}/{applicationId}/users/_/actions/getUserIdByEmail',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'email' => ['title' => '邮箱', 'description' => '账户邮箱。', 'type' => 'string', 'required' => true, 'example' => 'example@example.com'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'userId' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
],
],
'title' => '通过邮箱获取EIAM账户ID',
'summary' => '调用GetUserIdByEmail接口,通过邮箱获取EIAM对应账户ID。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | token无效|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 400 | MissingParameter.Email | The specified parameter: Email is required! | 缺少Email参数 |'."\n"
.'| 400 | ResourceNotFound.UserId| The specified UserId resource: %s not found. | 账户ID不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-08-17T12:25:48.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\"\\n}","type":"json"}]',
],
'GetUserIdByPhoneNumber' => [
'path' => '/v2/{instanceId}/{applicationId}/users/_/actions/getUserIdByPhoneNumber',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'."\n"],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'phoneNumber' => ['title' => '手机号', 'description' => '账户手机号。', 'type' => 'string', 'required' => true, 'example' => '156xxxxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'userId' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
],
],
'title' => '通过手机号获取EIAM账户ID',
'summary' => '调用GetUserIdByPhoneNumber接口,通过手机号获取EIAM对应账户ID。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | token无效|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 400 | MissingParameter.PhoneNumber| The specified parameter: PhoneNumber is required! | 缺少Email参数 |'."\n"
.'| 400 | ResourceNotFound.UserId| The specified UserId resource: %s not found. | 账户ID不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-08-17T12:25:48.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\"\\n}","type":"json"}]',
],
'GetUserIdByUserExternalId' => [
'path' => '/v2/{instanceId}/{applicationId}/users/_/actions/getUserIdByExternalId',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'userExternalId' => ['title' => '账户外部ID', 'description' => '账户外部ID。', 'type' => 'string', 'required' => true, 'example' => 'xxx001'],
'userSourceType' => ['title' => '账户来源类型, 取值可选范围: build_in(自建), ding_talk(钉钉导入),ad(AD导入),ldap(LDAP导入)', 'description' => '账户来源类型,取值可选范围:'."\n"
.'- build_in:自建。'."\n"
.'- ding_talk:钉钉导入。'."\n"
.'- ad:AD导入。'."\n"
.'- ldap:LDAP导入', 'type' => 'string', 'required' => true, 'example' => 'build_in'],
'userSourceId' => ['title' => '账户来源ID,自建类型(build_in)值为实例ID,非自建类型,为对应企业ID,比如钉钉,对应的corpId', 'description' => '账户来源ID。'."\n"
.'自建类型(build_in)值为实例ID,非自建类型,为对应企业ID,比如钉钉,对应的corpId。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'userId' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
],
],
'title' => '通过账户外部ID获取EIAM账户ID',
'summary' => '调用GetUserIdByUserExternalId接口,通过账户外部ID获取EIAM账户ID。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | token无效|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 400 | MissingParameter.UserExternalId | The specified parameter: UserExternalId is required! | 缺少UserExternalId参数 |'."\n"
.'| 400 | MissingParameter.UserSourceType | The specified parameter: UserSourceType is required! | 缺少UserSourceType参数 |'."\n"
.'| 400 | MissingParameter.UserSourceId | The specified parameter: UserSourceId is required! | 缺少UserSourceId参数 |'."\n"
.'| 400 | ResourceNotFound.UserId| The specified UserId resource: %s not found. | 账户ID不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-08-17T12:25:48.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\"\\n}","type":"json"}]',
],
'GetUserIdByUsername' => [
'path' => '/v2/{instanceId}/{applicationId}/users/_/actions/getUserIdByUsername',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'username' => ['title' => '账户名。', 'description' => '账户名。', 'type' => 'string', 'required' => true, 'example' => 'username_001'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'userId' => ['title' => '账户ID。', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
],
],
],
'title' => '通过账户名获取EIAM账户ID',
'summary' => '调用GetUserIdByUsername接口,通过账户名获取EIAM对应账户ID。',
'changeSet' => [
['createdAt' => '2022-09-01T08:18:48.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\"\\n}","type":"json"}]',
],
'GetUserInfo' => [
'summary' => '调用GetUserInfo接口,通过用户token获取账户信息。',
'path' => '/v2/{instanceId}/{applicationId}/oauth2/userinfo',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Map',
'description' => '响应结果。',
'type' => 'object',
'additionalProperties' => ['type' => 'any', 'description' => '账户信息', 'example' => '无'],
],
],
],
'title' => '获取账户信息',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_request | Application is not OIDC application| 非OIDC应用 |'."\n"
.'| 400 | invalid\\_token | Invalid token| token无效 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"key\\": \\"无\\"\\n}","type":"json"}]',
],
'ListAuthenticationTokens' => [
'summary' => '列举认证令牌。',
'path' => '/v2/{instanceId}/authenticationTokens',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['title' => '分页查询,下一页的起始位置索引Token。', 'description' => '分页查询,下一页的起始位置索引Token。', 'type' => 'string', 'required' => false, 'example' => 'NTxxxxxexample'],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['title' => '分页查询,本次查询返回的最大记录数。', 'description' => '分页查询,本次查询返回的最大记录数。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'default' => '20'],
],
[
'name' => 'consumerId',
'in' => 'query',
'schema' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'required' => true, 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
],
[
'name' => 'credentialProviderIdentifier',
'in' => 'query',
'schema' => ['title' => '凭据提供商的业务标识。', 'description' => '凭据提供商标识。', 'type' => 'string', 'required' => true, 'example' => 'test_example_identifier'],
],
[
'name' => 'revoked',
'in' => 'query',
'schema' => ['title' => '认证令牌是否已吊销。', 'description' => '认证令牌是否已吊销。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'expired',
'in' => 'query',
'schema' => ['title' => '认证令牌是否已过期。', 'description' => '认证令牌是否已过期。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '分页查询结果。',
'type' => 'object',
'properties' => [
'entities' => [
'title' => '资源实体列表。',
'description' => '资源实体列表。',
'type' => 'array',
'items' => [
'title' => '资源实体。',
'description' => '认证令牌详情。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => '实例 ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌 ID。', 'type' => 'string', 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
'credentialProviderId' => ['title' => '凭据提供商的ID。', 'description' => '凭据提供商 ID。', 'type' => 'string', 'example' => 'atp_01kr2cmj5gxxx4fvmls2e93dxxxxx'],
'createTime' => ['title' => '认证令牌的创建时间,Unix时间戳。', 'description' => '认证令牌的创建时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '认证令牌的更新时间,Unix时间戳。', 'description' => '认证令牌的更新时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'authenticationTokenType' => ['title' => '认证令牌的类型。', 'description' => '认证令牌类型。取值可选范围:'."\n"
."\n"
.'- jwt:JWT认证令牌'."\n"
.'- oauth_access_token:OAuth Access Token认证令牌', 'type' => 'string', 'example' => 'jwt'],
'revoked' => ['title' => '认证令牌是否被吊销。', 'description' => '认证令牌是否被吊销。', 'type' => 'boolean', 'example' => 'false'],
'creatorType' => ['title' => '认证令牌的创建者类型。', 'description' => '认证令牌创建者类型。取值可选范围:'."\n"
."\n"
.'- application:应用', 'type' => 'string', 'example' => 'application'],
'creatorId' => ['title' => '认证令牌的创建者ID。', 'description' => '认证令牌创建者 ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'consumerType' => ['title' => '认证令牌的使用者类型。', 'description' => '认证令牌使用者类型。取值可选范围:'."\n"
."\n"
.'- application:应用'."\n"
.'- custom:自定义类型', 'type' => 'string', 'example' => 'custom'],
'consumerId' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'example' => 'test_jwt_subject'],
'expirationTime' => ['title' => '认证令牌的过期时间,Unix时间戳,单位秒。', 'description' => '认证令牌过期时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1772693568000'],
],
],
],
'totalCount' => ['title' => '符合查询条件的资源实体总数。', 'description' => '符合查询条件的资源实体总数。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'],
'nextToken' => ['title' => '本次调用返回的查询凭证(Token)值,用于下一次翻页查询(下一页的起始位置索引Token)。', 'description' => '本次调用返回的查询凭证(Token)值,用于下一次翻页查询(下一页的起始位置索引Token)。', 'type' => 'string', 'example' => 'NTxxxexample'],
'maxResults' => ['title' => '本次查询返回的最大记录数', 'description' => '本次查询返回的最大记录数', 'type' => 'integer', 'format' => 'int64', 'example' => '20'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '列举认证令牌',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“查询认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:read`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"entities\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"authenticationTokenId\\": \\"atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx\\",\\n \\"credentialProviderId\\": \\"atp_01kr2cmj5gxxx4fvmls2e93dxxxxx\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830225000,\\n \\"authenticationTokenType\\": \\"jwt\\",\\n \\"revoked\\": false,\\n \\"creatorType\\": \\"application\\",\\n \\"creatorId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"consumerType\\": \\"custom\\",\\n \\"consumerId\\": \\"test_jwt_subject\\",\\n \\"expirationTime\\": 1772693568000\\n }\\n ],\\n \\"totalCount\\": 100,\\n \\"nextToken\\": \\"NTxxxexample\\",\\n \\"maxResults\\": 20\\n}","type":"json"}]',
],
'ListGroups' => [
'summary' => '调用ListGroups接口,分页查询EIAM组信息。',
'path' => '/v2/{instanceId}/{applicationId}/groups',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas1LGU5E'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupNameStartWith',
'in' => 'query',
'schema' => ['title' => '组名称前缀', 'description' => '组名称前缀', 'type' => 'string', 'required' => false, 'example' => 'group_xxx'],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['title' => 'nextToken', 'description' => 'nextToken', 'type' => 'string', 'required' => false, 'example' => 'NTxxx'],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['title' => '单页大小,默认20', 'description' => '单页大小,默认20', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperNextTokenResponse',
'description' => 'DeveloperNextTokenResponse',
'type' => 'object',
'properties' => [
'totalCount' => ['description' => '数据总记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'data' => [
'description' => '返回数据对象。',
'type' => 'array',
'items' => [
'description' => '返回数据对象。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'groupId' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'example' => 'group_ufdsasn35ea5lmthk267xxxxx'],
'groupName' => ['title' => '组名称。', 'description' => '组名称。', 'type' => 'string', 'example' => 'name_test'],
'description' => ['title' => '组描述。', 'description' => '组描述。', 'type' => 'string', 'example' => 'description_demo'],
'groupExternalId' => ['title' => '组外部标识。', 'description' => '组外部标识。', 'type' => 'string', 'example' => 'group_ufdsasn35ea5lmthk267xxxxx'],
'groupSourceType' => ['title' => '组来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]。', 'description' => '组来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]。', 'type' => 'string', 'example' => 'build_in'],
'groupSourceId' => ['title' => '组来源ID。', 'description' => '组来源ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'createTime' => ['title' => '组创建时间, Unix时间戳格式,单位为毫秒。', 'description' => '组创建时间, Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'updateTime' => ['title' => '组最近一次更新时间,Unix时间戳格式,单位为毫秒。', 'description' => '组最近一次更新时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
],
],
],
'nextToken' => ['description' => '用来标记当前开始读取的位置,置空表示从头开始', 'type' => 'string', 'example' => 'NTxxx'],
'maxResults' => ['description' => '一次获取的最大记录数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
],
],
],
],
'title' => '列表查询EIAM组信息',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"totalCount\\": 1000,\\n \\"data\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"groupId\\": \\"group_ufdsasn35ea5lmthk267xxxxx\\",\\n \\"groupName\\": \\"name_test\\",\\n \\"description\\": \\"description_demo\\",\\n \\"groupExternalId\\": \\"group_ufdsasn35ea5lmthk267xxxxx\\",\\n \\"groupSourceType\\": \\"build_in\\",\\n \\"groupSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"createTime\\": 1652085686179,\\n \\"updateTime\\": 1652085686179\\n }\\n ],\\n \\"nextToken\\": \\"NTxxx\\",\\n \\"maxResults\\": 20\\n}","type":"json"}]',
],
'ListGroupsForUser' => [
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/listGroupsForUser',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['title' => 'nextToken', 'description' => 'nextToken', 'type' => 'string', 'required' => false, 'example' => 'NTxxx'],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['title' => '单页大小,默认20', 'description' => '单页大小,默认20', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperNextTokenResponse',
'description' => 'DeveloperNextTokenResponse',
'type' => 'object',
'properties' => [
'totalCount' => ['description' => '数据总记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'data' => [
'description' => '返回数据对象。',
'type' => 'array',
'items' => [
'description' => '返回数据对象。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'groupId' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'groupMemberRelationSourceId' => ['title' => '账户成员关系来源ID', 'description' => '账户成员关系来源ID', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'groupMemberRelationSourceType' => ['title' => '账户成员关系来源类型', 'description' => '账户成员关系来源类型', 'type' => 'string', 'example' => 'build_in'],
],
],
],
'nextToken' => ['description' => '下一次查询的token,为空表示最后一页', 'type' => 'string', 'example' => 'NTxxx'],
'maxResults' => ['description' => '一次获取的最大记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '20'],
],
],
],
],
'title' => '查询一个EIAM账户的组列表',
'summary' => '查询一个EIAM账户所属的组列表。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"totalCount\\": 1000,\\n \\"data\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"groupId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\",\\n \\"groupMemberRelationSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"groupMemberRelationSourceType\\": \\"build_in\\"\\n }\\n ],\\n \\"nextToken\\": \\"NTxxx\\",\\n \\"maxResults\\": 20\\n}","type":"json"}]',
],
'ListOrganizationalUnitParentIds' => [
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits/{organizationalUnitId}/parentIds',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'organizationalUnitId',
'in' => 'path',
'schema' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '父机构列表响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'parentIds' => [
'title' => '父机构ID列表,顺序层级从上到下',
'description' => '先代组织ID列表,顺序层级从上到下,只展示在授权范围内的组织ID。',
'type' => 'array',
'items' => ['description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'example' => '[ou_xxx001]',
],
],
],
],
],
'title' => '列表查询组织先代节点',
'summary' => '调用ListOrganizationalUnitParentIds接口,查询指定组织所有先代节点信息。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:read_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"parentIds\\": [\\n \\"ou_wovwffm62xifdziem7an7xxxxx\\"\\n ]\\n}","type":"json"}]',
],
'ListOrganizationalUnits' => [
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasZCZ2SC'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'."\n"],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'parentId',
'in' => 'query',
'schema' => ['title' => '父机构ID', 'description' => '父组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'pageNumber',
'in' => 'query',
'schema' => ['title' => '页码,默认1', 'description' => '页码,默认1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
],
[
'name' => 'pageSize',
'in' => 'query',
'schema' => ['title' => '单页大小,默认20', 'description' => '单页大小读取记录数,默认20,范围为1~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'GeneralDataListResponse',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'totalCount' => ['title' => '记录总数', 'description' => '数据总记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'data' => [
'description' => '返回数据对象列表。',
'type' => 'array',
'items' => [
'description' => '返回数据对象。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'organizationalUnitId' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitName' => ['title' => '机构名称', 'description' => '组织名称。', 'type' => 'string', 'example' => 'name001'],
'parentId' => ['title' => '父机构ID', 'description' => '父组织ID。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitExternalId' => ['title' => '外部ID', 'description' => '组织外部ID,用于外部数据与IDaaS组织的数据关联映射,默认为IDaaS组织ID。'."\n"
."\n"
.'说明:外部ID在同一来源类型和来源ID下唯一。', 'type' => 'string', 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'organizationalUnitSourceType' => ['title' => '来源类型', 'description' => '组织来源类型,取值可选范围:'."\n"
.'- build\\_in:自建。'."\n"
.'- ding\\_talk:钉钉导入。'."\n"
.'- ad:AD导入。'."\n"
.'- ldap:LDAP导入。', 'type' => 'string', 'example' => 'build_in'],
'organizationalUnitSourceId' => ['title' => '来源ID', 'description' => '组织来源ID。'."\n"
."\n"
.'自建类型默认为实例ID,其他类型,分别对应不同来源的企业ID,比如钉钉来源对应钉钉企业的corpId。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'createTime' => ['title' => '创建时间,毫秒', 'description' => '组织创建时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652083425923'],
'updateTime' => ['title' => '最近一次更新时间,毫秒', 'description' => '组织最近更新时间,Unix时间戳格式,单位为毫秒。'."\n"
."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1652083425923'],
'description' => ['title' => '描述', 'description' => '组织描述。', 'type' => 'string', 'example' => '测试组织'],
],
],
],
],
],
],
],
'title' => '列表查询EIAM组织列表信息',
'summary' => '分页查询EIAM的组织信息。',
'description' => '当您需要获取根组织下的直接子组织时,请求参数应设置为:'."\n"
."\n"
.'```'."\n"
.'{'."\n"
.' "parentOrganizationalUnitId": "ou_root"'."\n"
.'}'."\n"
.'```',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:read_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-19T07:22:56.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"totalCount\\": 1000,\\n \\"data\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"organizationalUnitId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitName\\": \\"name001\\",\\n \\"parentId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitExternalId\\": \\"ou_wovwffm62xifdziem7an7xxxxx\\",\\n \\"organizationalUnitSourceType\\": \\"build_in\\",\\n \\"organizationalUnitSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"createTime\\": 1652083425923,\\n \\"updateTime\\": 1652083425923,\\n \\"description\\": \\"测试组织\\"\\n }\\n ]\\n}","type":"json"}]',
],
'ListUsers' => [
'path' => '/v2/{instanceId}/{applicationId}/users',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasY4QW79'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'organizationalUnitId',
'in' => 'query',
'schema' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'required' => false, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'pageNumber',
'in' => 'query',
'schema' => ['title' => '页码,默认1', 'description' => '页码,默认1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
],
[
'name' => 'pageSize',
'in' => 'query',
'schema' => ['title' => '单页大小,默认20', 'description' => '单页大小读取记录数,默认20,范围为1~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '查询账户列表响应结果',
'description' => '响应结果。',
'type' => 'object',
'properties' => [
'totalCount' => ['title' => '记录总数', 'description' => '数据总记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'data' => [
'description' => '返回数据对象列表。',
'type' => 'array',
'items' => [
'description' => '返回数据对象。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'userId' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'username' => ['title' => '账户名', 'description' => '账户名。', 'type' => 'string', 'example' => 'name001'],
'displayName' => ['title' => '显示名', 'description' => '账户显示名。', 'type' => 'string', 'example' => 'display_name001'],
'passwordSet' => ['title' => '密码是否已设置', 'description' => '密码是否已设置', 'type' => 'boolean', 'example' => 'true'],
'phoneRegion' => ['title' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +', 'description' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +。', 'type' => 'string', 'example' => '86'],
'phoneNumber' => ['title' => '手机号', 'description' => '账户手机号。', 'type' => 'string', 'example' => '156xxxxxxx'],
'phoneNumberVerified' => ['title' => '手机号是否验证', 'description' => '手机号是否已验证,true表示手机号已经过用户验证或被管理员设置为已验证,false表示未验证。', 'type' => 'boolean', 'example' => 'true'],
'email' => ['title' => '邮箱', 'description' => '账户邮箱。', 'type' => 'string', 'example' => 'example@example.com'],
'emailVerified' => ['title' => '邮箱是否验证', 'description' => '邮箱是否已验证,true表示邮箱已经过用户的验证或被管理员设置为已验证,false表示未验证', 'type' => 'boolean', 'example' => 'true'],
'userExternalId' => ['title' => '外部ID', 'description' => '账户外部ID,用于外部数据与IDaaS账户的数据关联映射,默认为IDaaS账户ID。'."\n"
."\n"
.'说明:外部ID在同一来源类型和来源ID下唯一。', 'type' => 'string', 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
'userSourceType' => ['title' => '来源类型,build_in[自建],ding_talk[钉钉导入],ad[AD导入],ldap[LDAP导入]', 'description' => '账户来源类型,取值可选范围:'."\n"
.'- build_in:自建。'."\n"
.'- ding_talk:钉钉导入。'."\n"
.'- ad:AD导入。'."\n"
.'- ldap:LDAP导入', 'type' => 'string', 'example' => 'build_in'],
'userSourceId' => ['title' => '来源ID', 'description' => '账户来源ID。'."\n"
."\n"
.'自建类型默认为实例ID,其他类型,分别对应不同来源的企业ID,比如钉钉来源对应钉钉企业的corpId。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'status' => ['title' => '账户状态, enabled:启用,disabled:禁用', 'description' => '账户状态,取值可选范围:'."\n"
.'enabled - 启用中。'."\n"
.'disabled - 禁用中。', 'type' => 'string', 'example' => 'enabled'],
'accountExpireTime' => ['title' => '账户过期时间, 毫秒时间', 'description' => '账户过期时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'registerTime' => ['description' => '账户注册时间,Unix时间戳格式,单位为毫秒。'."\n"
."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'lockExpireTime' => ['title' => '锁定过期时间, 毫秒时间', 'description' => '账户锁定过期时间,Unix时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'createTime' => ['title' => '创建时间, 毫秒时间', 'description' => '账户创建时间,Unix时间戳格式,单位为毫秒。'."\n"
."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'updateTime' => ['title' => '最近一次更新时间, 毫秒时间', 'description' => '账户最近一次更新时间,Unix时间戳格式,单位为毫秒。'."\n"
."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1652085686179'],
'description' => ['title' => '账号描述', 'description' => '账户描述。', 'type' => 'string', 'example' => '测试账户'],
],
],
],
],
],
],
],
'title' => '列表查询EIAM账户',
'summary' => '调用ListUsers接口,分页查询EIAM账户信息。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app\\_001| 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:read\\_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-11-18T04:15:26.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-08-18T08:41:27.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更、响应参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '响应参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"totalCount\\": 1000,\\n \\"data\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"userId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\",\\n \\"username\\": \\"name001\\",\\n \\"displayName\\": \\"display_name001\\",\\n \\"passwordSet\\": true,\\n \\"phoneRegion\\": \\"86\\",\\n \\"phoneNumber\\": \\"156xxxxxxx\\",\\n \\"phoneNumberVerified\\": true,\\n \\"email\\": \\"example@example.com\\",\\n \\"emailVerified\\": true,\\n \\"userExternalId\\": \\"user_d6sbsuumeta4h66ec3il7yxxxx\\",\\n \\"userSourceType\\": \\"build_in\\",\\n \\"userSourceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"status\\": \\"enabled\\",\\n \\"accountExpireTime\\": 1652085686179,\\n \\"registerTime\\": 1652085686179,\\n \\"lockExpireTime\\": 1652085686179,\\n \\"createTime\\": 1652085686179,\\n \\"updateTime\\": 1652085686179,\\n \\"description\\": \\"测试账户\\"\\n }\\n ]\\n}","type":"json"}]',
],
'ListUsersForGroup' => [
'summary' => '查询一个EIAM组下的账户列表。',
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}/actions/listUsersForGroup',
'methods' => ['get'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasSNKQAN'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['title' => 'nextToken', 'description' => 'nextToken', 'type' => 'string', 'required' => false, 'example' => 'NTxxx'],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['title' => '单页大小,默认20', 'description' => '单页大小,默认20', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'DeveloperNextTokenResponse',
'description' => 'DeveloperNextTokenResponse',
'type' => 'object',
'properties' => [
'totalCount' => ['description' => '数据总记录数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
'data' => [
'description' => '返回数据对象。',
'type' => 'array',
'items' => [
'description' => '返回数据对象。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => '实例ID', 'description' => '实例ID', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'userId' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'example' => 'user_001'],
],
],
],
'nextToken' => ['description' => '分页token,为空表示没有下一页', 'type' => 'string', 'example' => 'NTxxx'],
'maxResults' => ['description' => '一次获取的最大记录数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
],
],
],
],
'title' => '查询一个EIAM组下的账户列表',
'requestParamsDescription' => '如果groupId传入参数igroup_all,则查询所有组下用户。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"totalCount\\": 1000,\\n \\"data\\": [\\n {\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"userId\\": \\"user_001\\"\\n }\\n ],\\n \\"nextToken\\": \\"NTxxx\\",\\n \\"maxResults\\": 20\\n}","type":"json"}]',
],
'ObtainCloudAccountRoleAccessCredential' => [
'summary' => '获取云角色(CloudAccountRole)的临时访问凭证。',
'path' => '/v2/{instanceId}/cloudAccountRoles/_/actions/obtainAccessCredential',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/x-www-form-urlencoded', 'application/json', 'multipart/form-data'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。 '."\n"
.'> 请输入IDaaS签发的Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'cloudAccountRoleExternalId',
'in' => 'query',
'schema' => ['title' => '云角色的外部唯一标识', 'description' => '云角色业务标识。', 'type' => 'string', 'required' => true, 'example' => 'acs:ram::xxx:role/role-test'],
],
[
'name' => 'durationSeconds',
'in' => 'query',
'schema' => ['description' => '指定云角色临时安全凭证(STS Token)的有效期持续时间,单位为秒。取值范围:900 ~ 43200(15分钟 ~ 12小时)'."\n"
.'约束条件:'."\n"
.'- 最小值不得低于900秒'."\n"
.'- 最大值受云厂商角色/服务账号的最大会话时间限制,比如AWS默认角色最大会话限制为3600s。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1800'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => '',
'type' => 'object',
'properties' => [
'cloudAccountId' => ['title' => '云账号ID', 'description' => '云账号 ID。', 'type' => 'string', 'example' => 'ca_01kmegjc11qa1txxxxx'],
'cloudAccountRoleId' => ['title' => '云账号角色ID', 'description' => '云角色 ID。', 'type' => 'string', 'example' => 'carole_01kmek49aqxxxx'],
'cloudAccountRoleName' => ['title' => '云账号角色名称', 'description' => '云角色名称。', 'type' => 'string', 'example' => 'role-test'],
'cloudAccountRoleExternalId' => ['title' => '云账号角色外部唯一键', 'description' => '云角色业务标识。', 'type' => 'string', 'example' => 'acs:ram::xxx:role/role-test'],
'cloudAccountVendorType' => [
'title' => '云账号身份类型(云厂商类型)',
'description' => '云账号类型。取值可选范围:'."\n"
.'- alibaba_cloud:阿里云',
'type' => 'string',
'enumValueTitles' => ['alibaba_cloud' => 'alibaba_cloud'],
'example' => 'alibaba_cloud',
],
'cloudAccountRoleAccessCredential' => [
'title' => '可用于扮演云角色的临时访问凭证',
'description' => '可用于扮演云角色的临时访问凭证。',
'type' => 'object',
'properties' => [
'accessCredentialExpiresAt' => ['title' => '云角色临时访问凭证的过期时间,单位秒。', 'description' => '云角色临时访问凭证的过期时间,Unix时间戳格式,单位为秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1767196800'],
'alibabaCloudStsToken' => [
'title' => '代表阿里云Role的STS Token',
'description' => '用于扮演阿里云RAM角色的临时身份凭证(STS Token)。'."\n"
.'> 仅当云角色关联的云账号类型为阿里云(alibaba_cloud)时才会有返回值。',
'type' => 'object',
'properties' => [
'accessKeyId' => ['title' => '访问密钥ID', 'description' => '访问密钥 ID。', 'type' => 'string', 'example' => 'STS.NUgYrLnoC37mZZCNnAbez****'],
'accessKeySecret' => ['title' => '访问密钥密文', 'description' => '访问密钥。', 'type' => 'string', 'example' => 'CVwjCkNzTMupZ8NbTCxCBRq3K16jtcWFTJAyBEv2****'],
'securityToken' => ['title' => '临时凭证会话安全令牌', 'description' => '安全令牌。', 'type' => 'string', 'example' => 'CAIShwJ1q6Ft5B2yfSjIr5bSEsj4g7BihPWGWHz****'],
'expiration' => ['title' => 'STS Token到期失效时间(UTC时间)'."\n", 'description' => 'Token 到期失效时间(UTC 时间)。', 'type' => 'string', 'example' => '2021-10-20T04:27:09Z'],
],
],
'awsStsToken' => [
'title' => '代表AWS Role的STS Token',
'description' => '代表AWS Role的STS Token',
'type' => 'object',
'properties' => [
'accessKeyId' => ['title' => '访问密钥ID', 'description' => '访问密钥ID', 'type' => 'string', 'example' => 'ASIAYBGN7XJKRFOM****'],
'secretAccessKey' => ['title' => '访问密钥密文', 'description' => '访问密钥密文', 'type' => 'string', 'example' => 'CVwjCkNzTMupZ8NbTCxCBRq3K16jtcWFTJAyBEv2****'],
'sessionToken' => ['title' => '临时凭证会话安全令牌', 'description' => '临时凭证会话安全令牌', 'type' => 'string', 'example' => 'FwoDYXdzEJzfSjIr5bSEsj4g7BihPWGWHz****'."\n"],
'expiration' => ['title' => 'STS Token到期失效时间(UTC时间)'."\n", 'description' => 'STS Token到期失效时间(UTC时间)'."\n", 'type' => 'string', 'example' => '2021-10-20T04:27:09Z'],
],
],
],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取云角色的临时访问凭证',
'description' => '该API基于IDaaS签发的Access Token进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的Access Token具备访问IDaaS内置PAM应用(Privileged Access Management)的“获取云角色访问凭证”的功能授权。'."\n"
.'> 对应的scope为`urn:cloud:idaas:pam|cloud_account_role:obtain_access_credential`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"cloudAccountId\\": \\"ca_01kmegjc11qa1txxxxx\\",\\n \\"cloudAccountRoleId\\": \\"carole_01kmek49aqxxxx\\",\\n \\"cloudAccountRoleName\\": \\"role-test\\",\\n \\"cloudAccountRoleExternalId\\": \\"acs:ram::xxx:role/role-test\\",\\n \\"cloudAccountVendorType\\": \\"alibaba_cloud\\",\\n \\"cloudAccountRoleAccessCredential\\": {\\n \\"accessCredentialExpiresAt\\": 1767196800,\\n \\"alibabaCloudStsToken\\": {\\n \\"accessKeyId\\": \\"STS.NUgYrLnoC37mZZCNnAbez****\\",\\n \\"accessKeySecret\\": \\"CVwjCkNzTMupZ8NbTCxCBRq3K16jtcWFTJAyBEv2****\\",\\n \\"securityToken\\": \\"CAIShwJ1q6Ft5B2yfSjIr5bSEsj4g7BihPWGWHz****\\",\\n \\"expiration\\": \\"2021-10-20T04:27:09Z\\"\\n },\\n \\"awsStsToken\\": {\\n \\"accessKeyId\\": \\"ASIAYBGN7XJKRFOM****\\",\\n \\"secretAccessKey\\": \\"CVwjCkNzTMupZ8NbTCxCBRq3K16jtcWFTJAyBEv2****\\",\\n \\"sessionToken\\": \\"FwoDYXdzEJzfSjIr5bSEsj4g7BihPWGWHz****\\\\n\\",\\n \\"expiration\\": \\"2021-10-20T04:27:09Z\\"\\n }\\n }\\n}","type":"json"}]',
],
'ObtainCredential' => [
'summary' => '查询一个凭据信息,获取凭据明文。',
'path' => '/v2/{instanceId}/credentials/_/actions/obtain',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/x-www-form-urlencoded', 'application/json', 'multipart/form-data'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。 '."\n"
.'> 请输入IDaaS签发的Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => 'EIAM 实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'credentialIdentifier',
'in' => 'query',
'schema' => ['title' => '云角色的外部唯一标识', 'description' => '凭据标识。', 'type' => 'string', 'required' => true, 'example' => 'credential_identifier_test', 'maxLength' => 64],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => '',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => 'EIAM实例ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'credentialId' => ['title' => '凭据ID。', 'description' => '凭据ID。', 'type' => 'string', 'example' => 'cred_mkv7rgt4d7i4u7zqtzev2mxxxx'],
'status' => ['title' => '凭据状态', 'description' => '凭据状态。取值可选范围:'."\n"
.'- enabled:启用。'."\n"
.'- disabled:禁用。', 'type' => 'string', 'example' => 'enabled'],
'credentialIdentifier' => ['title' => '凭据标识', 'description' => '凭据标识。', 'type' => 'string', 'example' => 'credential_identifier_test'],
'credentialName' => ['title' => '凭据名称', 'description' => '凭据名称。', 'type' => 'string', 'example' => 'credential_name'],
'credentialSubjectType' => ['title' => '凭据所属的主体类型。', 'description' => '凭据所属的主体类型。取值可选范围:'."\n"
.'- authentication_token_provider:认证令牌提供商。', 'type' => 'string', 'example' => 'authentication_token_provider'],
'credentialSubjectId' => ['title' => '凭据所属的主体ID。', 'description' => '凭据所属的主体ID。', 'type' => 'string', 'example' => 'apt_werthgfdsasffxxxxx'],
'credentialScenarioLabel' => ['title' => '凭据的使用场景标签。', 'description' => '凭据的使用场景标签。取值可选范围:'."\n"
.'- llm:大模型。'."\n"
.'- saas:三方 SaaS 服务。', 'type' => 'string', 'example' => 'llm'],
'credentialType' => ['title' => '凭据类型。', 'description' => '凭据类型。取值可选范围:'."\n"
.'- api_key:API Key认证凭证。'."\n"
.'- oauth_client:OAuth客户端认证凭证。', 'type' => 'string', 'example' => 'api_key'],
'credentialCreationType' => ['title' => '凭据的创建类型。', 'description' => '凭据的创建类型。取值可选范围:'."\n"
.'- system_init:系统创建。'."\n"
.'- user_custom:用户创建。', 'type' => 'string', 'example' => 'user_custom'],
'description' => ['title' => '描述', 'description' => '凭据描述。', 'type' => 'string', 'example' => 'credential_description'],
'createTime' => ['title' => '云角色创建时间', 'description' => '创建时间,Unix 时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '云角色更新时间', 'description' => '更新时间,Unix 时间戳格式,单位为毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830227000'],
'credentialContent' => [
'title' => '凭据的内容',
'description' => '凭据的内容。',
'type' => 'object',
'properties' => [
'oauthClientContent' => [
'title' => 'OAuth客户端认证凭证类型的凭据内容。',
'description' => 'OAuth 客户端认证凭证类型的凭据内容。',
'type' => 'object',
'properties' => [
'clientId' => ['title' => 'OAuth协议的client_id', 'description' => 'OAuth协议的client_id。', 'type' => 'string', 'example' => 'dmvncmxersdxxxxxx'],
'clientSecret' => ['title' => 'OAuth协议的client_secret', 'description' => 'OAuth 协议的 client_secret。', 'type' => 'string', 'example' => 'nsklnertyt5ddwizncxxxx'],
],
],
'apiKeyContent' => [
'title' => 'API Key类型的凭据内容。',
'description' => 'API Key 凭证类型的凭据内容。',
'type' => 'object',
'properties' => [
'apiKey' => ['title' => 'API Key', 'description' => 'API Key 的值。', 'type' => 'string', 'example' => 'sk-nsklncmwizncxxxx'."\n"],
],
],
],
],
'credentialSharingScope' => ['title' => '凭据共享范围', 'description' => '凭据共享范围', 'type' => 'string', 'example' => 'user_exclusive'],
'exclusiveUserId' => ['title' => '凭据专属账户ID', 'description' => '凭据专属账户ID', 'type' => 'string', 'example' => 'user_xxx'],
'credentialExternalId' => ['title' => '凭据外部唯一标识。', 'type' => 'string'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '查询一个含敏感信息的凭据',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“获取静态凭据”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为 `urn:cloud:idaas:pam|credential:obtain`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"credentialId\\": \\"cred_mkv7rgt4d7i4u7zqtzev2mxxxx\\",\\n \\"status\\": \\"enabled\\",\\n \\"credentialIdentifier\\": \\"credential_identifier_test\\",\\n \\"credentialName\\": \\"credential_name\\",\\n \\"credentialSubjectType\\": \\"authentication_token_provider\\",\\n \\"credentialSubjectId\\": \\"apt_werthgfdsasffxxxxx\\",\\n \\"credentialScenarioLabel\\": \\"llm\\",\\n \\"credentialType\\": \\"api_key\\",\\n \\"credentialCreationType\\": \\"user_custom\\",\\n \\"description\\": \\"credential_description\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830227000,\\n \\"credentialContent\\": {\\n \\"oauthClientContent\\": {\\n \\"clientId\\": \\"dmvncmxersdxxxxxx\\",\\n \\"clientSecret\\": \\"nsklnertyt5ddwizncxxxx\\"\\n },\\n \\"apiKeyContent\\": {\\n \\"apiKey\\": \\"sk-nsklncmwizncxxxx\\\\n\\"\\n }\\n },\\n \\"credentialSharingScope\\": \\"user_exclusive\\",\\n \\"exclusiveUserId\\": \\"user_xxx\\",\\n \\"credentialExternalId\\": \\"\\"\\n}","type":"json"}]',
],
'ObtainJwtAuthenticationToken' => [
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/obtainJwt',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'consumerId' => ['title' => '令牌使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'required' => true, 'example' => 'test_jwt_subject'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌 ID。', 'type' => 'string', 'required' => true, 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'JWT 认证令牌详情。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => '实例 ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌 ID。', 'type' => 'string', 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
'credentialProviderId' => ['title' => '凭据提供商的ID。', 'description' => '凭据提供商 ID。', 'type' => 'string', 'example' => 'atp_01kr2cmj5gxxx4fvmls2e93dxxxxx'],
'createTime' => ['title' => '认证令牌的创建时间,Unix时间戳。', 'description' => '认证令牌的创建时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '认证令牌的更新时间,Unix时间戳。', 'description' => '认证令牌的更新时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'authenticationTokenType' => ['title' => '认证令牌的类型。', 'description' => '认证令牌类型。'."\n"
."\n"
.'> 取值固定为`jwt`,表示 JWT 类型的认证令牌。', 'type' => 'string', 'example' => 'jwt'],
'revoked' => ['title' => '认证令牌是否被吊销。', 'description' => '认证令牌是否被吊销。', 'type' => 'boolean', 'example' => 'false'],
'creatorType' => ['title' => '认证令牌的创建者类型。', 'description' => '认证令牌创建者类型。取值可选范围:'."\n"
."\n"
.'- application:应用', 'type' => 'string', 'example' => 'application'],
'creatorId' => ['title' => '认证令牌的创建者ID。', 'description' => '认证令牌创建者 ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'consumerType' => ['title' => '认证令牌的使用者类型。', 'description' => '认证令牌使用者类型。取值可选范围:'."\n"
."\n"
.'- application:应用'."\n"
.'- custom:自定义类型', 'type' => 'string', 'example' => 'custom'],
'consumerId' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'example' => 'test_jwt_subject'],
'expirationTime' => ['title' => '认证令牌的过期时间,Unix时间戳,单位秒。', 'description' => '认证令牌过期时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1772693568000'],
'jwtContent' => [
'title' => 'JWT类型的认证令牌的内容。',
'description' => 'JWT 类型认证令牌内容。',
'type' => 'object',
'properties' => [
'jwtValue' => ['title' => 'JWT内容。', 'description' => 'JWT 内容。', 'type' => 'string', 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'derivedShortToken' => ['title' => 'JWT的派生短令牌。', 'description' => 'JWT 的派生短令牌。', 'type' => 'string', 'example' => 'sk-Nx2vzxxxxxxxxxxxxxxxxx'],
],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '获取JWT认证令牌明文',
'summary' => '获取JWT认证令牌明文。',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“获取认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为 `urn:cloud:idaas:pam|authentication_token:obtain`。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"authenticationTokenId\\": \\"atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx\\",\\n \\"credentialProviderId\\": \\"atp_01kr2cmj5gxxx4fvmls2e93dxxxxx\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830225000,\\n \\"authenticationTokenType\\": \\"jwt\\",\\n \\"revoked\\": false,\\n \\"creatorType\\": \\"application\\",\\n \\"creatorId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"consumerType\\": \\"custom\\",\\n \\"consumerId\\": \\"test_jwt_subject\\",\\n \\"expirationTime\\": 1772693568000,\\n \\"jwtContent\\": {\\n \\"jwtValue\\": \\"eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\",\\n \\"derivedShortToken\\": \\"sk-Nx2vzxxxxxxxxxxxxxxxxx\\"\\n }\\n}","type":"json"}]',
],
'ObtainJwtAuthenticationTokenByDerivedShortToken' => [
'summary' => '基于派生短令牌查询JWT认证令牌。',
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/obtainJwtByDerivedShortToken',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'derivedShortToken' => ['title' => '认证令牌派生短令牌原文。', 'description' => 'JWT认证令牌的派生短令牌原文。', 'type' => 'string', 'required' => true, 'example' => 'sk-Nx2vzxxxxxxxxxxxxxxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'JWT认证令牌详情。',
'type' => 'object',
'properties' => [
'instanceId' => ['title' => 'EIAM实例ID。', 'description' => '实例 ID。', 'type' => 'string', 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
'authenticationTokenId' => ['title' => '认证令牌ID。', 'description' => '认证令牌 ID。', 'type' => 'string', 'example' => 'atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx'],
'credentialProviderId' => ['title' => '凭据提供商的ID。', 'description' => '凭据提供商 ID。', 'type' => 'string', 'example' => 'atp_01kr2cmj5gxxx4fvmls2e93dxxxxx'],
'createTime' => ['title' => '认证令牌的创建时间,Unix时间戳。', 'description' => '认证令牌的创建时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'updateTime' => ['title' => '认证令牌的更新时间,Unix时间戳。', 'description' => '认证令牌的更新时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649830225000'],
'authenticationTokenType' => ['title' => '认证令牌的类型。', 'description' => '认证令牌类型。'."\n"
."\n"
.'> 取值固定为`jwt`,表示JWT类型的认证令牌。', 'type' => 'string', 'example' => 'jwt'],
'revoked' => ['title' => '认证令牌是否被吊销。', 'description' => '认证令牌是否被吊销。', 'type' => 'boolean', 'example' => 'false'],
'creatorType' => ['title' => '认证令牌的创建者类型。', 'description' => '认证令牌创建者类型。取值可选范围:'."\n"
."\n"
.'- application:应用', 'type' => 'string', 'example' => 'application'],
'creatorId' => ['title' => '认证令牌的创建者ID。', 'description' => '认证令牌创建者 ID。', 'type' => 'string', 'example' => 'app_ngtkgrrxxxxktg5eao6z4xxxxx'],
'consumerType' => ['title' => '认证令牌的使用者类型。', 'description' => '认证令牌使用者类型。取值可选范围:'."\n"
."\n"
.'- application:应用'."\n"
.'- custom:自定义类型', 'type' => 'string', 'example' => 'custom'],
'consumerId' => ['title' => '认证令牌的使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'example' => 'test_jwt_subject'],
'expirationTime' => ['title' => '认证令牌的过期时间,Unix时间戳,单位秒。', 'description' => '认证令牌过期时间,Unix 时间戳,单位毫秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1772693568000'],
'jwtContent' => [
'title' => 'JWT类型的认证令牌的内容。',
'description' => 'JWT类型认证令牌内容。',
'type' => 'object',
'properties' => [
'jwtValue' => ['title' => 'JWT内容。', 'description' => 'JWT内容。', 'type' => 'string', 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'derivedShortToken' => ['title' => 'JWT的派生短令牌。', 'description' => 'JWT的派生短令牌。', 'type' => 'string', 'example' => 'sk-Nx2vzxxxxxxxxxxxxxxxxx'],
],
],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '基于派生短令牌查询JWT认证令牌',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"instanceId\\": \\"idaas_ue2jvisn35ea5lmthk267xxxxx\\",\\n \\"authenticationTokenId\\": \\"atntkn_01kqflm0sxxx8nmdc1cb5dskxxxxx\\",\\n \\"credentialProviderId\\": \\"atp_01kr2cmj5gxxx4fvmls2e93dxxxxx\\",\\n \\"createTime\\": 1649830225000,\\n \\"updateTime\\": 1649830225000,\\n \\"authenticationTokenType\\": \\"jwt\\",\\n \\"revoked\\": false,\\n \\"creatorType\\": \\"application\\",\\n \\"creatorId\\": \\"app_ngtkgrrxxxxktg5eao6z4xxxxx\\",\\n \\"consumerType\\": \\"custom\\",\\n \\"consumerId\\": \\"test_jwt_subject\\",\\n \\"expirationTime\\": 1772693568000,\\n \\"jwtContent\\": {\\n \\"jwtValue\\": \\"eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\",\\n \\"derivedShortToken\\": \\"sk-Nx2vzxxxxxxxxxxxxxxxxx\\"\\n }\\n}","type":"json"}]',
],
'PatchGroup' => [
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}',
'methods' => ['patch'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas7VNWU7'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID', 'description' => '组ID', 'type' => 'string', 'required' => true, 'example' => 'group_xxx001'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'groupName' => ['title' => '组名称', 'description' => '组名称', 'type' => 'string', 'required' => false, 'example' => 'name001'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '更新一个EIAM组',
'summary' => '调用PatchGroup接口,更新一个EIAM组信息。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'PatchOrganizationalUnit' => [
'summary' => '调用PatchOrganizationalUnit接口,更新一个EIAM组织信息。',
'path' => '/v2/{instanceId}/{applicationId}/organizationalUnits/{organizationalUnitId}',
'methods' => ['patch'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息,格式:Bearer access_token', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'organizationalUnitId',
'in' => 'path',
'schema' => ['title' => '机构ID', 'description' => '组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求体参数。',
'type' => 'object',
'properties' => [
'organizationalUnitName' => ['title' => '机构名称', 'description' => '组织名称,长度限制最长为64字符。', 'type' => 'string', 'required' => false, 'example' => 'name001'],
'description' => ['title' => '机构描述', 'description' => '组织描述,长度限制最长为128字符。', 'type' => 'string', 'required' => false, 'example' => '测试组织'],
],
'required' => false,
'example' => 'ou_xxx001',
],
],
],
'responses' => [
200 => [],
],
'title' => '更新一个EIAM组织',
'description' => '接口符合HTTP Patch方法语义,只修改传入的参数值,不传则默认不修改。',
'responseParamsDescription' => "\n"
.'> 成功则,默认返回http code为200'."\n",
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | OrganizationUnitIdNotInScopes | organizationUnitId : ou_wovwffm62xifdziem7an7xxxxx not in provisioning scope! | 组织不在同步范围内|'."\n"
.'| 400 | ResourceDuplicated.OrganizationalUnitName | The specified OrganizationalUnitName resource: xxx already exist! | 组织名称已存在|'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:organizational_unit:manage_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2022-05-16T08:31:33.000Z', 'description' => 'OpenAPI 下线'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'PatchUser' => [
'summary' => '调用PatchUser接口,更新一个EIAM账户信息。',
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}',
'methods' => ['patch'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer AT8csE2seYxxxxxij'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'username' => ['title' => '账户名', 'description' => '账户名。', 'type' => 'string', 'required' => false, 'example' => 'name001'],
'displayName' => ['title' => '账户展示名', 'description' => '账户展示名。', 'type' => 'string', 'required' => false, 'example' => 'display_name001'],
'phoneRegion' => ['title' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +, 手机号若设置,此参数必填', 'description' => '手机地区编号,示例:中国大陆手区号为86,不带 00 或 +, 手机号若设置,此参数必填。', 'type' => 'string', 'required' => false, 'example' => '86'],
'phoneNumber' => ['title' => '手机号', 'description' => '账户手机号。', 'type' => 'string', 'required' => false, 'example' => '156xxxxxxx'],
'phoneNumberVerified' => ['title' => '手机号是否验证,手机号若设置此字段必须设置,无特殊业务可直接设置为true', 'description' => '手机号是否验证,手机号若设置此字段必须设置,无特殊业务可直接设置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'email' => ['title' => '邮箱', 'description' => '账户邮箱。', 'type' => 'string', 'required' => false, 'example' => 'example@example.com'],
'emailVerified' => ['title' => '邮箱是否验证,邮箱若设置此字段必须设置,无特殊业务可直接设置为true', 'description' => '邮箱是否验证,邮箱若设置此字段必须设置,无特殊业务可直接设置为true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
'customFields' => [
'title' => '扩展字段列表',
'description' => '账户扩展字段列表。',
'type' => 'array',
'items' => [
'description' => '扩展字段更新操作对象。',
'type' => 'object',
'properties' => [
'operator' => ['description' => '字段操作类型,已废弃,请采用operation替换使用。', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'replace'],
'fieldName' => ['title' => '扩展字段标识', 'description' => '扩展字段标识,类型和值域可通过控制台查看对应扩展字段值的详细信息。', 'type' => 'string', 'required' => false, 'example' => 'age'],
'fieldValue' => ['title' => '扩展字段值', 'description' => '扩展字段值。', 'type' => 'string', 'required' => false, 'example' => 'test_value'],
'operation' => ['description' => '字段操作类型,取值可选范围:'."\n"
.'- add:添加。'."\n"
.'- replace:替换。若对应扩展字段无设置值,会转换为add操作。'."\n"
.'- remove:移除。', 'type' => 'string', 'required' => false, 'example' => 'replace'],
],
'required' => false,
],
'required' => false,
],
],
'required' => false,
'example' => 'user_001',
],
],
],
'responses' => [
200 => [],
],
'title' => '更新一个EIAM账户信息',
'description' => '接口符合HTTP Patch方法语义,只修改传入的参数值,不传则默认不修改。',
'extraInfo' => '### 错误码'."\n"
.'| HttpCode | Error Code | 错误信息 | 说明 |'."\n"
.'| ---- | ---- | ---- | ---- |'."\n"
.'| 400 | invalid\\_token | Access token is not valid | token无效|'."\n"
.'| 400 | MissingParameter.xxxx | The specified parameter:xxx is required! | 缺少xxxx参数 |'."\n"
.'| 400 | InvalidParameter.xxxx | The specified parameter:xxxx is required! | xxxx参数无效 |'."\n"
.'| 404 | ResourceNotFound.User | The specified User resource: user_d6sbsuumeta4h66ec3il7yxxxx not found. | 账户不存在 |'."\n"
.'| 404 | application\\_not\\_found | Application id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx | 应用不存在 |'."\n"
.'| 403 | application\\_disabled | Application is disabled| 应用处于禁用状态 |'."\n"
.'| 403 | application\\_api\\_disabled | Application api invoke disabled| 应用API未开放 |'."\n"
.'| 403 | permission\\_denied | Require scopes: [urn:alibaba:idaas:scope:user:manager_all] | 缺少API授权信息 |'."\n"
.'| 500 | Internal Server Error | Internal Server Error | 服务器内部错误|',
'changeSet' => [
['createdAt' => '2023-04-16T14:35:21.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-11-18T04:15:26.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-16T08:31:26.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-16T08:31:26.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'ReinstateAuthenticationToken' => [
'summary' => '恢复一个认证令牌。',
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/reinstate',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'token' => ['title' => '认证令牌明文。', 'description' => '认证令牌原文。'."\n"
."\n"
.'> 传入“认证令牌原文”或“认证令牌的派生短令牌”均可。', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'token_type_hint' => ['title' => '认证令牌类型指示。', 'description' => '认证令牌类型指示。'."\n"
."\n"
.'>当前暂无需传值。>', 'type' => 'string', 'required' => false, 'example' => '-'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '恢复一个认证令牌',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“管理认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:manage`。'."\n"
."\n"
.'>当前仅JWT类型的认证令牌支持该操作。>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'ReinstateAuthenticationTokenByConsumer' => [
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/reinstateByConsumer',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'consumerId' => ['title' => '令牌使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'required' => true, 'example' => 'test_jwt_subject'],
'credentialProviderIdentifier' => ['title' => '凭据提供商的业务标识。', 'description' => '凭据提供商标识。', 'type' => 'string', 'required' => true, 'example' => 'test_example_identifier'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '基于使用者恢复认证令牌',
'summary' => '基于使用者恢复认证令牌。',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“管理认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:manage`。'."\n"
."\n"
.'>当前仅JWT类型的认证令牌支持该操作。>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'RemoveUserFromOrganizationalUnits' => [
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/removeUserFromOrganizationalUnits',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaas3S4NKL', 'FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'organizationalUnitIds' => [
'title' => '组织ID列表。',
'description' => '组织ID列表。',
'type' => 'array',
'items' => ['description' => '组织ID。', 'type' => 'string', 'required' => false, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
'required' => true,
'example' => '[ou_wovwffm62xifdziem7an7xxxxx]',
],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '将一个EIAM账户从多个EIAM组织中移除',
'summary' => '将一个EIAM账户从多个EIAM组织中移除,如果账户已不属于这些组织,则默认成功。',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'RemoveUsersFromGroup' => [
'summary' => '将多个EIAM账户从一个EIAM组中移除,如果账户已不属于组,则默认成功。',
'path' => '/v2/{instanceId}/{applicationId}/groups/{groupId}/actions/removeUsersFromGroup',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasIEJFYH'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'groupId',
'in' => 'path',
'schema' => ['title' => '组ID。', 'description' => '组ID。', 'type' => 'string', 'required' => true, 'example' => 'group_wovwffm62xifdziem7an7xxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'userIds' => [
'title' => '账户ID列表',
'description' => '账户ID列表',
'type' => 'array',
'items' => ['description' => '账户ID。', 'type' => 'string', 'required' => false, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'."\n"],
'required' => true,
'example' => '[user_d6sbsuumeta4h66ec3il7yxxxx}',
],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '将多个EIAM账户从一个EIAM组中移除',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'RevokeAuthenticationToken' => [
'summary' => '吊销一个认证令牌。',
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/revoke',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'token' => ['title' => '认证令牌明文。', 'description' => '认证令牌原文。'."\n"
."\n"
.'> 传入“认证令牌原文”或“认证令牌的派生短令牌”均可。', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'token_type_hint' => ['title' => '认证令牌类型指示。', 'description' => '认证令牌类型指示。'."\n"
."\n"
.'>当前暂无需传值。>', 'type' => 'string', 'required' => false, 'example' => '-'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '吊销一个认证令牌',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“管理认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:manage`。'."\n"
."\n"
.'>当前仅JWT类型的认证令牌支持该操作。>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'RevokeAuthenticationTokenByConsumer' => [
'summary' => '基于使用者吊销认证令牌。',
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/revokeByConsumer',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。基于标准OAuth2.0或者OIDC协议签发的AccessToken', 'description' => '认证信息。 格式为:Bearer ${access_token}。'."\n"
."\n"
.'> 请输入 IDaaS 签发的 Access Token。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'consumerId' => ['title' => '令牌使用者ID。', 'description' => '认证令牌使用者 ID。', 'type' => 'string', 'required' => true, 'example' => 'test_jwt_subject'],
'credentialProviderIdentifier' => ['title' => '凭据提供商的业务标识。', 'description' => '凭据提供商标识。', 'type' => 'string', 'required' => true, 'example' => 'test_example_identifier'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '基于使用者吊销认证令牌',
'description' => '该 API 基于 IDaaS 签发的 Access Token 进行身份认证和鉴权。'."\n"
."\n"
.'请确保传入的 Access Token 具备访问 IDaaS 内置 PAM 应用(Privileged Access Management)的“管理认证令牌”的功能授权。'."\n"
."\n"
.'> 对应的 scope 为`urn:cloud:idaas:pam|authentication_token:manage`。'."\n"
."\n"
.'>当前仅JWT类型的认证令牌支持该操作。>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'RevokeToken' => [
'path' => '/v2/{instanceId}/{applicationId}/oauth2/revoke',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasJXI2A5'],
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'client_id',
'in' => 'query',
'schema' => ['description' => '客户端ID。', 'type' => 'string', 'required' => false, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'client_secret',
'in' => 'query',
'schema' => ['description' => '客户端密钥。', 'type' => 'string', 'required' => false, 'example' => 'CSEHDcHcrUKHw1CuxkJEHPveWRXBGqVqRsxxxx'],
],
[
'name' => 'token',
'in' => 'query',
'schema' => ['title' => '撤销的token', 'description' => '待撤销的token。', 'type' => 'string', 'required' => true, 'example' => 'ATxxxx'],
],
[
'name' => 'token_type_hint',
'in' => 'query',
'schema' => [
'title' => 'token类型',
'description' => 'token类型,取值可选范围:'."\n"
.'access_token'."\n"
.'refresh\\_token',
'type' => 'string',
'required' => false,
'enumValueTitles' => ['access_token' => 'access_token', 'refresh_token' => 'refresh_token'],
'example' => 'access_token',
],
],
],
'responses' => [
200 => [
'schema' => ['title' => 'RevokeResponse', 'description' => '响应结果。', 'type' => 'object'],
],
],
'title' => '吊销指定的token',
'summary' => '调用RevokeToken接口,吊销指定的access_token或refresh_token。',
'changeSet' => [
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => 'OpenAPI 下线'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
['createdAt' => '2022-05-09T01:01:41.000Z', 'description' => '请求参数发生变更'],
],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n}","type":"json"}]',
],
'SetUserPrimaryOrganizationalUnit' => [
'summary' => '设置一个EIAM账户的所属主组织,账户会从旧主组织移除,并加入到新的组织下。',
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/setUserPrimaryOrganizationalUnit',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2', 'FEATUREidaas3S4NKL'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'organizationalUnitId' => ['title' => '主组织ID。', 'description' => '主组织ID。', 'type' => 'string', 'required' => true, 'example' => 'ou_wovwffm62xifdziem7an7xxxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '设置一个EIAM账户所属主组织',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'UpdateUserPassword' => [
'summary' => '更新指定EIAM账户的密码信息。',
'path' => '/v2/{instanceId}/{applicationId}/users/{userId}/actions/updateUserPassword',
'methods' => ['post'],
'schemes' => ['http', 'https'],
'security' => [
[
'Anonymous' => [],
],
],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasCRU1S2'],
],
'parameters' => [
[
'name' => 'Authorization',
'in' => 'header',
'schema' => ['title' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'description' => '认证信息。'."\n"
.'格式:Bearer ${access_token}。'."\n"
.'示例:Bearer ATxxxx。', 'type' => 'string', 'required' => true, 'example' => 'Bearer xxxx'],
],
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => '实例ID。', 'description' => '实例ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx'],
],
[
'name' => 'applicationId',
'in' => 'path',
'schema' => ['title' => '应用ID。', 'description' => '应用ID。', 'type' => 'string', 'required' => true, 'example' => 'app_mkv7rgt4d7i4u7zqtzev2mxxxx'],
],
[
'name' => 'userId',
'in' => 'path',
'schema' => ['title' => '账户ID', 'description' => '账户ID。', 'type' => 'string', 'required' => true, 'example' => 'user_d6sbsuumeta4h66ec3il7yxxxx'],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求body。',
'type' => 'object',
'properties' => [
'password' => ['title' => '密码', 'description' => '新密码,相关规则参考控制台密码策略说明。', 'type' => 'string', 'required' => false, 'example' => 'xxxx'],
],
'required' => false,
],
],
],
'responses' => [
200 => [],
],
'title' => '更新一个EIAM账户的密码',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{}","type":"json"}]',
],
'ValidateAuthenticationToken' => [
'path' => '/v2/{instanceId}/authenticationTokens/_/actions/validate',
'methods' => ['post'],
'schemes' => ['https'],
'security' => [
[
'Anonymous' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREidaasDPGRH1'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'instanceId',
'in' => 'path',
'schema' => ['title' => 'IDaaS实例ID', 'description' => '实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'idaas_ue2jvisn35ea5lmthk267xxxxx', 'maxLength' => 64],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
'description' => '请求 Body。',
'type' => 'object',
'properties' => [
'token' => ['title' => '认证令牌明文。', 'description' => '认证令牌原文。'."\n"
."\n"
.'> 传入“认证令牌原文”或“认证令牌的派生短令牌”均可。', 'type' => 'string', 'required' => true, 'example' => 'eyJhbGciOixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'],
'token_type_hint' => ['title' => '认证令牌类型指示。', 'description' => '认证令牌类型指示。'."\n"
."\n"
.'>当前暂无需传值。>', 'type' => 'string', 'required' => false, 'example' => '-'],
],
'required' => false,
],
],
],
'responses' => [
200 => [
'schema' => [
'description' => '校验结果。',
'type' => 'object',
'properties' => [
'active' => ['title' => '认证令牌是否有效。', 'description' => '认证令牌是否有效。', 'type' => 'boolean', 'example' => 'true'],
],
],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => '校验一个认证令牌',
'summary' => '校验一个认证令牌。',
'description' => '>当前仅JWT类型的认证令牌支持该操作。>',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"active\\": true\\n}","type":"json"}]',
],
],
'endpoints' => [
['regionId' => 'cn-hongkong', 'regionName' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'eiam-developerapi.cn-hongkong.aliyuncs.com', 'endpoint' => 'eiam-developerapi.cn-hongkong.aliyuncs.com', 'vpc' => 'eiam-developerapi-hk.vpc-proxy.aliyuncs.com'],
['regionId' => 'ap-northeast-2', 'regionName' => '韩国(首尔)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'eiam-developerapi.ap-northeast-2.aliyuncs.com', 'endpoint' => 'eiam-developerapi.ap-northeast-2.aliyuncs.com', 'vpc' => 'eiam-developerapi-sel.vpc-proxy.aliyuncs.com'],
['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'eiam-developerapi.ap-southeast-1.aliyuncs.com', 'endpoint' => 'eiam-developerapi.ap-southeast-1.aliyuncs.com', 'vpc' => 'eiam-developerapi-sg.vpc-proxy.aliyuncs.com'],
['regionId' => 'ap-southeast-5', 'regionName' => '印度尼西亚(雅加达)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'eiam-developerapi.ap-southeast-5.aliyuncs.com', 'endpoint' => 'eiam-developerapi.ap-southeast-5.aliyuncs.com', 'vpc' => 'eiam-developerapi-jk.vpc-proxy.aliyuncs.com'],
['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'eiam-developerapi.cn-hangzhou.aliyuncs.com', 'endpoint' => 'eiam-developerapi.cn-hangzhou.aliyuncs.com', 'vpc' => 'eiam-developerapi-cn.vpc-proxy.aliyuncs.com'],
['regionId' => 'eu-central-1', 'regionName' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'eiam-developerapi.eu-central-1.aliyuncs.com', 'endpoint' => 'eiam-developerapi.eu-central-1.aliyuncs.com', 'vpc' => 'eiam-developerapi-eu.vpc-proxy.aliyuncs.com'],
],
'errorCodes' => [],
'changeSet' => [
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetUser'],
['description' => '请求参数发生变更', 'api' => 'PatchUser'],
],
'createdAt' => '2023-04-16T14:36:50.000Z',
'description' => '',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GenerateToken'],
],
'createdAt' => '2023-04-04T10:57:38.000Z',
'description' => '',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateUser'],
['description' => 'OpenAPI 下线', 'api' => 'DisableUser'],
['description' => 'OpenAPI 下线', 'api' => 'EnableUser'],
['description' => '请求参数发生变更', 'api' => 'GenerateToken'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetUser'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'ListUsers'],
['description' => '请求参数发生变更', 'api' => 'PatchUser'],
],
'createdAt' => '2022-11-18T04:16:50.000Z',
'description' => '扩展字段',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'GetUserIdByUsername'],
],
'createdAt' => '2022-09-01T08:19:05.000Z',
'description' => '提供getUserIdByUsername',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateUser'],
['description' => '响应参数发生变更', 'api' => 'GetUser'],
['description' => '响应参数发生变更', 'api' => 'ListUsers'],
],
'createdAt' => '2022-08-18T08:42:06.000Z',
'description' => 'passwordSet public -> private',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'GetOrganizationalUnitIdByExternalId'],
['description' => 'OpenAPI 下线', 'api' => 'GetUserIdByEmail'],
['description' => 'OpenAPI 下线', 'api' => 'GetUserIdByPhoneNumber'],
['description' => 'OpenAPI 下线', 'api' => 'GetUserIdByUserExternalId'],
],
'createdAt' => '2022-08-17T12:26:19.000Z',
'description' => 'dev API增强',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GenerateDeviceCode'],
['description' => '请求参数发生变更', 'api' => 'GenerateToken'],
['description' => '请求参数发生变更', 'api' => 'RevokeToken'],
],
'createdAt' => '2022-05-25T08:10:16.000Z',
'description' => '修改',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GetUserInfo'],
['description' => '请求参数发生变更', 'api' => 'RevokeToken'],
],
'createdAt' => '2022-05-25T04:12:46.000Z',
'description' => '文档',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateDeviceCode'],
['description' => '请求参数发生变更', 'api' => 'GenerateToken'],
],
'createdAt' => '2022-05-23T09:53:33.000Z',
'description' => '测试',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateUser'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateDeviceCode'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateToken'],
['description' => '响应参数发生变更', 'api' => 'GetOrganizationalUnit'],
['description' => '请求参数发生变更', 'api' => 'GetOrganizationalUnitIdByExternalId'],
['description' => '响应参数发生变更', 'api' => 'GetUser'],
],
'createdAt' => '2022-05-19T10:19:29.000Z',
'description' => '文档生成',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'GenerateDeviceCode'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateToken'],
['description' => '请求参数发生变更', 'api' => 'GetUserInfo'],
],
'createdAt' => '2022-05-16T11:44:43.000Z',
'description' => '测试',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'RevokeToken'],
],
'createdAt' => '2022-05-16T10:35:50.000Z',
'description' => '测试',
],
[
'apis' => [
['description' => '请求参数发生变更', 'api' => 'CreateOrganizationalUnit'],
['description' => '请求参数发生变更', 'api' => 'CreateUser'],
['description' => '请求参数发生变更', 'api' => 'DeleteOrganizationalUnit'],
['description' => '请求参数发生变更', 'api' => 'DeleteUser'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateDeviceCode'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GenerateToken'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetApplicationProvisioningScope'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetOrganizationalUnit'],
['description' => '请求参数发生变更', 'api' => 'GetOrganizationalUnitIdByExternalId'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetUser'],
],
'createdAt' => '2022-05-16T09:30:25.000Z',
'description' => '测试文档',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateOrganizationalUnit'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'CreateUser'],
['description' => '请求参数发生变更', 'api' => 'DeleteOrganizationalUnit'],
['description' => '请求参数发生变更', 'api' => 'DeleteUser'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetOrganizationalUnit'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetOrganizationalUnitIdByExternalId'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetUser'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetUserIdByExternalId'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'ListOrganizationalUnit'],
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'ListOrganizationalUnitParentIds'],
],
'createdAt' => '2022-05-10T11:41:26.000Z',
'description' => '测试文档',
],
[
'apis' => [
['description' => '响应参数发生变更', 'api' => 'GetOrganizationalUnit'],
['description' => '响应参数发生变更', 'api' => 'GetUser'],
['description' => '响应参数发生变更', 'api' => 'ListOrganizationalUnit'],
['description' => '响应参数发生变更', 'api' => 'ListUsers'],
],
'createdAt' => '2022-05-10T11:41:06.000Z',
'description' => '文档测试',
],
[
'apis' => [
['description' => 'OpenAPI 下线', 'api' => 'CreateOrganizationalUnit'],
['description' => 'OpenAPI 下线', 'api' => 'CreateUser'],
['description' => 'OpenAPI 下线', 'api' => 'DeleteOrganizationalUnit'],
['description' => 'OpenAPI 下线', 'api' => 'DeleteUser'],
['description' => 'OpenAPI 下线', 'api' => 'GenerateDeviceCode'],
['description' => 'OpenAPI 下线', 'api' => 'GenerateToken'],
['description' => 'OpenAPI 下线', 'api' => 'GetApplicationAuthorizedScopes'],
['description' => 'OpenAPI 下线', 'api' => 'GetOrganizationalUnit'],
['description' => 'OpenAPI 下线', 'api' => 'GetOrganizationalUnitIdByExternalId'],
['description' => 'OpenAPI 下线', 'api' => 'GetUser'],
],
'createdAt' => '2022-05-10T11:40:57.000Z',
'description' => '第一次测试',
],
[
'apis' => [
['description' => '请求参数发生变更、响应参数发生变更', 'api' => 'GetApplicationAuthorizedScopes'],
],
'createdAt' => '2022-05-10T11:39:55.000Z',
'description' => '测试文档',
],
],
'flowControl' => [
'flowControlList' => [],
],
];