{"id":20746,"date":"2015-06-07T23:40:54","date_gmt":"2015-06-07T18:10:54","guid":{"rendered":"https:\/\/2thenew.today\/blog\/?p=20746"},"modified":"2015-10-01T15:22:24","modified_gmt":"2015-10-01T09:52:24","slug":"autosigning-of-puppet-master-and-agents","status":"publish","type":"post","link":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/","title":{"rendered":"Autosigning of Puppetmaster and agents"},"content":{"rendered":"<p>This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement.<\/p>\n<p>Autosign is a feature of Puppet, configuration management tool, to enable administrators to auto sign SSL requests of puppet agents\u00a0 without bothering for manually signing each and every request. The feature has various pros and cons. Pros are that it saves manual work of administrator to sign each and every request but cons are that it may result into serious security issues if it\u00a0 signs every incoming request irrespective of whether admin wants them to be signed or not. There are various techniques to control the autosigning behaviour of Puppet to improve its usability and have less security vulnerability. Puppet is still working on autosigning to make it even more useful. As of today, there exist three types of auto signing.<\/p>\n<p><strong>Naive Autosigning:<\/strong><br \/>\nNaive autosigning can be enabled by simply writing a parameter in \/etc\/puppet\/puppet.conf as &#8220;auto sign = true&#8221; or by making an entry * in \/etc\/puppet\/autosign.conf. This will sign all the request that are coming from any agent without looking at their hostname. The flaw with this approach is that, if a fraudulent machine somehow manages to reach puppetmaster, it can easily fetch the catalogue as puppetmaster will auto sign without probing for its identity.<\/p>\n<p><strong>Basic Autosigning<\/strong>:<br \/>\nThis is one good way to control autosigning using regular expressions. In this method, hostnames of puppetagents are generated in a pattern and that pattern can be included in \/etc\/puppet\/auto sign.conf using regex i.e. regular expression. It often seems difficult to understand way of writing regular expression for Puppet. Puppet follow ruby format of regular expression. This <a href=\"http:\/\/ruby-doc.org\/core-2.2.2\/Regexp.html\">link<\/a> can be referred for more insights of Puppet regex. A few examples are listed below,<\/p>\n<p>1) Regex to allow FQDN with any domain name and any hostname is simply *<\/p>\n<p>2) Regex to identify a group of machines with hostname www12 or www34 etc can be \/^www(\\d+)\\.\/<\/p>\n<p>3) Regex to identify a group of machines with hostnames like ip-10-0-0-24 or ip-10-0-3-39 etc. as we have in our ec2 servers can be \/^ip-10-0-(\\d+)-(\\d+)\\.\/<\/p>\n<p><strong>Policy based Autosigning:<\/strong><br \/>\nIn this approach, some attributes are passed in puppet agents CSR (Certificate signing request). These Custom attributes can be used by the CA server (puppetmaster) to decide whether to sign the certificate or discard it. To achieve this functionality, create a csr_attributes file at \/etc\/puppet\/ location on the agents. This file should be in YAML format and contain key-value pairs. Two keys that can be used in this file can be &#8220;custom_attributes&#8221; key and\/or an &#8220;extension_requests&#8221; key. Each key is an OID (object identifier). Content of csr_attributes file are as shown below,<br \/>\n<a href=\"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/Selection_048.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-20747\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/Selection_048.png\" alt=\"Selection_048\" width=\"724\" height=\"147\" \/><\/a><\/p>\n<p>Now, to sign it automatically at the master&#8217;s end, we need to put a script at master in \/etc\/puppet\/autosign.conf file that checks and allows these custom attributes so that puppetmaster can sign it accordingly. The script will only allow parameters those are mentioned in &#8216;valid_values&#8217; attribute.<br \/>\n<a href=\"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/Selection_049.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-20748\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/Selection_049.png\" alt=\"Selection_049\" width=\"726\" height=\"494\" \/><\/a><\/p>\n<p>If implemented successfully, the master will check the UUID value passed in csr_attributes file in the agent and if that matches, it will auto sign the request of that agent. Above shown custom attribute is a test example, to implement it in the real environment, we need to declare UUID as a variable instead of a fixed value as we did in this case.<\/p>\n<p>Best Regards<br \/>\nSharad Aggarwal<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of [&hellip;]<\/p>\n","protected":false},"author":176,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":13,"footnotes":""},"categories":[1174,1],"tags":[1848,248,1779],"class_list":["post-20746","post","type-post","status-publish","format-standard","hentry","category-aws-2","category-technology","tag-autosign","tag-aws","tag-puppet"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Sharad Aggarwal\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"TO THE NEW BLOG\" \/>\n\t\t<meta property=\"og:type\" content=\"blog\" \/>\n\t\t<meta property=\"og:title\" content=\"Autosigning of Puppetmaster and agents | TO THE NEW Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@tothenew\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Autosigning of Puppetmaster and agents | TO THE NEW Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#article\",\"name\":\"Autosigning of Puppetmaster and agents | TO THE NEW Blog\",\"headline\":\"Autosigning of Puppetmaster and agents\",\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/sharadaintelligrape-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"\\\/blog\\\/wp-ttn-blog\\\/uploads\\\/2015\\\/06\\\/Selection_048.png\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#articleImage\"},\"datePublished\":\"2015-06-07T23:40:54+05:30\",\"dateModified\":\"2015-10-01T15:22:24+05:30\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#webpage\"},\"articleSection\":\"AWS, Technology, autosign, aws, Puppet\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#listItem\",\"name\":\"Autosigning of Puppetmaster and agents\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#listItem\",\"position\":3,\"name\":\"Autosigning of Puppetmaster and agents\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\",\"name\":\"TO THE NEW Blog\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/sharadaintelligrape-com\\\/#author\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/sharadaintelligrape-com\\\/\",\"name\":\"Sharad Aggarwal\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/26dfa662d5c2e5fb85587a4a8d9404253ddfa759bd479bb04336d9e1f7d25427?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Sharad Aggarwal\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#webpage\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/\",\"name\":\"Autosigning of Puppetmaster and agents | TO THE NEW Blog\",\"description\":\"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/autosigning-of-puppet-master-and-agents\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/sharadaintelligrape-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/author\\\/sharadaintelligrape-com\\\/#author\"},\"datePublished\":\"2015-06-07T23:40:54+05:30\",\"dateModified\":\"2015-10-01T15:22:24+05:30\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/\",\"name\":\"TO THE NEW Blog\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tothenew.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Autosigning of Puppetmaster and agents | TO THE NEW Blog","description":"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of","canonical_url":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#article","name":"Autosigning of Puppetmaster and agents | TO THE NEW Blog","headline":"Autosigning of Puppetmaster and agents","author":{"@id":"https:\/\/2thenew.today\/blog\/author\/sharadaintelligrape-com\/#author"},"publisher":{"@id":"https:\/\/2thenew.today\/blog\/#organization"},"image":{"@type":"ImageObject","url":"\/blog\/wp-ttn-blog\/uploads\/2015\/06\/Selection_048.png","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#articleImage"},"datePublished":"2015-06-07T23:40:54+05:30","dateModified":"2015-10-01T15:22:24+05:30","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#webpage"},"isPartOf":{"@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#webpage"},"articleSection":"AWS, Technology, autosign, aws, Puppet"},{"@type":"BreadcrumbList","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog#listItem","position":1,"name":"Home","item":"https:\/\/2thenew.today\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/2thenew.today\/blog\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#listItem","name":"Autosigning of Puppetmaster and agents"},"previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#listItem","position":3,"name":"Autosigning of Puppetmaster and agents","previousItem":{"@type":"ListItem","@id":"https:\/\/2thenew.today\/blog\/category\/technology\/#listItem","name":"Technology"}}]},{"@type":"Organization","@id":"https:\/\/2thenew.today\/blog\/#organization","name":"TO THE NEW Blog","url":"https:\/\/2thenew.today\/blog\/"},{"@type":"Person","@id":"https:\/\/2thenew.today\/blog\/author\/sharadaintelligrape-com\/#author","url":"https:\/\/2thenew.today\/blog\/author\/sharadaintelligrape-com\/","name":"Sharad Aggarwal","image":{"@type":"ImageObject","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/26dfa662d5c2e5fb85587a4a8d9404253ddfa759bd479bb04336d9e1f7d25427?s=96&d=mm&r=g","width":96,"height":96,"caption":"Sharad Aggarwal"}},{"@type":"WebPage","@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#webpage","url":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/","name":"Autosigning of Puppetmaster and agents | TO THE NEW Blog","description":"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/2thenew.today\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/#breadcrumblist"},"author":{"@id":"https:\/\/2thenew.today\/blog\/author\/sharadaintelligrape-com\/#author"},"creator":{"@id":"https:\/\/2thenew.today\/blog\/author\/sharadaintelligrape-com\/#author"},"datePublished":"2015-06-07T23:40:54+05:30","dateModified":"2015-10-01T15:22:24+05:30"},{"@type":"WebSite","@id":"https:\/\/2thenew.today\/blog\/#website","url":"https:\/\/2thenew.today\/blog\/","name":"TO THE NEW Blog","inLanguage":"en-US","publisher":{"@id":"https:\/\/2thenew.today\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"TO THE NEW BLOG","og:type":"blog","og:title":"Autosigning of Puppetmaster and agents | TO THE NEW Blog","og:description":"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of","og:url":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/","og:image":"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","og:image:secure_url":"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png","twitter:card":"summary","twitter:site":"@tothenew","twitter:title":"Autosigning of Puppetmaster and agents | TO THE NEW Blog","twitter:description":"This blog deeply discusses the autosigning feature of Puppet. During my journey to implement auto sign in our production environment, I came across various challenges related to security and making it as tight as possible and I was finally reached the last resort to achieve autosigning as per my requirement. Autosign is a feature of","twitter:image":"https:\/\/2thenew.today\/blog\/wp-content\/themes\/ttn\/images\/social-logo.png"},"aioseo_meta_data":{"post_id":"20746","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":"","og_description":"","og_object_type":"blog","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":"","og_article_tags":"","twitter_use_og":false,"twitter_card":"summary","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2021-04-30 07:20:03","updated":"2024-02-29 09:55:12","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.today\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/2thenew.today\/blog\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tAutosigning of Puppetmaster and agents\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/2thenew.today\/blog"},{"label":"Technology","link":"https:\/\/2thenew.today\/blog\/category\/technology\/"},{"label":"Autosigning of Puppetmaster and agents","link":"https:\/\/2thenew.today\/blog\/autosigning-of-puppet-master-and-agents\/"}],"_links":{"self":[{"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/posts\/20746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/users\/176"}],"replies":[{"embeddable":true,"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/comments?post=20746"}],"version-history":[{"count":0,"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/posts\/20746\/revisions"}],"wp:attachment":[{"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/media?parent=20746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/categories?post=20746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2thenew.today\/blog\/wp-json\/wp\/v2\/tags?post=20746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}