{"id":2401,"date":"2016-10-01T17:53:27","date_gmt":"2016-10-01T17:53:26","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2401"},"modified":"2025-06-13T19:58:50","modified_gmt":"2025-06-14T02:58:50","slug":"access-denied-or-access-lost-some-tips-on-sync-gateway","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/access-denied-or-access-lost-some-tips-on-sync-gateway\/","title":{"rendered":"Acesso negado ou acesso perdido?  Algumas dicas sobre o Sync Gateway"},"content":{"rendered":"<p>O plano para esta postagem no blog come\u00e7ou com o desejo de esclarecer um detalhe espec\u00edfico sobre como o Couchbase Mobile's\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/get-started\/sync-gateway-overview\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">Gateway de sincroniza\u00e7\u00e3o<\/a>\u00a0trata da remo\u00e7\u00e3o do acesso de um cliente a um documento. Vou escrever um pouco sobre o Sync Gateway\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/develop\/guides\/sync-gateway\/channels\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">canais<\/a>\u00a0para fornecer uma base. Se voc\u00ea j\u00e1 estiver familiarizado com o Sync Gateway e os canais, poder\u00e1 pular a primeira parte.<\/p>\n<h2 id=\"understanding-sync-gateway-channels\">Entendendo os canais do Sync Gateway<\/h2>\n<p><a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/get-started\/sync-gateway-overview\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">Gateway de sincroniza\u00e7\u00e3o<\/a>A parte de \"cola\" do\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/mobile?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">Couchbase Mobile<\/a>\u00a0A pilha de documentos, que tem a capacidade de atribuir documentos a algo que chamamos de canais. Os canais funcionam como um mecanismo de organiza\u00e7\u00e3o e seguran\u00e7a.<\/p>\n<p>Este gr\u00e1fico pode ajud\u00e1-lo a entender como os canais funcionam. Ele mostra conceitualmente a ideia do Sync Gateway alimentando documentos para os canais durante uma replica\u00e7\u00e3o.<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" style=\"max-width: 700px !important\" src=\"\/wp-content\/original-assets\/2016\/september\/access-denied-or-access-lost-some-tips-on-sync-gateway\/channels_pipe.png\" alt=\"Symbolic: channels as pipes\" align=\"middle\" \/><\/p>\n<p>Voc\u00ea controla a atribui\u00e7\u00e3o de documentos a canais por meio do Sync Gateway\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/develop\/guides\/sync-gateway\/sync-function-api-guide\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o<\/a>. Cada tubo azul no diagrama representa um canal. As setas verdes ilustram a ideia de que a fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o pode atribuir qualquer documento individual a qualquer n\u00famero de canais.<\/p>\n<p>Isso permite que voc\u00ea agrupe documentos relacionados, facilitando a organiza\u00e7\u00e3o do fluxo de informa\u00e7\u00f5es. Por exemplo, voc\u00ea pode criar um canal para cada usu\u00e1rio de um aplicativo. Voc\u00ea pode alterar seu modelo de dados e documentos o quanto quiser. Basta marcar cada documento com o ID do usu\u00e1rio.<\/p>\n<p>Os canais s\u00e3o t\u00e3o \u00fateis que fizemos com que a fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o padr\u00e3o os criasse automaticamente. Ela atribui um documento a um conjunto de canais com base na presen\u00e7a de um\u00a0<code>canais<\/code>\u00a0no documento. Ou, em outras palavras, se voc\u00ea n\u00e3o fornecer uma fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o, o Sync Gateway usar\u00e1 o seguinte equivalente:<\/p>\n<pre class=\"lang:js decode:true\">function (doc) {\r\n   channel(doc.channels);\r\n}<\/pre>\n<p>(As fun\u00e7\u00f5es de sincroniza\u00e7\u00e3o s\u00e3o escritas em JavaScript.\u00a0<code>canal<\/code>\u00a0\u00e9 uma fun\u00e7\u00e3o definida pelo Sync Gateway).<\/p>\n<p>Para usar os canais, um cliente simplesmente solicita os canais desejados ao configurar uma replica\u00e7\u00e3o. Mas e quanto \u00e0 seguran\u00e7a? N\u00e3o seria bom que qualquer cliente pudesse acessar o canal que quisesse.<\/p>\n<p>O Sync Gateway s\u00f3 enviar\u00e1 documentos para clientes autorizados. Isso acontece em uma base por canal. Voc\u00ea pode autorizar um cliente com base em um ID de usu\u00e1rio autenticado ou em uma fun\u00e7\u00e3o \u00e0 qual o usu\u00e1rio est\u00e1 atribu\u00eddo.<\/p>\n<p>Esse diagrama d\u00e1 uma ideia visual de como a atribui\u00e7\u00e3o de canais (feita pelo Sync Gateway), as solicita\u00e7\u00f5es de acesso a canais (feitas por um cliente durante a execu\u00e7\u00e3o de uma replica\u00e7\u00e3o) e a autoriza\u00e7\u00e3o se combinam para determinar quais documentos um cliente pode extrair.<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" style=\"max-width: 250px !important\" src=\"\/wp-content\/original-assets\/2016\/september\/access-denied-or-access-lost-some-tips-on-sync-gateway\/channels_venn.png\" alt=\"Venn diagram showing accessible documents as intersection of Sync Gateway assigned documents, authorized access, and client requested channels\" align=\"middle\" \/><\/p>\n<p>O c\u00edrculo azul representa os canais aos quais a fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o atribui um documento. O c\u00edrculo amarelo representa os canais que um cliente solicita. Por fim, o c\u00edrculo vermelho representa os canais que um usu\u00e1rio ou fun\u00e7\u00e3o tem autoriza\u00e7\u00e3o para acessar. A se\u00e7\u00e3o verde representa os documentos que o cliente receber\u00e1.<\/p>\n<h2 id=\"one-no-wait-two-tricky-bits\">Um, n\u00e3o espere, dois bits complicados<\/h2>\n<p>A descri\u00e7\u00e3o acima pode parecer muito simples. H\u00e1 muito mais a entender sobre o Sync Gateway e como ele pode ser configurado. Para terminar, quero falar sobre dois casos que tendem a confundir as pessoas.<\/p>\n<h4 id=\"read-vs-write-access\">Acesso de leitura vs. acesso de grava\u00e7\u00e3o<\/h4>\n<p>Observe que a rela\u00e7\u00e3o entre um cliente e o Sync Gateway aqui n\u00e3o \u00e9 sim\u00e9trica. O Sync Gateway se encarrega de alimentar os documentos com base nos canais. Os clientes n\u00e3o. Isso tem o resultado aparentemente estranho de que um cliente pode enviar (gravar) um documento que n\u00e3o pode extrair (ler)! (Dizemos push e pull para indicar que est\u00e1 ocorrendo uma replica\u00e7\u00e3o e a dire\u00e7\u00e3o do fluxo de dados).<\/p>\n<p>Digamos que estamos usando a fun\u00e7\u00e3o de sincroniza\u00e7\u00e3o padr\u00e3o e autorizamos a extra\u00e7\u00e3o com base no ID do usu\u00e1rio. A usu\u00e1ria Alice cria um documento e coloca \"Bob\" no campo\u00a0<code>canais<\/code>\u00a0propriedade. Quando Alice envia o documento para o Sync Gateway, ela n\u00e3o pode mais retir\u00e1-lo. O Sync Gateway atribui a nova revis\u00e3o ao canal de Bob. Alice n\u00e3o pode extrair o documento, mas Bob pode.<\/p>\n<h4 id=\"lost-access\">Acesso perdido<\/h4>\n<p>Aqui est\u00e1 outro caso extremo. O que acontece se um cliente perder o acesso a um documento? Como acabamos de ver, o cliente pode at\u00e9 ter causado isso.<\/p>\n<p>O Couchbase Mobile usa o que \u00e9 conhecido como controle de simultaneidade de v\u00e1rias vers\u00f5es para lidar com todas as nuances do uso off-line e com os sofisticados produtos de sincroniza\u00e7\u00e3o. A perda de acesso n\u00e3o \u00e9 o mesmo que a exclus\u00e3o do documento. Al\u00e9m disso, o cliente pode j\u00e1 ter uma vers\u00e3o mais antiga.<\/p>\n<p>O Couchbase lida com isso criando uma revis\u00e3o especial do documento. \u00c9 uma revis\u00e3o de l\u00e1pide, o que significa que n\u00e3o tem conte\u00fado. No entanto, ao contr\u00e1rio de uma l\u00e1pide que marca um documento exclu\u00eddo, esse tipo marca o documento como tendo sido removido. (Isso aparece nos metadados do documento).<\/p>\n<p>Para a maioria das finalidades, o Couchbase Lite se comportar\u00e1 como se o documento n\u00e3o existisse. Ele n\u00e3o ser\u00e1 exibido em consultas, por exemplo. No entanto, ainda h\u00e1 maneiras de recuper\u00e1-lo. Voc\u00ea pode verificar se um documento foi removido chamando seu\u00a0<code>.isGone()<\/code>\u00a0method. (Observe que o tombstone s\u00f3 \u00e9 criado quando um cliente como o Couchbase Lite puxa o tombstone durante uma replica\u00e7\u00e3o).<\/p>\n<h2 id=\"wrapping-up\">Concluindo<\/h2>\n<p>O Sync Gateway \u00e9 um software vers\u00e1til por si s\u00f3. \u00c9 um componente essencial do Couchbase Mobile, fundamental para resolver alguns dos problemas dif\u00edceis que surgem com uma plataforma de dados que oferece suporte total ao uso off-line.<\/p>\n<p>Espero ter dado uma ideia de um aspecto do Sync Gateway (canais), juntamente com algumas dicas importantes. Para aproveitar ao m\u00e1ximo o Sync Gateway, reserve um tempo para explorar a se\u00e7\u00e3o\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/develop\/guides\/sync-gateway\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">documenta\u00e7\u00e3o<\/a>.<\/p>\n<h2 id=\"postscript\">P\u00f3s-escrito<\/h2>\n<p>Confira mais recursos em nosso\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/community?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">portal do desenvolvedor<\/a>\u00a0e nos siga no Twitter\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/twitter.com\/CouchbaseDev\">@CouchbaseDev<\/a>.<\/p>\n<p>Voc\u00ea pode postar perguntas em nosso\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/www.couchbase.com\/blog\/pt\/forums\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">f\u00f3runs<\/a>. E participamos ativamente de\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/stackoverflow.com\/questions\/tagged\/couchbase\">Estouro de pilha<\/a>.<\/p>\n<p>Voc\u00ea pode me seguir pessoalmente em\u00a0<a style=\"color: #265778;text-decoration: none\" href=\"https:\/\/twitter.com\/HodGreeley\">@HodGreeley<\/a><\/p>\n<div class=\"prev-next-post pure-g\" style=\"letter-spacing: -0.31em;font-family: FreeSans, Arimo,\">\n<div class=\"pure-u-10-24\" style=\"letter-spacing: normal;vertical-align: top;width: 333.328px;font-family: sans-serif;color: #000000;font-size: medium;text-align: start\"><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>The plan for this blog post started out with wanting to clarify a particular detail about how Couchbase Mobile\u2019s\u00a0Sync Gateway\u00a0component handles removing a client\u2019s access to a document. I\u2019m going to write a bit about Sync Gateway\u00a0channels\u00a0to provide a foundation. [&hellip;]<\/p>","protected":false},"author":73,"featured_media":2757,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1810,2366],"tags":[1741],"ppma_author":[9042],"class_list":["post-2401","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-mobile","category-sync-gateway","tag-channels"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.0 (Yoast SEO v26.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Access Denied, or Access Lost? Some Tips on Sync Gateway<\/title>\n<meta name=\"description\" content=\"Learn how Couchbase Mobile\u2019s Sync Gateway component handles removing a client\u2019s access to a document and the Sync Gateway channels to provide a foundation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/pt\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Access Denied, or Access Lost? Some Tips on Sync Gateway\" \/>\n<meta property=\"og:description\" content=\"Learn how Couchbase Mobile\u2019s Sync Gateway component handles removing a client\u2019s access to a document and the Sync Gateway channels to provide a foundation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-01T17:53:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T02:58:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png\" \/>\n\t<meta property=\"og:image:width\" content=\"958\" \/>\n\t<meta property=\"og:image:height\" content=\"868\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@HodGreeley\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\"},\"author\":{\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4\"},\"headline\":\"Access Denied, or Access Lost? Some Tips on Sync Gateway\",\"datePublished\":\"2016-10-01T17:53:26+00:00\",\"dateModified\":\"2025-06-14T02:58:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\"},\"wordCount\":899,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png\",\"keywords\":[\"Channels\"],\"articleSection\":[\"Couchbase Mobile\",\"Sync Gateway\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\",\"name\":\"Access Denied, or Access Lost? Some Tips on Sync Gateway\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png\",\"datePublished\":\"2016-10-01T17:53:26+00:00\",\"dateModified\":\"2025-06-14T02:58:50+00:00\",\"description\":\"Learn how Couchbase Mobile\u2019s Sync Gateway component handles removing a client\u2019s access to a document and the Sync Gateway channels to provide a foundation.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png\",\"width\":958,\"height\":868,\"caption\":\"Channel Access Venn Diagram\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Access Denied, or Access Lost? Some Tips on Sync Gateway\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4\",\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"caption\":\"Hod Greeley, Developer Advocate, Couchbase\"},\"description\":\"Hod Greeley is a Developer Advocate for Couchbase, living in Silicon Valley. He has over two decades of experience as a software engineer and engineering manager. He has worked in a variety of software fields, including computational physics and chemistry, computer and network security, finance, and mobile. Prior to joining Couchbase in 2016, Hod led developer relations for mobile at Samsung. Hod holds a Ph.D. in chemical physics from Columbia University.\",\"sameAs\":[\"https:\/\/hod.greeley.org\/blog\",\"https:\/\/x.com\/HodGreeley\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/hod-greeley\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Access Denied, or Access Lost? Some Tips on Sync Gateway","description":"Saiba como o componente Sync Gateway do Couchbase Mobile lida com a remo\u00e7\u00e3o do acesso de um cliente a um documento e com os canais do Sync Gateway para fornecer uma base.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/pt\/access-denied-or-access-lost-some-tips-on-sync-gateway\/","og_locale":"pt_BR","og_type":"article","og_title":"Access Denied, or Access Lost? Some Tips on Sync Gateway","og_description":"Learn how Couchbase Mobile\u2019s Sync Gateway component handles removing a client\u2019s access to a document and the Sync Gateway channels to provide a foundation.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/access-denied-or-access-lost-some-tips-on-sync-gateway\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-10-01T17:53:26+00:00","article_modified_time":"2025-06-14T02:58:50+00:00","og_image":[{"width":958,"height":868,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png","type":"image\/png"}],"author":"Hod Greeley, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@HodGreeley","twitter_misc":{"Written by":"Hod Greeley, Developer Advocate, Couchbase","Est. reading time":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/"},"author":{"name":"Hod Greeley, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4"},"headline":"Access Denied, or Access Lost? Some Tips on Sync Gateway","datePublished":"2016-10-01T17:53:26+00:00","dateModified":"2025-06-14T02:58:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/"},"wordCount":899,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png","keywords":["Channels"],"articleSection":["Couchbase Mobile","Sync Gateway"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/","url":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/","name":"Access Denied, or Access Lost? Some Tips on Sync Gateway","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png","datePublished":"2016-10-01T17:53:26+00:00","dateModified":"2025-06-14T02:58:50+00:00","description":"Saiba como o componente Sync Gateway do Couchbase Mobile lida com a remo\u00e7\u00e3o do acesso de um cliente a um documento e com os canais do Sync Gateway para fornecer uma base.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/10\/channels_venn.png","width":958,"height":868,"caption":"Channel Access Venn Diagram"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/access-denied-or-access-lost-some-tips-on-sync-gateway\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Access Denied, or Access Lost? Some Tips on Sync Gateway"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"Blog do Couchbase","description":"Couchbase, o banco de dados NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"Blog do Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4","name":"Hod Greeley, Advogado do desenvolvedor, Couchbase","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87","url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","caption":"Hod Greeley, Developer Advocate, Couchbase"},"description":"Hod Greeley \u00e9 um defensor dos desenvolvedores da Couchbase e mora no Vale do Sil\u00edcio. Ele tem mais de duas d\u00e9cadas de experi\u00eancia como engenheiro de software e gerente de engenharia. Trabalhou em diversas \u00e1reas de software, incluindo f\u00edsica e qu\u00edmica computacional, seguran\u00e7a de computadores e redes, finan\u00e7as e dispositivos m\u00f3veis. Antes de ingressar na Couchbase em 2016, Hod liderou as rela\u00e7\u00f5es com desenvolvedores para dispositivos m\u00f3veis na Samsung. Hod \u00e9 Ph.D. em f\u00edsica qu\u00edmica pela Universidade de Columbia.","sameAs":["https:\/\/hod.greeley.org\/blog","https:\/\/x.com\/HodGreeley"],"url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/hod-greeley\/"}]}},"authors":[{"term_id":9042,"user_id":73,"is_guest":0,"slug":"hod-greeley","display_name":"Hod Greeley, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","author_category":"","last_name":"Greeley","first_name":"Hod","job_title":"","user_url":"https:\/\/hod.greeley.org\/blog","description":"Hod Greeley \u00e9 um defensor dos desenvolvedores da Couchbase e mora no Vale do Sil\u00edcio. Ele tem mais de duas d\u00e9cadas de experi\u00eancia como engenheiro de software e gerente de engenharia. Trabalhou em diversas \u00e1reas de software, incluindo f\u00edsica e qu\u00edmica computacional, seguran\u00e7a de computadores e redes, finan\u00e7as e dispositivos m\u00f3veis. Antes de ingressar na Couchbase em 2016, Hod liderou as rela\u00e7\u00f5es com desenvolvedores para dispositivos m\u00f3veis na Samsung. Hod \u00e9 Ph.D. em f\u00edsica qu\u00edmica pela Universidade de Columbia."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/2401","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/users\/73"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=2401"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/2401\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/2757"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=2401"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=2401"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=2401"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=2401"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}