无需自定义集成与逐用户配置的全BIM 360用户Forge查看应用搭建咨询
基于Autodesk Forge构建通用BIM 360查看应用方案
核心前提配置(一次配置即可全局适用)
- 在Autodesk Developer Platform注册Forge应用时,必须选择「多租户(Multi-tenant)」应用类型,不要选择单租户类型:单租户应用需要给每个BIM 360实例单独启用配置,多租户模式默认支持所有BIM 360用户通过OAuth授权直接接入
- 应用权限配置时,仅勾选
data:read、viewables:read两个基础权限即可满足查看需求,不需要申请额外高权限
核心实现流程
步骤1:实现3条腿的OAuth 2.0授权流程
不需要预配置用户的BIM 360账号权限,用户访问你的应用时,直接跳转到Autodesk统一授权页面,用户用自己的BIM 360账号登录授权即可。授权后应用可以获取对应用户名下可访问的所有BIM 360项目、文件权限,权限范围完全匹配用户本身的BIM 360权限边界,不会越权也不需要管理员提前配置。
步骤2:接入Forge Viewer
首先通过Forge Data Management API拉取授权用户的BIM 360 hub、项目、文件列表,找到目标文件对应的URN后,调用Model Derivative API转换为Viewer可识别的SVF格式(如果文件已经转换过可以跳过这一步),然后用获取到的用户访问令牌初始化Viewer加载模型即可,基础初始化代码示例:
const viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('viewer-container')); Autodesk.Viewing.Initializer({ accessToken: 已获取的用户访问令牌 }, () => { viewer.start(); viewer.loadModel(`https://developer.api.autodesk.com/modelderivative/v2/designdata/${目标文件URN}/manifest`); });
步骤3:权限边界控制
所有操作完全依赖用户自身的BIM 360权限,应用不需要额外做权限分配:用户能看到的BIM 360项目/文件就是他本身账号有权限访问的内容,不会出现越权访问的情况,也不需要管理员提前给你的应用开通对应实例的访问权限。
常见注意事项
多租户应用的公开发布需要先通过Autodesk的应用审核,审核通过后所有BIM 360用户都可以直接使用,不需要每个BIM 360实例的管理员单独添加应用。
- 开发测试阶段可以用自己的BIM 360账号测试授权、查看功能,功能验证完成后提交Autodesk官方审核即可上线公开使用
- 不要使用2条腿的OAuth流程,2条腿的流程是服务到服务的授权,必须提前给每个BIM 360实例配置应用访问权限,不符合你的需求
内容的提问来源于stack exchange,提问作者John Kuldeep Roshan Kerketta
相关产品推荐
相关产品推荐

