将属性添加到IBM Bluemix区块链CA(membersrvc.yaml)

hty*_*agi 9 ca blockchain hyperledger ibm-cloud

我正在研究区块链的概念证明.我正在使用bluemix网络进行区块链和部署我在本地开发的应用程序.我想测试CA功能,并希望向用户添加属性membersrvs.yaml,并执行基于属性的访问控制.但是,当我的网络托管在bluemix上时,我无法找到如何编辑/更新文件.请原谅我,如果这看起来很基本,我仍然对事情有所了解.

小智 2

您无法编辑/自定义membersrvs.yaml驻留在 Bluemix 区块链服务中的内容。

但是,您仍然可以通过 API 添加用户。这不是通过 REST 接口公开的,您必须使用 gRPC(通过HFC SDK)。演示“cp-web”第 76 行中有一个示例(也在下面)

/**
 * Registers a new user in the membership service for the blockchain network.
 * @param enrollID The name of the user we want to register.
 * @param cb A callback of the form: function(error, user_credentials)
 */
module.exports.registerUser = function (enrollID, cb) {
    console.log(TAG, 'registerUser() called');

    if (!chain) {
        cb(new Error('Cannot register a user before setup() is called.'));
        return;
    }

    chain.getMember(enrollID, function (err, usr) {
        if (!usr.isRegistered()) {
            console.log(TAG, 'Sending registration request for:', enrollID);
            var registrationRequest = {
                enrollmentID: enrollID,
                affiliation: 'group1'
            };
            usr.register(registrationRequest, function (err, enrollSecret) {
                if (err) {
                    cb(err);
                } else {
                    var cred = {
                        id: enrollID,
                        secret: enrollSecret
                    };
                    console.log(TAG, 'Registration request completed >successfully!');
                    cb(null, cred);
                }
           });
        } else {
            cb(new Error('Cannot register an existing user'));
        }
    });
};
Run Code Online (Sandbox Code Playgroud)