{"id":1010,"date":"2013-11-05T12:00:04","date_gmt":"2013-11-05T11:00:04","guid":{"rendered":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?p=1010"},"modified":"2013-11-05T12:32:56","modified_gmt":"2013-11-05T11:32:56","slug":"aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/","title":{"rendered":"Aplicar seguridad en nuestros desarrollo en SharePoint"},"content":{"rendered":"<p>En el \u00faltimo mes he estado inmenso en un proyecto de un sitio de publicaci\u00f3n en el que uno de los factores m\u00e1s importantes era el tema de la seguridad. Cuando hablo de aspectos de seguridad me refiero a evitar que en la Web cualquier entrada de datos entre nuestros desarrollos y el mundo exterior, evite que nos inyecten c\u00f3digo malicioso, m\u00e1s all\u00e1 de que nos pongan una imagen en la home de nuestra web. Cosa que ni al cliente le gusta ver que la inversi\u00f3n que acaba de realizar se la acaban de hackear, ni al desarrollador que lo implementa ver que todo el esfuerzo realizado no ha valido la pena.<br \/>\nSharePoint es un herramienta principalmente para el desarrollo de Intranets Corporativas, de hay que muchas veces cuando desarrollemos pasamos por alto diversas aspectos que son practicas muy sencillas, nada laboriosas y que tenemos que tener muy en cuenta.<!--more--><\/p>\n<p>Para evitar que nos hackeen nuestros desarrollos m\u00e1s que seguir alguna t\u00e9cnica de programaci\u00f3n, es pensar una vez como si fueramos a ser hackers no a creernos en la bondad de todos los visitantes de la p\u00e1gina.<\/p>\n<p><strong>\u00bfComo se hace esto?<\/strong><br \/>\n Pues en primer lugar protegiendo todos los par\u00e1metros de entrada de la aplicaci\u00f3n. Por ejemplo tenemos un formulario para buscar elementos en una lista y queremos pas\u00e1rselos a un WebPart que hemos implementado el resultado de esta en otra p\u00e1gina.<\/p>\n<p>Una t\u00e9cnica (no digo que la mejor) es pasarle los datos a esta p\u00e1gina mediante querystring. Una vez estamos en el load de esta p\u00e1gina ya tenemos la opci\u00f3n de leer estos param\u00e9tros y entonces hacer la b\u00fasqueda de la consulta. Hasta este punto todo esta claro no? Pero que ocurre si con estos param\u00e9tros de entrada nosotros construimos un HTML que se va a mostrar en la cabecera de la p\u00e1gina. Pues tenemos dos opciones:<\/p>\n<ol>\n<li>Confiemos que a esta p\u00e1gina siempre acceder\u00e1n haciendo uso de nuestro mecanismo y para ello obtenemos la QueryString de la siguiente forma:<\/li>\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\nPage.Request&#x5B;'variable']\r\n<\/pre>\n<li>Que pensemos que quizas hay gente que tiene mucho tiempo libre y que quizas intentar\u00e1n buscar resquicios en nuestros desarrollos para hacernos inyecci\u00f3n de JavaScript y para ello siempre m\u00e1s vale prevenir que tener que sufrir y lo realizamos de la siguiente forma:\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\nHttpUtility.HtmlAttributeEncode(Page.Request&#x5B;'variable'])\r\n<\/pre>\n<\/li>\n<\/ol>\n<p>Veis las dos opciones igual de seguras? Si la respuesta es que s\u00ed, que sois demasiados confiados y pensais en la buena voluntad de todos los visitantes de la p\u00e1gina. \u00a0Que puede ocurrir pues que en el par\u00e1metro de la QueryString en lugar de poner un string os inyecten una sentencia JavaScript y puedan reemplazar cualquier elemeno de la p\u00e1gina. Dejo la curiosidad del lector el verificar algunas webs que no cumplen con estos requisitos.<\/p>\n<p>Otro de los aspectos donde quiz\u00e1s tambi\u00e9n pecamos de ingenuos en nuestros desarrollos, es a la hora de coger cualquier informaci\u00f3n del contexto en el que nos encontramos. Un ejemplo practico por ejemplo es un WebPart en el que queremos compartir la informaci\u00f3n de esta p\u00e1gina en nuestras redes sociales preferidas, para ello esta claro que necesitamos la url en la que nos encontramos. Al igual que en el anterior caso tenemos dos opciones:<\/p>\n<ol>\n<li><span style=\"line-height: 16px\">Leer la url del Contexto<\/span><\/li>\n<li>Leer el item en el que estamos del SPContext.<\/li>\n<\/ol>\n<p><strong>\u00bfQue opci\u00f3n elegiria\u00eds?<\/strong><\/p>\n<p>Si escogemos la primera opci\u00f3n la url del contexto no tiene necesariamente el porque ser la url de la p\u00e1gina en la que nos encontramos sino que a esta url le podemos a\u00f1adir diverso c\u00f3digo malicioso y si nuestro webpart genera el html en base a este valor pues ya tenemos el c\u00f3digo malicioso dentro de nuestro desarrollo. Por el contrario si leemos el item del contexto en el que nos encontramos esto lo tenemos resuelto ya que en la base de datos tenemos la url tal y como nosotros la esperamos y de esta forma evitamos posibles inyecciones de c\u00f3digo malicioso. Muchos estar\u00e9is pensando que seria necesario hacer una consulta CAML para saber esta informaci\u00f3n, con el siguiente c\u00f3digo no hace falta esto y tampoco penalizamos el rendimiento de nuestra aplicaci\u00f3n:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nstring urlshare =SPContext.Current.Site.Url+ SPContext.Current.ListItemServerRelativeUrl;\r\n<\/pre>\n<p>Otros aspectos que debemos de tener en cuanta para asegurarnos nuestra Web, es tener encuenta los WebParts que hay por defecto dentro de SharePoint y su configuraci\u00f3n. El claro ejemplo es el WebPart de b\u00fasqueda, si nosotros lo a\u00f1adimos a nuestra Web tal cual viene de serie, por defecto el buscador busca en todas las listas, elementos ocultos y diversos aspectos que un visitante an\u00f3nimo no debe ni de saber que existe. En anteriores versiones esta tarea era cuesti\u00f3n de ir haciendo restricciones en las b\u00fasquedas, en la versi\u00f3n 2013 en lugar de ir eliminando en la Administraci\u00f3n Central, el WebPart lo han mejorado para que desde el mismo podamos indicar todo lo que deseamos mostrar y lo que no. Pero como dice el t\u00edo de uno de mis superheroes preferidos todo poder llevar una gran responsabilidad. Y en este caso nuestro poder es configurar correctamente este buscador para evitar mostrar informaci\u00f3n que no deseemos para esta tarea recomiendo encarecidamente leeros este <a href=\"http:\/\/stevemannspath.blogspot.com.es\/2013\/04\/sharepoint-2013-search-removing-junk.html\">post\u00a0<\/a><\/p>\n<p><strong>Y para la gente de sistemas que puede hacer?<\/strong><\/p>\n<p>Esta claro que SharePoint en los sitios abiertos tiene un mont\u00f3n de puertas abiertas y que se deben de cerrar una vez el sitio esta puesto en producci\u00f3n. SharePoint tiene multitud de url que la gente que trabaja (y los que no) saben como intentar acceder a la configuraci\u00f3n de los mismos. Para ello es muy importante adem\u00e1s de todas las reglas que se puedan poner en el IIS para evitar que la gente no deseable entre dentro de SharePoint. Todo sitio de producci\u00f3n debe de tener activada la caracter\u00edstica de\u00a0<strong>ViewPagesLockDown\u00a0<\/strong>esto lo que hace es que todas las url internas de sharepoint no puedan acceder desde fuera. Si quere\u00eds saber un poco m\u00e1s sobre este tema es de obligatoria lectura este <a href=\"http:\/\/geeks.ms\/blogs\/lruiz\/archive\/2012\/02\/27\/sharepoint-cierra-el-ojete-a-tu-sharepoint-activa-viewpageslockdown.aspx\" target=\"_blank\">post<\/a> del maestro <a href=\"https:\/\/twitter.com\/luisruizpavon\" target=\"_blank\">Luis Ruiz (MVP ASP.NET)<\/a><\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Hemos visto con tan solo unas peque\u00f1as pautas como dotar a nuestros desarrollos de unas nociones m\u00ednimas de seguridad. Esta claro que no somos especialistas en evitar todos los agujeros de seguridad. La intenci\u00f3n de este post es sobre todo que cuando empecemos a desarrollar pensemos en que la seguridad es un elemento muy importante porque de que sirve hacer el desarrollo m\u00e1s bonito del mundo si quiz\u00e1s solo este online 5 minutos. Por lo que es conveniente no descuidar estos aspectos y prestarle un m\u00ednimo de atenci\u00f3n para prevenir en nuestros desarrollos cualquier ataque.<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>En el \u00faltimo mes he estado inmenso en un proyecto de un sitio de publicaci\u00f3n en el que uno de los factores m\u00e1s importantes era el tema de la seguridad. Cuando hablo de aspectos de seguridad me refiero a evitar &hellip; <a href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[75,26],"class_list":["post-1010","post","type-post","status-publish","format-standard","hentry","category-buenas-practicas","tag-seguridad","tag-sharepoint"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint<\/title>\n<meta name=\"description\" content=\"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint\" \/>\n<meta name=\"twitter:description\" content=\"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adri\u00e1n D\u00edaz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/\"},\"author\":{\"name\":\"Adri\u00e1n D\u00edaz\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"headline\":\"Aplicar seguridad en nuestros desarrollo en SharePoint\",\"datePublished\":\"2013-11-05T11:00:04+00:00\",\"dateModified\":\"2013-11-05T11:32:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/\"},\"wordCount\":1175,\"commentCount\":0,\"keywords\":[\"seguridad\",\"sharepoint\"],\"articleSection\":[\"buenas practicas\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/\",\"name\":\"Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\"},\"datePublished\":\"2013-11-05T11:00:04+00:00\",\"dateModified\":\"2013-11-05T11:32:56+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"description\":\"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\\\/\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/\",\"name\":\"Desarrollando sobre SharePoint\",\"description\":\"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\",\"name\":\"Adri\u00e1n D\u00edaz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"caption\":\"Adri\u00e1n D\u00edaz\"},\"description\":\"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/author\\\/desarrollandosobresharepoint\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint","description":"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.","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:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/","twitter_card":"summary_large_image","twitter_title":"Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint","twitter_description":"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.","twitter_misc":{"Escrito por":"Adri\u00e1n D\u00edaz","Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/"},"author":{"name":"Adri\u00e1n D\u00edaz","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"headline":"Aplicar seguridad en nuestros desarrollo en SharePoint","datePublished":"2013-11-05T11:00:04+00:00","dateModified":"2013-11-05T11:32:56+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/"},"wordCount":1175,"commentCount":0,"keywords":["seguridad","sharepoint"],"articleSection":["buenas practicas"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/","name":"Aplicar seguridad en nuestros desarrollo en SharePoint - Desarrollando sobre SharePoint","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website"},"datePublished":"2013-11-05T11:00:04+00:00","dateModified":"2013-11-05T11:32:56+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"description":"En este post queremos mostrar que la seguridad en nuestros desarrollos no es algo menor y que debemos de mostrarle la importancia que merece.","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/aplicar-seguridad-en-nuestros-desarrollo-en-sharepoint\/"]}]},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/","name":"Desarrollando sobre SharePoint","description":"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb","name":"Adri\u00e1n D\u00edaz","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","caption":"Adri\u00e1n D\u00edaz"},"description":"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/author\/desarrollandosobresharepoint\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/1010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/comments?post=1010"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/1010\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/media?parent=1010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/categories?post=1010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/tags?post=1010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}