Gerenciar Canais
Este tópico contém informações sobre como gerenciar os canais em sua rede, como criar e exibir canais, como associar colegas e designar e ancorar pares, como trabalhar com políticas e listas de controle de acesso e como associar solicitantes a um canal.
O que São Canais?
Os canais particionam e isolam pares e dados contábeis para fornecer transações privadas e confidenciais na rede blockchain.
- Pares
- Razão compartilhado
- Chaincodes instanciados no canal
- Um ou mais nós de serviço de solicitação
- Definições de política de canal e ACLs nas quais as definições são aplicadas
Cada par que se une a um canal tem sua própria identidade que o autentica aos pares e serviços do canal. Embora os colegas possam pertencer a vários canais, as informações sobre transações, estado do razão e associação ao canal são restritas aos colegas de cada canal.
Você pode usar a console do Oracle Blockchain Platform ou o SDK do Hyperledger Fabric para criar canais em sua rede blockchain. Consulte Exibir Canais.
Exibir Canais
Os membros da sua rede usam canais para comunicar privadamente informações sobre transações de blockchain.
Criar um Canal
Você pode adicionar canais à rede e especificar quais membros podem usar o canal e quais colegas podem entrar no canal. Você não pode excluir canais.
Você deve ser um administrador para concluir esta tarefa.
-
Implante um chaincode no canal. Consulte Implantar um Chaincode.
-
Se a rede contiver participantes, esses participantes usarão seus consoles para juntar colegas membros ao canal. Consulte Participar de um Ponto para um Canal.
Exibir Atividade do Razão de um Canal
Use o razão para localizar informações resumidas e estatísticas de tempo de execução para transações em um canal específico.
Exibir ou Atualizar a Lista de Organizações de um Canal
Você pode exibir a lista das organizações que têm acesso ao canal. Se você criou o canal, poderá alterar as permissões de uma organização no canal e poderá adicionar organizações ou removê-las do canal
Junte-se a um Par em um Canal
Você pode adicionar um nó de pareamento a um canal para que o nó possa usá-lo para trocar informações de transação privada com outros nós de pareamento no canal.
-
Ao criar um canal, você especifica quais nós pares locais podem entrar no canal.
-
Se você estiver criando uma rede contendo um participante, poderá selecionar o participante como membro no canal. Ou você pode adicionar o participante após a criação do canal.
-
Sua instância tem vários domínios de disponibilidade ou domínios de falha, e a Oracle recomenda que você una um par de cada partição ao canal. Isso ocorre porque, se uma VM estiver indisponível, o canal ainda estará disponível para endossos e commits. Para determinar em qual domínio um par está localizado, no menu Mais Ações, selecione Mostrar Informações do AD para ver as informações do domínio de disponibilidade.
- Você pode juntar no máximo sete pares de cada domínio.
Consulte Criar um Canal
Você deve ser administrador para executar esta tarefa.
Adicionar um Par de Âncora
Cada membro que usa um canal deve designar pelo menos um par âncora. Os pares âncora são pontos de contato de rede principais e são usados para descobrir e se comunicar com outros pares de rede no canal.
Você pode designar um ou mais colegas em sua organização como um par âncora em um canal. Para uma rede de alta disponibilidade, você pode especificar dois ou mais pares de âncora. Todos os membros que usam o canal de rede devem usar seu console para designar um ou mais de seus nós pares como pares âncora.
Você deve ser administrador para executar esta tarefa.
Alterar ou remover um par de âncora
Você pode alterar ou remover os pares âncora de um canal. Os pares âncora são pontos de contato de rede principais e são usados para descobrir e se comunicar com outros pares de rede no canal.
Antes de alterar ou remover os pares de âncora do canal, observe as seguintes informações:
- Para se comunicar no canal, você deve designar um ou mais colegas em sua organização como um par âncora.
- Para uma rede de alta disponibilidade, você pode especificar dois ou mais pares de âncora.
- Todos os membros que usam o canal de rede devem usar seu console para designar um ou mais de seus nós pares como pares âncora.
Você deve ser administrador para executar esta tarefa.
Exibir Informações Sobre Chaincodes Implantados
Você pode exibir informações sobre os chaincodes implantados nos diferentes canais da sua rede.
- Vá para a console e selecione a guia Canais.
- Na tabela de canais, clique no nome do canal com o chaincode cujas informações você deseja exibir.
- Na página Informações do Canal, confirme se o painel Chaincodes Implantados está selecionado
- Na tabela de chaincode, você pode:
- Clique no ID do pacote de chaincode para ir até a guia Chaincodes e obter mais informações sobre ele. Por exemplo, os pares nos quais o chaincode está instalado e os canais nos quais o chaincode está implantado.
- No menu Mais Ações de um chaincode, clique em Exibir Definição de Chaincode para localizar detalhes sobre a definição do chaincode, incluindo a política de endosso.
- (Opcional) Se você vir uma listagem de canais sem um chaincode, poderá ir até a guia Chaincodes e implantar um chaincode no canal. Consulte Implantar um Chaincode.
Acesso a Políticas de Canal e ACLs
Este tópico contém informações sobre políticas de um canal e listas de controle de acesso (ACLs). Fornece uma visão geral de quais políticas são, tipos de políticas e como modificá-las, além de usar ACLs para gerenciar quais organizações e funções podem acessar os recursos de um canal.
O Que São Políticas de Canal? (Hyperledger Fabric v2.x)
Uma política define um conjunto de condições. As partes necessárias devem atender às condições da política antes que suas assinaturas sejam consideradas válidas e a solicitação correspondente aconteça na rede.
A rede blockchain é gerenciada por essas políticas. As políticas verificam a identidade associada a uma solicitação em relação à política associada ao recurso necessário para atender à solicitação. As políticas estão localizadas na configuração do canal.
Depois de configurar as políticas do canal, designe-as aos recursos de ACLs do canal para determinar quais membros devem assinar antes que uma alteração ou ação possa acontecer no canal. Por exemplo, suponha que você tenha modificado a política Writers para incluir membros da Organização A ou da Organização B. Em seguida, você designou a política Writers ao recurso ACL cscc/GetConfigBlock
do canal. Agora, somente um membro da Organização A ou da Organização B pode chamar GetConfigBlock
no componente cscc
.
Quais São os Tipos de Política?
Há dois tipos de política: Assinatura e ImplicitMeta.
- Assinatura — Especifica uma combinação de regras de avaliação. Ele suporta combinações de E, OU e NOutOf. Por exemplo, você pode definir algo como "Um administrador da organização A e 2 outros administradores" ou "11 de 20 administradores da organização".
Quaisquer novas políticas que você criar serão políticas de Assinatura.
- ImplicitMeta — Este tipo de política só é válido no contexto da configuração. Ele agrega o resultado da avaliação de políticas mais profundas na hierarquia de configuração, que são definidas pelas políticas de Assinatura. Ele suporta regras padrão, por exemplo, "A maioria das políticas de administração da organização".
Quando as Políticas São Criadas?
Quando você adiciona um canal à rede, o Oracle Blockchain Platform cria políticas padrão. As políticas padrão são: Administradores, Gravadores, Leitores, Endosso, LifecycleEndorsement (políticas ImplicitMeta) e Criador (política de Assinatura). Se necessário, você pode modificar essas políticas ou criar novas políticas.
Observe o seguinte problema importante sobre políticas de canal:
-
Você pode usar a console para criar um canal e definir a ACL da sua organização como ReaderOnly. Depois de salvar o novo canal, você não poderá atualizar essa definição de ACL na opção Editar Organização do canal.
No entanto, você pode usar a funcionalidade Gerenciar Políticas de Canal da console para adicionar sua organização à política Writers, que substitui a definição de ACL ReaderOnly do canal.
Adicionar ou Modificar Políticas de um Canal
Você pode adicionar ou modificar a política de um canal para especificar quais membros são necessários para executar uma ação específica no canal. Depois de definir políticas, designe-as às ACLs do canal.
Antes de adicionar ou atualizar políticas, você precisa entender como o Oracle Blockchain Platform cria políticas de canal padrão. Consulte O Que São Políticas de Canal? (Hyperledger Fabric v2.x).
Você deve ser administrador para executar esta tarefa.
- Vá para o console e selecione a guia Canais.
A guia Canais é exibida e a tabela de canais contém uma lista de todos os canais da sua rede.
- Na tabela de canais, clique no nome do canal ao qual você deseja adicionar políticas ou modificar políticas.
A página Informações do Canal é exibida.
- Na página Informações do Canal, clique no painel Políticas do Canal.
- Execute uma das seguintes etapas:
- Para adicionar uma nova política, clique no botão Criar uma Nova Política. A caixa de diálogo Criar Política é exibida. Digite um nome no campo Nome da apólice e selecione Assinatura no campo Tipo de apólice. Expanda a seção Política de Assinatura.
- Para modificar uma política existente, clique no nome de uma política. A caixa de diálogo Atualizar Política é exibida.
- Clique no botão Adicionar Identidade para adicionar uma organização. Ou modifique uma política de assinatura existente conforme necessário. Observe as seguintes informações:
Campo Descrição ID MSP No menu suspenso, selecione a organização que deve assinar a política. Atribuição Selecione a atribuição de pareamento correspondente exigida pela política. Normalmente será membro. Você pode encontrar a atribuição de um par exibindo suas informações de configuração. Modo de Expressão da Política Na maioria dos casos, você usará o Básico. Selecione Avançado para gravar uma string de expressão usando AND, OR e NOutOf. Para obter informações sobre como gravar uma string de expressão de política válida, consulte Políticas de endosso na documentação do Hyperledger Fabric. Assinado por Selecione quantos membros devem assinar a política para atender à solicitação. - Se você estiver adicionando uma nova política, clique em Criar. Se você estiver modificando uma política, clique em Atualizar.
Excluir as Políticas de um Canal
Você pode excluir políticas de canal que criou.
Não é possível excluir as políticas padrão: Administradores, Criador, Leitores, Gravadores, Endosso e LifecycleEndorsement. Além disso, não será possível excluir uma política de canal se ela estiver designada a uma ACL. Antes de tentar excluir uma política de canal, confirme se a política não foi designada.
Você deve ser administrador para executar esta tarefa.
- Vá para o console e selecione a guia Canais.
A guia Canais é exibida e a tabela de canais contém uma lista de todos os canais da sua rede.
- Na tabela de canais, clique no canal do qual você deseja excluir uma política.
A página Informações do Canal é exibida.
- Na página Informações do Canal, clique no painel Políticas do Canal.
- Localize a política que você deseja excluir e clique no botão Mais Opções.
- Clique em Remover e confirme a exclusão.
O que são ACLs de canal?
As listas de controle de acesso (ACLs) usam políticas para gerenciar quais organizações e atribuições podem acessar os recursos de um canal.
Os usuários interagem com a rede blockchain direcionando componentes como o chaincode do sistema de consulta (qscc
), chaincode do sistema de ciclo de vida (_lifecycle
), chaincode do sistema de configuração (cscc
), pareamento e evento. Esses componentes estão associados a recursos específicos (por exemplo, GetConfigBlock
ou GetChaincodeData
) aos quais você pode designar políticas no nível do canal. Essas políticas fazem parte da configuração do canal.
Uma política define quais organizações e atribuições podem solicitar um recurso. Quando uma solicitação é feita, a política informa ao sistema para verificar a identidade do solicitante e determinar se ele está autorizado a fazer a solicitação. Quando você cria um canal, o Oracle Blockchain Platform inclui as ACLs padrão do Hyperledger Fabric com o canal. O Oracle Blockchain Platform também cria políticas padrão (Admin, Criador, Gravadores, Leitores, Endosso e LifecycleEndorsement) para o canal. Você pode modificar essas políticas ou criar novas políticas conforme necessário. Consulte O Que São Políticas de Canal? (Hyperledger Fabric v2.x).
Atualizar ACLs do Canal
Você pode atualizar as ACLs do canal designando políticas aos recursos do canal. Uma política define quais organizações e atribuições podem solicitar um recurso
Antes de atualizar as ACLs de um canal, você deve entender quais políticas e ACLs são. Para obter mais informações, consulte O Que São ACLs de Canal?.
- Vá para o console e selecione a guia Canais.
A guia Canais é exibida e a tabela de canais contém uma lista de todos os canais da sua rede.
- Na tabela de canais, clique no nome do canal para o qual deseja atualizar ACLs.
A página Informações do Canal é exibida.
- Na página Informações do Canal, clique no painel ACLs.
- Na tabela Recursos, localize o recurso que você deseja atualizar. Clique no botão Expandir do recurso e selecione a política que você deseja designar ao recurso.
- Modifique as políticas de outro recurso conforme necessário.
- Clique em Atualizar ACLs.
Adicionar ou Remover Ordenadores de um Canal
A organização administrativa do solicitante pode adicionar ou remover solicitantes de um canal.
- Na console do fundador, abra a guia Canais e selecione o canal para ver sua exibição de detalhes.
- Abra a subaba Pedidos. Todos os nós do solicitante atualmente unidos ao canal são listados.
- Clique em Unir Canal. Selecione um OSN que ainda não esteja neste canal e clique em Participar.
- Na console do fundador, abra a guia Canais e selecione o canal para ver sua exibição de detalhes.
- Abra a subaba Pedidos. Todos os nós do solicitante atualmente unidos ao canal são listados.
- Selecione o solicitante que você deseja remover do canal e, no menu Mais Ações, selecione Remover.
Definir a Organização do Administrador do Solicitante
Você pode atribuir a administração de OSNs em um canal a qualquer organização. Normalmente, o fundador ou o criador do canal seriam designados.
- No console fundador, abra a guia Canais.
- Selecione o canal para o qual você deseja definir a organização do administrador do solicitante e, no menu Ação, selecione Gerenciar Administrador de OSNs.
- Selecione na lista de organizações disponíveis e clique em Submeter.
Editar Definições de Serviço de Ordenamento para um Canal
Você pode atualizar as definições de serviço de ordenamento de um canal específico.
- Separadamente, você pode atualizar as definições do serviço de ordenação para toda a rede, conforme descrito em Editar Definições do Serviço de Ordenação para a Rede.
- Se você alterar as definições do serviço de pedido e houver aplicativos em execução na rede, esses aplicativos deverão ser atualizados manualmente para usar as definições revisadas do serviço de pedido.
- Não é comum, mas em algumas situações, você pode expor um serviço de pedido diferente a alguns dos participantes da rede. Nesse caso, você exportará o bloco de configuração de rede atualizado e os participantes necessários importarão as configurações revisadas. Consulte Participar dos OSNs do Participante ou Escalonados para o Serviço de Pedidos do Fundador.