Skip to main content
Um parceiro pode chamar o Midaz com uma credencial própria. No Midaz, você restringe essa credencial a uma organização e, se quiser, a alguns itens dentro dela. Esta página mostra como escolher esse escopo, o que cada escolha alcança e o que o parceiro recebe quando sai dele. Todo parceiro do Midaz precisa de escopo. A organização é sempre obrigatória.

Passo a passo


1

Escolha onde o parceiro atua

Escolha o escopo mais estreito que cobre o que o parceiro precisa. Cada linha é uma restrição que você pode adicionar. O campo na API é o field de uma entrada de escopo; o Console mostra o nome da primeira coluna.O catálogo de escopo lista todas as restrições do Midaz, inclusive as que não estão nesta tabela. Leia-o com Consultar o catálogo de escopo de um produto para midaz.Algumas regras valem para todo escopo:
  • Uma requisição que não nomeia um item de um tipo restrito é recusada quando atua sobre o que essa restrição limita. Por exemplo, um parceiro restrito a alguns ledgers não pode listar todos os ledgers da organização dele. Uma requisição fora do que a restrição limita só precisa da organização.
  • Uma requisição que lista vários valores, como vários aliases num corpo ou numa query, é recusada quando qualquer um deles está fora do escopo.
  • As rotas que atuam sobre o tenant inteiro, como listar organizações ou ler configurações do tenant, são recusadas a todo parceiro.
2

Dê ao parceiro as permissões e o escopo

Crie o parceiro, ou altere-o, no Console ou com a API do Identity. O identificador do produto é midaz.
  • Adicione a entrada de escopo da organização, com exatamente um valor. Sem ela, o Access Manager recusa o parceiro com 400 e IDE-0001. Com duas organizações, recusa com IDE-0002.
  • Adicione as outras restrições que você escolheu no passo 1.
  • Marque os recursos e as ações. O máximo que você pode dar é o que o papel midaz-editor-role tem no seu tenant. Acima disso, o Access Manager recusa com IDE-1043.
O Access Manager confere cada escrita que você dá contra o escopo:
  • Uma escrita que atua sobre o tenant inteiro, como criar uma organização, nunca é dada a um parceiro.
  • Uma escrita que atua acima do escopo do parceiro é recusada. Por exemplo, um parceiro restrito a um ledger não pode receber o direito de criar, alterar ou excluir ledgers, titulares, ou rotas de operação e de transação: essas escritas atuam sobre a organização inteira.
  • As duas recusas respondem 400 com IDE-1056. O Console marca a linha como Fora do escopo.
Para dar leitura das rotas de operação ou de transação, liste os IDs das rotas no escopo. Sem eles, o Access Manager recusa o parceiro com 400 e IDE-1052. O Access Manager não confere se o ID de uma rota pertence ao ledger do parceiro: o parceiro lê toda rota cujo ID você lista. Liste só as rotas dos ledgers dele.Não dê transactions com post a um parceiro restrito só por carteira, segmento ou titular. O Access Manager aceita, mas toda transação desse parceiro é recusada.
3

Crie a aplicação dele no Midaz

Crie a aplicação do parceiro com o produto midaz. Veja Criar as aplicações do parceiro no guia da API, ou no Console. Envie o client ID e o client secret ao parceiro por um canal seguro.
4

Diga ao parceiro como nomear os itens dele

Na maioria das rotas do Midaz, a organização e o ledger já estão no path, então o parceiro não envia nada extra. O parceiro nomeia os outros itens dele nos paths, queries e corpos que o Midaz já tem. Todo valor tem que estar dentro do escopo do parceiro.Na tabela, …/ledgers/{ledger_id} representa /organizations/{organization_id}/ledgers/{ledger_id}, depois de /v1 ou /v2.
Nas rotas de transação da /v1, só as contas de origem são conferidas. Um parceiro restrito por alias pode enviar dinheiro dos próprios aliases para qualquer conta do ledger dele. Para mantê-lo entre as próprias contas, não dê a ele transactions com post.
Nas rotas /v2/transactions, todo débito e todo crédito nomeia uma organização e um ledger dentro do escopo. Um parceiro restrito por alias só pode usar os próprios aliases nos dois lados.Um parceiro restrito por conta ou alias não pode usar estas rotas de transação: inflow na /v1, e confirmar, cancelar, reverter, alterar, ler por ID ou listar. Um parceiro restrito por alias pode criar uma retenção. Um parceiro restrito por ID de conta não pode criar transações. Para deixá-lo mover dinheiro de contas específicas, restrinja-o por alias.Um campo de corpo que aceita um item aceita um valor, como portfolioId ou o alias de um débito. Não envie uma lista nele.
5

Confirme que funciona

Esta conferência supõe que o parceiro tem o recurso accounts com a ação get no Midaz, e um escopo restrito a uma organização e a um ou mais ledgers dela. Use a credencial do parceiro. Liste as contas de um ledger dentro do escopo dele. A resposta é 200:
Envie a mesma requisição com um ledger da mesma organização que está fora do escopo. A resposta é 403 com o código AUT-1020.

Se algo falhar


A resposta não diz se foram as permissões ou o escopo que recusaram a requisição. Isso é proposital: um parceiro não consegue usar uma recusa para descobrir quais itens existem fora do escopo dele. Para todos os outros códigos, veja a lista de erros do Midaz. Para as recusas ao criar ou alterar um parceiro, veja os códigos de erro no guia da API.