Hyperledger Composer: как использовать карту для вызова REST-сервисов композитора

Я создаю сеть для малого бизнеса на своем локальном компьютере, используя композитор Hyperledger. Я также создал несколько карточек для участников, следуя этому url.

Теперь мне нужно вызывать различные транзакции в этой цепочке блоков, вызывая службы REST, которые предоставляются через REST Server композитора. Но эти транзакции должны были быть вызваны только соответствующими участниками.

Как я могу вызвать эти службы с помощью ранее созданных карточек в моем браузере / мобильном приложении? Или карта не имеет отношения к доступу к услугам? Тогда зачем создавать карточки для участников?




Ответы (2)


вам нужно будет включить многопользовательский режим и использовать аутентификацию, как описано выше -> https://hyperledger.github.io/composer/latest/integrating/enables-rest-authentication.html

Полное руководство уже доступно здесь -> https://hyperledger.github.io/composer/latest/tutorials/google_oauth2_rest, показывающий, как вы берете те карты, которые вы создали с помощью интерфейса командной строки, и как экспортировать карты с установленными учетными данными при подготовке к импорту в клиентский REST API (т.е. браузер пользователя, который взаимодействует с auth -защищенные REST API). Он показывает, как вы можете использовать разные карты (и, следовательно, различать идентификаторы блокчейна, согласно руководству) для выполнения транзакций в бизнес-сети, которая предоставляется через защищенные REST API в примере руководства.

person Paul O'Mahony    schedule 03.09.2018
comment
Спасибо, Пол за ответ. Раздел Google_oauth2 выглядит многообещающим. Я должен попробовать эти шаги. Сообщу результат - person NGR; 04.09.2018

один из способов - создать rest api с помощью composer-rest-api. Если вы это сделаете, вы заметите, что вас попросят указать, какую карту вы хотите использовать. Затем он будет использовать эту карту, чтобы опросить вашу сеть, выяснить, какие активы, участники и транзакции у вас есть, и сгенерирует все конечные точки, необходимые для взаимодействия с вашей бухгалтерской книгой. Это означает, что этот api будет подключаться через идентификатор, который вы использовали при первоначальном создании сетевой карты.

So :

  1. вы создаете сетевую карту
  2. вы создаете против него rest api.
  3. теперь ваше клиентское приложение может использовать этот API для связи с вашей сетью.

Теперь статья, которую вы связали, реализует определенный сценарий.

у вас 1 администратор сети. этот администратор создает учетные записи администратора, по одной для каждой организации в сети. эти новые администраторы теперь могут выдавать новые идентификаторы для своей соответствующей организации.

есть еще кое-что, что вы можете сделать в зависимости от вашей стратегии.

примеры могут быть здесь: https://hyperledger.github.io/composer/latest/integrating/enables-rest-authentication

https://hyperledger.github.io/composer/latest/integrating/enables-multiuser

Я предлагаю вам пройти их и выбрать то, что подходит для вашего конкретного сценария.

person Andrei Dragotoniu    schedule 03.09.2018
comment
Спасибо Андрею за ответ. Я уже выполнил шаги 1,2,3, о которых вы говорили выше. Я снова попытался перейти по первой ссылке. Но это еще не выяснено. После использования Passport Github, как получить токен в REST API? Упоминается, что сначала нужно получить доступ к токену из веб-браузера и передать его в фактический REST API, что практически невозможно в случае мобильных приложений. - person NGR; 04.09.2018