华为云用户手册

  • 功能介绍 修改ldap配置。LDAP(Lightweight Directory Access Protocol),中文名称轻量级目录访问协议,是对目录服务器(Directory Server)进行访问、控制的一种标准协议。LDAP服务器可以集中式地管理用户和群组的归属关系,通过绑定LDAP服务器,当一个用户访问您的文件系统的文件时,SFS Turbo将会访问您的LDAP服务器以进行用户身份验证,并且获取用户和群组的归属关系,从而进行Linux标准的文件UGO权限的检查。要使用此功能,首先您需要搭建好LDAP服务器(当前SFS Turbo仅支持LDAP v3协议),常见提供LDAP协议访问的目录服务器实现有OpenLdap(Linux),Active Directory(Windows)等,不同目录服务器的实现细节有所差别,绑定时需要指定对应的Schema(Schema配置错误将会导致SFS Turbo无法正确获取用户以及群组信息,可能导致无权限访问文件系统内文件),当前SFS Turbo支持的Schema有: RFC2307(Openldap通常选择此Schema) MS-AD-BIS(Active Directory通常选择此Schema,支持RFC2307bis,支持嵌套的群组) SFS Turbo还支持配置主备LDAP服务器,当您的一台LDAP服务器故障无法访问后,SFS Turbo将会自动切换到备LDAP服务器访问,以免影响您的业务。同时,若您还选择将allow_local_user配置为Yes(默认为No),那么当您的LDAP服务器全部故障无法访问时,SFS Turbo将会使用您的本地用户以及群组信息,而非LDAP服务器中配置的信息进行身份验证和UGO权限检查,以最大程度减少故障影响面。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 url 否 String ldap服务器的url,固定格式为 ldap://{ip_address}:{port_number} 或 ldaps://{ip_address}:{port_number},例如ldap://192.168.xx.xx:60000 base_dn 否 String 数据库中的域 user_dn 否 String 用户区别名 password 否 String ldap认证密码 vpc_id 否 String vpc的id filter_condition 否 String 过滤条件。保留字段,暂不支持 backup_url 否 String ldap备节点的url,固定格式为 ldap://{ip_address}:{port_number} 或 ldaps://{ip_address}:{port_number},例如ldap://192.168.xx.xx:60000 schema 否 String ldap的schema,不填写则默认为RFC2307 search_timeout 否 Integer ldap搜索的超时时间,单位为秒。不填写则默认为3秒 allow_local_user 否 String 访问ldap服务器失败后是否允许使用本地用户鉴权
  • 响应示例 状态码: 200 更新quota成功 { "path" : "/data/test", "capacity" : 1024, "inode" : 100000 } 状态码: 400 错误响应 { "errCode" : "SFS.TURBO.0102", "errMsg" : "Path is not directory" } 状态码: 403 错误响应 { "errCode" : "SFS.TURBO.0113", "errMsg" : "dir not create quota" } 状态码: 500 错误响应 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 path String 合法的已存在的目录的全路径 capacity Integer 目录的容量大小,单位:MB inode Integer 目录的inode数量限制 used_capacity Integer 目录已使用的容量大小,单位:MB。仅SFSTurbo 20MB/s/TiB、40MB/s/TiB、125MB/s/TiB、250MB/s/TiB、500MB/s/TiB、1000MB/s/TiB返回该字段 used_inode Integer 目录的已使用的inode数量。仅SFSTurbo 20MB/s/TiB、40MB/s/TiB、125MB/s/TiB、250MB/s/TiB、500MB/s/TiB、1000MB/s/TiB返回该字段 状态码: 400 表5 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 403 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 path 是 String 合法的已存在的目录的全路径 capacity 否 Integer 目录的容量大小,单位:MB; 设置为0会导致数据无法写入目录; capacity和quota至少二选一 inode 否 Integer 目录的inode数量限制; 设置为0会导致数据无法写入目录; capacity和quota至少二选一
  • 响应示例 状态码: 200 响应Body参数 { "job_id" : "26f6b565-xxxx-XXXX-xxxx-03f0bd975433", "status" : "success", "job_type" : "bind_ldap", "begin_time" : "2023-07-26 09:33:58", "end_time" : "2023-07-26 09:33:58" } 状态码: 400 客户端错误 { "errCode" : "SFS.TURBO.0001", "errMsg" : "parameter error" } 状态码: 404 资源不存在 { "errCode" : "SFS.TURBO.0001", "errMsg" : "parameter error" } 状态码: 500 内部错误 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表4 响应Body参数 参数 参数类型 描述 status String job的状态。success:成功。running:运行中。failed:失败。waiting:等待执行 job_id String job的ID。 job_type String job的类型。 begin_time String job开始时间。UTC时间,格式:'2016-01-02 15:04:05' end_time String job结束时间。UTC时间,格式:'2016-01-02 15:04:05' error_code String job执行失败时的错误码 fail_reason String job执行失败时的错误原因 sub_jobs Array of GetSubJobDetail objects 子任务列表 表5 GetSubJobDetail 参数 参数类型 描述 status String 子job的状态。success:成功。running:运行中。failed:失败。waiting:等待执行。 job_id String job的ID。 job_type String 子job的类型。 begin_time String job开始时间。UTC时间,格式:'2016-01-02 15:04:05' end_time String job结束时间。UTC时间,格式:'2016-01-02 15:04:05' error_code String job执行失败时的错误码 fail_reason String job执行失败时的错误原因 状态码: 400 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 404 表7 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表8 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的 token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 action 是 String 更新文件系统的操作类型。当前仅支持取值 config_gc_time gc_time 是 Integer 文件系统冷数据淘汰时间,单位为小时,取值范围 [1, 100000000]。系统默认为 60 小时
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表5 响应Body参数 参数 参数类型 描述 gc_time Integer 文件系统冷数据淘汰时间 状态码: 404 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 响应示例 状态码: 200 任务下发成功 { "gc_time" : 10 } 状态码: 404 错误响应 { "errCode" : "SFS.TURBO.0002", "errMsg" : "share not exist" } 状态码: 500 错误响应 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应示例 状态码: 202 任务下发成功 { "target_id" : "00000334-xxxx-402d-a5d4-bxxxxx87b939", "creation_time" : "2023-11-19T04:02:03", "file_system_path" : "sfsturboDirName", "lifecycle" : "CREATING", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com" } } 状态码: 400 错误响应 { "errCode" : "SFS.TURBO.0001", "errMsg" : "request path/body parameters invalid" } 状态码: 500 错误响应 { "errCode" : "SFS.TURBO.0005", "errMsg" : "internal server error" }
  • 请求示例 绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName。 POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com" } } 绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpointobs.region.example.com,联动目录名称为sfsturboDirName,指定导入的文件在文件系统的权限为750,指定导入的目录在文件系统的权限为640。 POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "attributes" : { "file_mode" : 750, "dir_mode" : 640 } } } 绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName,指定导入的文件在文件系统的权限为750,指定导入的目录在文件系统的权限为640,指定导入的文件及目录在文件系统的uid为0、gid为0。 POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "attributes" : { "file_mode" : 750, "dir_mode" : 640, "uid" : 0, "gid" : 0 } } } 绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName,指定自动导出策略为"NEW"、"CHANGED"、"DELETED"。 POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "policy" : { "auto_export_policy" : { "events" : [ "NEW", "CHANGED", "DELETED" ] } } } }
  • 响应参数 状态码: 202 表8 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表9 响应Body参数 参数 参数类型 描述 target_id String 绑定关系id creation_time String 绑定关系创建时间 failure_details FailureDetailsMessage object 绑定错误信息 file_system_path String 联动目录名称 lifecycle String 绑定状态。 如果返回状态为CREATING,您需要通过获取后端存储详细信息接口去轮询绑定完成状态。 如果返回状态为AVAILABLE,代表绑定后端存储成功。 如果返回状态MISCONFIGURED,代表绑定后端存储失败。DELETING 状态暂不支持。 obs ObsDataRepository object OBS类型后端存储 表10 FailureDetailsMessage 参数 参数类型 描述 message String 错误信息 表11 ObsDataRepository 参数 参数类型 描述 bucket String OBS桶名称 endpoint String OBS桶所在的区域 域名 policy ObsDataRepositoryPolicy object 后端存储自动同步策略 attributes ObsTargetAttributes object 后端存储属性。2024年6月30日及之前创建,且未升级的文件系统版本不支持该参数,请提工单处理。 表12 ObsDataRepositoryPolicy 参数 参数类型 描述 auto_export_policy AutoExportPolicy object 后端存储自动导出策略。当文件系统发生数据更新时,将自动导出到OBS桶。 表13 AutoExportPolicy 参数 参数类型 描述 events Array of strings 后端存储自动导出到OBS桶的数据更新类型。 NEW:表示新增数据,SFS Turbo联动目录下创建的文件,及之后对这些文件进行的元数据和数据修改,会被自动同步到OBS桶里。 CHANGED:表示修改数据,从OBS桶里导入到SFS Turbo联动目录下的文件,在SFS Turbo上对这些文件所进行的数据和元数据的修改,会被自动同步到OBS桶里。 DELETED:表示删除数据,在SFS Turbo联动目录下删除文件,OBS桶对应的对象也会被删除,只有被SFS Turbo写入的OBS对象才会被删除。 表14 ObsTargetAttributes 参数 参数类型 描述 file_mode Integer 导入的文件权限。取值范围是0到777。 第一位表示文件所有者的权限,取值范围是0到7;第二位表示文件所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。文件所有者由uid指定,文件所属用户组由gid指定,不是文件所有者且不在文件所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该文件所有者对该文件具有读、写、执行权限;第二位5代表该文件所属用户组对该文件具有读、执行权限;第三位0代表其他用户对该文件无权限。 dir_mode Integer 导入的目录权限。取值范围是0到777。 第一位表示目录所有者的权限,取值范围是0到7;第二位表示目录所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位0代表其他用户对该文件无权限。 uid Integer 导入对象所有者的用户id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 gid Integer 导入对象所属用户组id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 状态码: 400 表15 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表16 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 file_system_path 是 String 联动目录名称,SFS Turbo会在文件系统根目录下以该名称创建一个子目录,该目录用于绑定后端存储。 必须是文件系统根目录下不存在的目录名,长度不能超过63个字符,子目录名称不能是“.”或“..”。 不支持多层目录,不能包含字符'/'。 obs 是 ObsDataRepository object OBS类型后端存储 表4 ObsDataRepository 参数 是否必选 参数类型 描述 bucket 是 String OBS桶名称 endpoint 是 String OBS桶所在的区域域名 policy 否 ObsDataRepositoryPolicy object 后端存储自动同步策略 attributes 否 ObsTargetAttributes object 后端存储属性。2024年6月30日及之前创建,且未升级的文件系统版本不支持该参数,请提工单处理。 表5 ObsDataRepositoryPolicy 参数 是否必选 参数类型 描述 auto_export_policy 否 AutoExportPolicy object 后端存储自动导出策略。当文件系统发生数据更新时,将自动导出到OBS桶。 表6 AutoExportPolicy 参数 是否必选 参数类型 描述 events 否 Array of strings 后端存储自动导出到OBS桶的数据更新类型。 NEW:表示新增数据,SFS Turbo联动目录下创建的文件,及之后对这些文件进行的元数据和数据修改,会被自动同步到OBS桶里。 CHANGED:表示修改数据,从OBS桶里导入到SFS Turbo联动目录下的文件,在SFS Turbo上对这些文件所进行的数据和元数据的修改,会被自动同步到OBS桶里。 DELETED:表示删除数据,在SFS Turbo联动目录下删除文件,OBS桶对应的对象也会被删除,只有被SFS Turbo写入的OBS对象才会被删除。 表7 ObsTargetAttributes 参数 是否必选 参数类型 描述 file_mode 否 Integer 导入的文件权限。取值范围是0到777。 第一位表示文件所有者的权限,取值范围是0到7;第二位表示文件所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。文件所有者由uid指定,文件所属用户组由gid指定,不是文件所有者且不在文件所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该文件所有者对该文件具有读、写、执行权限;第二位5代表该文件所属用户组对该文件具有读、执行权限;第三位0代表其他用户对该文件无权限。 dir_mode 否 Integer 导入的目录权限。取值范围是0到777。 第一位表示目录所有者的权限,取值范围是0到7;第二位表示目录所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位0代表其他用户对该文件无权限。 uid 否 Integer 导入对象所有者的用户id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 gid 否 Integer 导入对象所属用户组id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。
  • 响应参数 状态码: 202 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 状态码: 400 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表5 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表6 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID 表7 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求示例 文件系统ID为"77ba6f4b-6365-4895-8dda-bc7142af4dde", 任务ID为"11abef677ac40f46644d1d5cfc2424a4",删除该任务 "DELETE HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/77ba6f4b-6365-4895-8dda-bc7142af4dde/hpc-cache/task/11abef677ac40f46644d1d5cfc2424a4"
  • 响应示例 状态码: 200 查询成功 { "id" : "1131ed520xxxxxxebedb6e57xxxxxxxx", "ip_cidr" : "192.168.xx.xx/16", "rw_type" : "rw", "user_type" : "no_root_squash" } 状态码: 400 错误响应 { "errCode" : "SFS.TURBO.0001", "errMsg" : "Invalid rule id" } 状态码: 500 错误响应 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 id String 权限规格的id ip_cidr String 授权对象的IP地址或网段 rw_type String 授权对象的读写权限 rw:默认选项,以读写的方式共享 ro:以只读的方式共享 none: 没有权限 user_type String 授权对象的系统用户对文件系统的访问权限。取值如下: no_root_squash:客户端使用的是root用户时,映射到NFS服务器的用户依然为root用户。 root_squash:客户端使用的是root用户时,映射到NFS服务器的用户为NFS的匿名用户(nfsnobody)。 all_squash:默认选项。所有访问NFS服务器的客户端的用户都映射为匿名用户。' 状态码: 400 表4 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表5 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求示例 文件系统ID为"77ba6f4b-6365-4895-8dda-bc7142af4dde",规则rule_id为"11abef677ac40f46644d1d5cfc2424a4", 查询权限规则详情 GET HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/77ba6f4b-6365-4895-8dda-bc7142af4dde/fs/perm-rules/11abef677ac40f46644d1d5cfc2424a4
  • 请求示例 创建绑定一个ldap服务器 { "url" : "ldap://192.168.xx.xx:60000", "base_dn" : "dc=example,dc=com", "user_dn" : "cn=admin,dc=example,dc=com", "password" : "pwdxxxxxx", "backup_url" : "ldap://192.168.xx.xx:60000", "schema" : "RFC2307", "search_timeout" : 10, "allow_local_user" : "Yes" }
  • 功能介绍 创建并绑定ldap配置。LDAP(Lightweight Directory Access Protocol),中文名称轻量级目录访问协议,是对目录服务器(Directory Server)进行访问、控制的一种标准协议。LDAP服务器可以集中式地管理用户和群组的归属关系,通过绑定LDAP服务器,当一个用户访问您的文件系统的文件时,SFS Turbo将会访问您的LDAP服务器以进行用户身份验证,并且获取用户和群组的归属关系,从而进行Linux标准的文件UGO权限的检查。要使用此功能,首先您需要搭建好LDAP服务器(当前SFS Turbo仅支持LDAP v3协议),常见提供LDAP协议访问的目录服务器实现有OpenLdap(Linux),Active Directory(Windows)等,不同目录服务器的实现细节有所差别,绑定时需要指定对应的Schema(Schema配置错误将会导致SFS Turbo无法正确获取用户以及群组信息,可能导致无权限访问文件系统内文件),当前SFS Turbo支持的Schema有: RFC2307(Openldap通常选择此Schema) MS-AD-BIS(Active Directory通常选择此Schema,支持RFC2307bis,支持嵌套的群组) SFS Turbo还支持配置主备LDAP服务器,当您的一台LDAP服务器故障无法访问后,SFS Turbo将会自动切换到备LDAP服务器访问,以免影响您的业务。同时,若您还选择将allow_local_user配置为Yes(默认为No),那么当您的LDAP服务器全部故障无法访问时,SFS Turbo将会使用您的本地用户以及群组信息,而非LDAP服务器中配置的信息进行身份验证和UGO权限检查,以最大程度减少故障影响面。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 jobId String ldap异步任务的id。可通过查询job的状态详情接口查询job的执行状态。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 url 是 String ldap服务器的url,固定格式为 ldap://{ip_address}:{port_number} 或 ldaps://{ip_address}:{port_number},例如ldap://192.168.xx.xx:60000 base_dn 是 String 数据库中的域 user_dn 否 String 用户区别名 password 否 String ldap认证密码 vpc_id 否 String 一般不涉及。仅在SFSTurbo支持多VPC的场景下,需要指定LDAP服务器可连通的VPC的id。 filter_condition 否 String 过滤条件。保留字段,暂不支持 backup_url 否 String ldap备节点的url,固定格式为 ldap://{ip_address}:{port_number} 或 ldaps://{ip_address}:{port_number},例如ldap://192.168.xx.xx:60000 schema 否 String ldap的schema,不填写则默认为RFC2307 search_timeout 否 Integer ldap搜索的超时时间,单位为秒。不填写则默认为3秒 allow_local_user 否 String 访问ldap服务器失败后是否允许使用本地用户鉴权
  • 响应示例 状态码: 200 请求已被接受 { "jobId" : "72362dxxxxa04d419dbd5e6d9fe5xxxx" } 状态码: 400 客户端错误 { "errCode" : "SFS.TURBO.0001", "errMsg" : "Invalid rule id" } 状态码: 500 内部错误 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 url String ldap服务器的url base_dn String 数据库中的域 user_dn String 用户区别名 filter_condition String 过滤条件。保留字段,暂不支持 backup_url String ldap备节点的url schema String ldap的schema,不填写则默认为RFC2307 search_timeout Integer ldap搜索的超时时间,单位为秒。不填写则默认为3秒 allow_local_user String 访问ldap服务器失败后是否允许使用本地用户鉴权 状态码: 500 表4 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 功能介绍 查询Ldap的配置。LDAP(Lightweight Directory Access Protocol),中文名称轻量级目录访问协议,是对目录服务器(Directory Server)进行访问、控制的一种标准协议。LDAP服务器可以集中式地管理用户和群组的归属关系,通过绑定LDAP服务器,当一个用户访问您的文件系统的文件时,SFS Turbo将会访问您的LDAP服务器以进行用户身份验证,并且获取用户和群组的归属关系,从而进行Linux标准的文件UGO权限的检查。要使用此功能,首先您需要搭建好LDAP服务器(当前SFS Turbo仅支持LDAP v3协议),常见提供LDAP协议访问的目录服务器实现有OpenLdap(Linux),Active Directory(Windows)等,不同目录服务器的实现细节有所差别,绑定时需要指定对应的Schema(Schema配置错误将会导致SFS Turbo无法正确获取用户以及群组信息,可能导致无权限访问文件系统内文件),当前SFS Turbo支持的Schema有: RFC2307(Openldap通常选择此Schema) MS-AD-BIS(Active Directory通常选择此Schema,支持RFC2307bis,支持嵌套的群组) SFS Turbo还支持配置主备LDAP服务器,当您的一台LDAP服务器故障无法访问后,SFS Turbo将会自动切换到备LDAP服务器访问,以免影响您的业务。同时,若您还选择将allow_local_user配置为Yes(默认为No),那么当您的LDAP服务器全部故障无法访问时,SFS Turbo将会使用您的本地用户以及群组信息,而非LDAP服务器中配置的信息进行身份验证和UGO权限检查,以最大程度减少故障影响面。
  • 响应示例 状态码: 200 查询成功 { "url" : "ldap://192.168.xx.xx:60000", "base_dn" : "dc=example,dc=com", "user_dn" : "cn=admin,dc=example,dc=com", "backup_url" : "ldap://192.168.xx.xx:60000", "schema" : "RFC2307", "search_timeout" : 10, "allow_local_user" : "Yes" } 状态码: 500 错误响应 { "errCode" : "SFS.TURBO.0005", "errMsg" : "Internal server error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 tags Array of Tag objects tag标签的列表 表5 Tag 参数 参数类型 描述 key String 标签的键。 最大长度128个字符。 key不能为空。 values Array of strings 值列表。每个值最大长度255个字符,如果values为空列表,则表示匹配任意值value。value之间为或的关系。
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 409 表5 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 errCode String 错误码 errMsg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 账号的token Content-Type 是 String MIME类型 表3 请求Body参数 参数 是否必选 参数类型 描述 path 是 String 合法的的目录全路径 mode 否 Long 目录权限,默认值是755,取值范围是0到777。第一位表示目录所有者的权限,取值范围是0到7;第二位表示目录所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。例如:755中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位5代表其他用户对该目录具有读、执行权限。 uid 否 Long 目录所有者的用户id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 gid 否 Long 目录所属用户组id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。
共100000条