{"id":73119,"date":"2018-01-31T08:44:09","date_gmt":"2018-01-31T16:44:09","guid":{"rendered":""},"modified":"2025-01-23T15:47:34","modified_gmt":"2025-01-23T23:47:34","slug":"applying-compliance-frameworks-chef-inspec-azure-government","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/","title":{"rendered":"Applying compliance frameworks with Chef InSpec on Azure Government"},"content":{"rendered":"\n<p>In government, compliance and security are critical components of our job function. The current state of compliance frameworks are bulky and unwieldy for those inexperienced with OpenSCAP\/XML. The <a href=\"https:\/\/azure.microsoft.com\/en-us\/overview\/clouds\/government\/\">Microsoft Azure Government<\/a> cloud and <a href=\"https:\/\/www.chef.io\/inspec\/\">Chef InSpec<\/a> are designed to provide a common language for security, compliance, and automation teams to converge around.<\/p>\n\n\n\n<p>Microsoft Azure Government is designed to solve your compliance needs all the way up to the systems you manage. That\u2019s where Chef Automate and InSpec take over for that \u201dlast mile.\u201d <a href=\"https:\/\/www.chef.io\/automate\/\">Chef Automate<\/a> and InSpec help you view compliance controls in a human-readable, easily digestible format.<\/p>\n\n\n\n<p>The below example is the DISA STIG RHEL6 Control, pertaining to which protocol version of SSH your system runs. This is just one of hundreds of controls published by DISA for managing RedHat systems. The value of InSpec over traditional testing and compliance frameworks is that InSpec includes all the context we need to understand not only the actual code check itself, but also all of the other information we need to understand why we\u2019re checking for this setting. Chef Automate includes profiles for DISA STIGs and CIS Benchmarks out of the box.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: ruby; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n title 'RHEL-06-000227: The SSH daemon must be configured to use only the SSHv2 protocol.'\ncontrol 'RHEL-06-000227' do\n impact 1.0\n title 'The SSH daemon must be configured to use only the SSHv2 protocol.'\n desc 'SSH protocol version 1 suffers from design flaws that result in security vulnerabilities and should not be used.'\n tag group: 'SRG-OS-000112'\n tag vulid: 'V-38607'\n tag ruleid: 'SV-50408r1_rule'\n tag severity: 'CAT I'\n tag stigid: 'RHEL-06-000227'\n tag cci: 'CCI-000774'\n tag fixtext: 'Only SSH protocol version 2 connections should be permitted. The default setting in \"\/etc\/ssh\/sshd_config\" is correct, and can be verified by ensuring that the following line appears: Protocol 2'\n tag checkcontent: 'To check which SSH protocol version is allowed, run the following command: # grep Protocol \/etc\/ssh\/sshd_config If configured properly, output should be Protocol 2 If it is not, this is a finding.'\n tag remediation: ''\n ref 'http:\/\/iasecontent.disa.mil\/stigs\/zip\/U_RedHat_6_V1R15_STIG.zip'\ndescribe sshd_config do\n its('Protocol') { should eq('2') }\n end\n end\n<\/pre><\/div>\n\n\n<p>By using these InSpec profiles in conjunction with Microsoft Azure Government, we can simplify and reduce the effort it takes to provide compliance in an environment. Recently, we presented a live webinar on this topic with Microsoft\u2019s Technical Solutions Specialist, <a href=\"https:\/\/open.microsoft.com\/author\/derricks\/\">Derrick Schwartz<\/a>, to show how our technologies work together to achieve this goal. You can watch a recording of the webinar below.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Applying Compliance Frameworks with InSpec on Azure Government\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/K5TS_7kbN-M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Learn More:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.chef.io\/federal\/\">Download our datasheet<\/a> on using Chef Automate in Federal Government.<\/li>\n\n\n\n<li>Get a taste of <a href=\"https:\/\/learn.chef.io\/tracks\/demos-and-quickstarts#\/\">Chef Automate and InSpec<\/a> with these hands-on tutorials in preconfigured, ready-to-go environments.<\/li>\n\n\n\n<li>Discover how to <a href=\"https:\/\/www.chef.io\/solutions\/compliance\/\">bridge the gap between DevOps and InfoSec<\/a> to decrease risk, increase quality and velocity with automated compliance assurance.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In government, compliance and security are critical components of our job function. The current state of compliance frameworks are bulky and unwieldy for those inexperienced with OpenSCAP\/XML. The Microsoft Azure Government cloud and Chef InSpec are designed to provide a common language for security, compliance, and automation teams to converge around.<\/p>\n","protected":false},"author":5562,"featured_media":73124,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[2271,166],"content-type":[340],"topic":[2241,2244],"programming-languages":[],"coauthors":[2285],"class_list":["post-73119","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-community-partners","tag-azure","content-type-tutorials-and-demos","topic-cloud","topic-devops","review-flag-1593580428-734","review-flag-1-1593580432-963","review-flag-2-1593580437-411","review-flag-micro-1680215167-604"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Applying compliance frameworks with Chef InSpec on Azure Government<\/title>\n<meta name=\"description\" content=\"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Applying compliance frameworks with Chef InSpec on Azure Government\" \/>\n<meta property=\"og:description\" content=\"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-01-31T16:44:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-23T23:47:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png\" \/>\n\t<meta property=\"og:image:width\" content=\"956\" \/>\n\t<meta property=\"og:image:height\" content=\"344\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Galen Emery\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Galen Emery\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/galen-emery\/\",\"@type\":\"Person\",\"@name\":\"Galen Emery\"}],\"headline\":\"Applying compliance frameworks with Chef InSpec on Azure Government\",\"datePublished\":\"2018-01-31T16:44:09+00:00\",\"dateModified\":\"2025-01-23T23:47:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\"},\"wordCount\":323,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png\",\"keywords\":[\"Community\/partners\",\"Microsoft Azure\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\",\"name\":\"Applying compliance frameworks with Chef InSpec on Azure Government\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png\",\"datePublished\":\"2018-01-31T16:44:09+00:00\",\"dateModified\":\"2025-01-23T23:47:34+00:00\",\"description\":\"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png\",\"width\":956,\"height\":344,\"caption\":\"a screenshot of a cell phone\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Applying compliance frameworks with Chef InSpec on Azure Government\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Applying compliance frameworks with Chef InSpec on Azure Government","description":"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.","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:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/","og_locale":"en_US","og_type":"article","og_title":"Applying compliance frameworks with Chef InSpec on Azure Government","og_description":"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2018-01-31T16:44:09+00:00","article_modified_time":"2025-01-23T23:47:34+00:00","og_image":[{"width":956,"height":344,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png","type":"image\/png"}],"author":"Galen Emery","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Galen Emery","Est. reading time":"2 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/galen-emery\/","@type":"Person","@name":"Galen Emery"}],"headline":"Applying compliance frameworks with Chef InSpec on Azure Government","datePublished":"2018-01-31T16:44:09+00:00","dateModified":"2025-01-23T23:47:34+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/"},"wordCount":323,"commentCount":0,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png","keywords":["Community\/partners","Microsoft Azure"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/","url":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/","name":"Applying compliance frameworks with Chef InSpec on Azure Government","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png","datePublished":"2018-01-31T16:44:09+00:00","dateModified":"2025-01-23T23:47:34+00:00","description":"Learn DevOps best practices to simplify and reduce the effort it takes to provide compliance.","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2018\/01\/automate_compliance_overview_profile-chef-e1517504716296.png","width":956,"height":344,"caption":"a screenshot of a cell phone"},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2018\/01\/31\/applying-compliance-frameworks-chef-inspec-azure-government\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Applying compliance frameworks with Chef InSpec on Azure Government"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/73119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/5562"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=73119"}],"version-history":[{"count":2,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/73119\/revisions"}],"predecessor-version":[{"id":96973,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/73119\/revisions\/96973"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/73124"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=73119"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=73119"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=73119"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=73119"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=73119"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=73119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}