腾讯云人脸识别子账号访问管理_AI解决方案_同尘科技
人脸识别已经接入了腾讯云云资源访问管理系统 CAM(Cloud Access Management),您可以在 访问管理控制台 进行用户组、用户、角色、策略等一系列相关管理操作。通过设置 CAM 策略, 您可以控制哪些子用户或协作者账号拥有人脸识别 API 和控制台的查看和操作权限。目前人脸识别支持服务级、接口级和资源级授权三种方式:服务级授权:您可以将预设全读写策略 QcloudFRFullAccess 授予子账户,其将能够和您一样访问人脸识别所有功能。如果您只授予预设只读策略 QcloudFRReadOnlyAccess,其将只能执行只读操作。全局预设只读策略 ReadOnlyAccess 不⽀持授予⼦账户⼈脸识别的控制台只读操作权限。接口级授权:您可以在 CAM 控制台中按接口维度给子账户授权,子账户将只能使用您已授权的接口。可参考使用示例中授予单个接口权限的操作 授予单个接口权限。资源级授权:您可以在 CAM 控制台中按人员库资源维度给子账户授权,子账户将只能操作您已授权的人员库。可参考 支持资源级授权的接口列表。
支持资源级授权的接口列表
API 名 | API 描述 | 资源类型 | 资源六段式示例 |
GetGroupInfo | 获取人员库信息 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
GetGroupList | 获取人员库列表 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
GetLargePersonList | 获取大人员列表 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
GetPersonList | 获取人员库列表 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
GetPersonListNum | 获取人员库列表数量 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
SearchFaces | 人脸搜索 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
SearchFacesReturnsByGroup | 人脸搜索按库返回 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
SearchPersons | 人员搜索 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
SearchPersonsReturnsByGroup | 人员搜索按库返回 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
ConsoleSearchFaces | 控制台人脸搜索 | 人员库 ID | qcs::iai:$region:$account:groupid/ *qcs::iai:$region:$account:groupid/$groupId |
ConsoleSearchPersons | 控制台人员搜索 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
ConsoleGetGroupList | 控制台分页获取人员库列表 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
ConsoleGetPersonList | 控制台获取人员列表 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
ConsoleModifyPersonInfo | 控制台修改人员信息 | 人员库 ID | qcs::iai:$region:$account:groupid/* qcs::iai:$region:$account:groupid/$groupId |
注意文档上的其他接口均为接口级。
使用示例
服务级、接口级和资源级均需要在 访问管理控制台 中进行授权。创建自定义策略的方式可参考 创建自定义策略。在接口级和资源级接口均可以按照以下的方式给子账户授权。如果 resource 字段填 * ,相当于授予 action 里的接口所有的权限。接口级接口必须授予 * 才可使用,资源级可授予 * 或资源六段式。高级策略会覆盖低级策略,若资源级接口授予了 * ,则其他资源六段式不会生效。
授予单个接口权限
以下为给子账户授予五官定位(AnalyzeFace)和稠密关键点(AnalyzeDenseLandmarks)授权。在 action 中填入对应的接口名:
{ "version": "2.0", "statement": [ { "effect": "allow", "resource": [ "*" ], "action": [ "name/iai:AnalyzeDenseLandmarks", "name/iai:AnalyzeFace" ] } ]}
其中 action 可以指定多个接口和支持通配符 * 。上述的授权方式也可以简化为以下的方式:
{ "version": "2.0", "statement": [ { "effect": "allow", "resource": [ "*" ], "action": [ "name/iai:Analyze*" ] } ]}
授予某些人员库的所有操作权限
人员库管理相关接口较多,部分接口为接口级,部分为资源级。只有资源级接口能做到人员库粒度化控制,接口级接口暂时只能全量授权。若想给某个子账户授予特定人员库的所有操作权限,则资源级接口可以限制为特定人员库的资源六段式,接口级暂时只能授予*。以下示例中第一个 statement 为给子账户授予 test * 的人员库资源级接口操作权限,第二个 statement 为授予子账户所有人员库接口级接口操作权限。可参考我们的官网文档对部分接口进行微调:
{ "version": "2.0", "statement": [ { "effect": "allow", "resource": [ "qcs::iai:::groupid/test*" ], "action": [ "name/iai:CheckSimilarPerson", "name/iai:CopyPerson", "name/iai:CreatePerson", "name/iai:Delete*", "name/iai:Get*", "name/iai:ConsoleGet*" "name/iai:Modify*", "name/iai:ConsoleModify*", "name/iai:Search*", "name/iai:ConsoleSearch*", "name/iai:UpgradeGroupFaceModelVersion" ] }, { "effect": "allow", "resource": [ "*" ], "action": [ "name/iai:CreateGroup", "name/iai:CreateFace", "name/iai:CreateFaceWithFaceRect", "name/iai:DeleteFace", "name/iai:DeletePerson", "name/iai:EstimateCheckSimilarPersonCostTime", "name/iai:GetCheckSimilarPersonJobIdList", "name/iai:GetPersonBaseInfo", "name/iai:GetPersonGroupInfo", "name/iai:GetSimilarPersonResult", "name/iai:GetUpgradeGroupFaceModelVersionJobList", "name/iai:GetUpgradeGroupFaceModelVersionResult", "name/iai:ModifyPersonBaseInfo", "name/iai:RevertGroupFaceModelVersion" ] } ]}
授予控制台权限
授予子账户所有控制台权限
控制台绝大部分接口是可以直接访问的,有部分涉及服务使用和计费变更的接口需要授权才可以使用。通过以下方式给这些接口授予 * 后子账户就可以使用所有控制台权限。
{ "version": "2.0", "statement": [ { "effect": "allow", "resource": [ "*" ], "action": [ "name/iai:ConsoleGetGroupList", "name/iai:ConsoleGetPersonList", "name/iai:ConsoleSearchFaces", "name/iai:ConsoleSearchPersons", "name/iai:ConsoleModifyPersonBaseInfo", "name/iai:ActivateService", "name/iai:SetRenewFlag", "name/iai:SwitchQpsCountMode" ] } ]}
授予某些人员库的控制台权限
如果只想给子账户授予某些人员库的使用权限,可以参照以示例式,给资源级接⼝ ConsoleGetGroupList、ConsoleGetPersonList、ConsoleSearchFaces、ConsoleSearchPersons 授予⼈员库 test * 权限。
{ "version": "2.0", "statement": [ { "effect": "allow", "resource": [ "qcs::iai:::groupid/test*" ], "action": [ "name/iai:ConsoleGetGroupList", "name/iai:ConsoleGetPersonList", "name/iai:ConsoleSearchFaces", "name/iai:ConsoleSearchPersons" ] }, { "effect": "allow", "resource": [ "*" ], "action": [ "name/iai:ModifyPersonBaseInfo", "name/iai:ActivateService", "name/iai:SetRenewFlag", "name/iai:SwitchQpsCountMode" ] } ]}
对解决方案有疑惑?想了解解决方案收费? 联系解决方案专家
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠
阿里云解决方案也看看?: 点击对比阿里云的解决方案
暂无评论,你要说点什么吗?