阿里云区块链服务(AlibabaCloud BaaS)
阿里云区块链服务是企业级区块链平台服务,支持Hyperledger Fabric、蚂蚁金服自研区块链技术、以及企业以太坊Quorum,为企业应用构建更安全稳定的区块链环境,简化部署运维及开发流程,实现业务快速上链。
AlibabaCloud BaaS VS Code Extension
VS Code是被广泛使用的一种轻量级的跨平台源代码编辑器,AlibabaCloud BaaS VS Code Extension 是阿里云区块链服务 的 VS Code 插件,通过该插件,可以方便的完成:
- 提交本地智能合约到云端,进行智能合约安全扫描
- 打包本地的Fabric Chaincode,并部署到云端
- 激活云端的Fabric Chaincode(Instantiate/Upgrade Chaincode)
- 管理Fabric组织用户,包括创建新用户以及修改用户密码
- 下载connection profile到本地
前置需求
如果您期望使用 AlibabaCloud BaaS VS Code Extension 的所有功能,那么您需要确保系统满足如下要求:
- VS Code:在 Visual Studio Code 官网 中可以下载安装
- 操作系统是Mac或者Linux
- 拥有足够权限的AlibabaCloud子账号,以及账号对应的"AccessKeyID/AccessKeySecret"(以下简称AK/SK)。子账号及其AK/SK可以通过AlibabaCloud RAM服务创建。
安装插件
- 打开 VS Code 并进入插件市场。
- 在插件市场中搜索 “AlibabaCloud BaaS”,查看详情并安装。
- 重启 VS Code,左侧边栏中会展示已安装的 AlibabaCloud BaaS VS Code Extension 插件。
快速入门
配置阿里云账户
- 未配置AK/SK时,系统会提示输入AK、SK、站点。
- 通过VS Code扩展的配置界面,在AlibabaCloud BaaS扩展下修改AK/SK配置。
智能合约安全扫描
- 通过资源管理器里目录、文件、工作区的右键菜单,或者编辑页面标题栏的右侧菜单,均可以进入智能合约安全扫描功能。
- 也可以通过VS Code的命令行(shift+command+p),搜索baas,选择Analyze smart contract,通过选择工作区或者打开的文件,进入到智能合约安全扫描功能
。 - 扫描结果会以警告、错误能方式显示。可以通过“快速修复”中的忽略功能来消除错误提示。
部署Fabric Chaincode
- 通过VS Code命令行,搜索baas,选择Deploy chaincode进入Fabric链码的部署交互过程。如果未对工作区设置过链码的语言类型,会提示选择链码的语言类型。
- 选择DeployNewChaincode。
- 依次选择组织、联盟、通道;输入链码名称、版本、背书策略、初始化参数。
- 扩展成功完成链码打包、上传云端后,会提示链码创建成功。
激活Fabric Chaincode
- 通过Activate chaincode命令进入。
- 在列出所有链码选择需要激活的链码,这里可以通过链码名称、组织名称、通道名称、链码状态等方式模糊搜索。
- 设置背书策略以及collection config。
- 链码激活成功后有相应提示。
升级并激活Fabric Chaincode
- 通过Deploy chaincode -> +UpgradeChaincodeVersion 进入链码升级交互。
- 选择已经部署的链码作为这次链码升级的模板。
- 当前项目打包部署的链码会继承模板链码的组织、通道、名称、背书策略等属性。链码的版本和初始化参数需要在本次升级操作的交互中指定。
- 使用Activate chaincode命令激活升级后的版本。
- 在阿里云控制台可以看到链码对应的状态。
创建Fabric组织用户
- 通过Create user进入用户创建交互。
- 选择组织;输入用户名、密码、确认密码。
- 完成用户创建。可以在阿里云控制台看到对应用户。
重置Fabric组织用户密码
- 通过Reset password进入重置密码交互。
- 选择组织、用户;输入新密码、确认新密码。
- 完成密码重置。
下载Fabric connection profile
- 通过Download connection profile进入下载connection profile交互。
- 选择文件格式、组织、用户。
- 对应的connection profile文件,会写入到项目的根目录中。
配合其他VS Code插件使用
使用IBM Blockchain Platform连接区块链节点
- 在IBM Blockchain Platform扩展中新建gateway。
- 选择Create a gateway from a connection profile;输入gateway名称(即之前下载的connection profile)。
- 完成gateway的创建。
- 在IBM Blockchain Platform扩展中新建wallet。选择Create a new wallet and add an identity。
- 依次输入wallet名称、用户名称、MSPID
- 选择Select a gateway and provide an enrollment ID and secret(即通过之前创建用户来产生identity)。
- 选择gateway;输入用户名和密码。
- 完成wallet的创建。
使用IBM Blockchain Platform查询/提交交易
- 通过IBM Blockchain Platform扩展的Evaluate Transacton进入链码查询交互。
- 依次选择gateway、wallet、链码;输入查询API、查询参数
- 可以在VS Code的输出界面看到链码的查询结果。
- 类似的,通过IBM Blockchain Platform扩展的Submit Transacton进入链码提交交互。
- 提交成功后,我们可以再次使用查询功能,能看到查询结果的变化。
欢迎感兴趣的同学加入钉钉群(钉钉群号: 23181816)。欢迎随时提出宝贵的意见和建议,我们将会根据你们的需求和建议不断完善。