{"id":1,"date":"2023-06-01T19:49:45","date_gmt":"2023-06-01T19:49:45","guid":{"rendered":"https:\/\/cloud-source.us\/?p=1"},"modified":"2023-06-07T02:31:49","modified_gmt":"2023-06-07T02:31:49","slug":"hello-world","status":"publish","type":"post","link":"https:\/\/cloud-source.us\/index.php\/2023\/06\/01\/hello-world\/","title":{"rendered":"Securing Microservices with Spring Security: Best Practices and Techniques"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1206.4px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:0px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-1\"><\/p>\n<p>Microservices architecture has gained significant popularity due to its scalability and flexibility. However, ensuring robust security within a microservices ecosystem can be a challenging task. In this blog post, we will explore the use of Spring Security for securing microservices. We will discuss various techniques and best practices to safeguard your microservices and protect sensitive data from unauthorized access.<\/p><\/p>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-3 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-blend:overlay;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-image-element \" style=\"text-align:center;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-1 hover-type-zoomin\"><img decoding=\"async\" width=\"1024\" height=\"538\" title=\"springsecurity\" src=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity.jpg\" data-orig-src=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-1024x538.jpg\" alt class=\"lazyload img-responsive wp-image-1231\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%271600%27%20height%3D%27840%27%20viewBox%3D%270%200%201600%20840%27%3E%3Crect%20width%3D%271600%27%20height%3D%27840%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-200x105.jpg 200w, https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-400x210.jpg 400w, https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-600x315.jpg 600w, https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-800x420.jpg 800w, https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity-1200x630.jpg 1200w, https:\/\/cloud-source.us\/wp-content\/uploads\/2023\/06\/springsecurity.jpg 1600w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 1024px) 100vw, (max-width: 640px) 100vw, 1200px\" \/><\/span><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-4 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-5 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-1 fusion-sep-none fusion-title-text fusion-title-size-three\"><h3 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:26;--minFontSize:26;line-height:1.3;\">Understanding Microservices Security Challenges<\/h3><\/div><div class=\"fusion-text fusion-text-2\"><p>Distributed Nature: Microservices architecture consists of multiple independent services communicating with each other. This decentralized nature makes it crucial to secure each service individually and handle authentication and authorization across the system effectively.<\/p>\n<\/div><div class=\"fusion-text fusion-text-3\"><p>API Security: Microservices typically expose APIs for communication, making them potential entry points for attacks. It is essential to secure these APIs to prevent unauthorized access, data leakage, and ensure data integrity.<\/p>\n<\/div><div class=\"fusion-text fusion-text-4\"><p>Role-Based Access Control: Managing access control across numerous microservices and enforcing proper authorization based on roles and permissions can be complex. An effective security solution should provide a centralized approach to handle role-based access control (RBAC) efficiently.<\/p>\n<\/div><div class=\"fusion-separator fusion-full-width-sep\" style=\"align-self: center;margin-left: auto;margin-right: auto;width:100%;\"><\/div><div class=\"fusion-title title fusion-title-2 fusion-sep-none fusion-title-text fusion-title-size-three\"><h3 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:26;--minFontSize:26;line-height:1.3;\">Implementing Spring Security for Microservices<\/h3><\/div><div class=\"fusion-text fusion-text-5\"><p>Authentication: Spring Security offers various authentication mechanisms, such as Basic Authentication, OAuth 2.0, and JSON Web Tokens (JWT). Depending on your requirements, choose the appropriate authentication mechanism to ensure secure access to your microservices.<\/p>\n<\/div><div class=\"fusion-text fusion-text-6\"><p>Authorization and RBAC: Spring Security provides robust authorization capabilities, including role-based and attribute-based access control. You can define roles, permissions, and access rules using annotations or configuration files. Implement a well-defined RBAC strategy to control access across your microservices.<\/p>\n<\/div><div class=\"fusion-text fusion-text-7\"><p>Secure API Endpoints: Use Spring Security to secure your API endpoints by applying authentication and authorization filters. You can leverage method-level annotations or custom filters to protect sensitive endpoints and ensure that only authorized requests are processed.<\/p>\n<\/div><div class=\"fusion-text fusion-text-8\"><p>Centralized Security Configuration: Consider creating a centralized security configuration module that can be shared across your microservices. This approach simplifies security management, promotes consistency, and allows for easy updates and maintenance.<\/p>\n<\/div><div class=\"fusion-text fusion-text-9\"><p><b>.Additional Security Measures: <\/b><\/p>\n<\/div><div class=\"fusion-text fusion-text-10\"><ol>\n<li>Secure Communication: Use HTTPS\/TLS encryption to protect data transmitted between microservices. Implementing secure communication protocols ensures that sensitive information remains confidential and protected from eavesdropping and tampering.<\/li>\n<li>Input Validation and Sanitization: Apply proper input validation and sanitization techniques to prevent common security vulnerabilities like SQL injection, cross-site scripting (XSS), and cross-site request forgery (CSRF). Use Spring Security features, such as request validation filters, to validate and sanitize user input.<\/li>\n<li>Security Testing and Auditing: Regularly perform security testing, vulnerability scanning, and penetration testing on your microservices. Additionally, implement robust logging and auditing mechanisms to monitor and track security-related events, aiding in incident response and forensic analysis.<\/li>\n<li>Monitoring and Alerting: Implement a comprehensive monitoring and alerting system to detect any security breaches or suspicious activities within your microservices architecture. Leverage tools like Spring Boot Actuator and cloud-native monitoring solutions to gain visibility into the security posture of your microservices.<\/li>\n<\/ol>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-6 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-7 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-8 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-11\"><p><strong>Conclusion:<\/strong> Securing microservices is a critical aspect of building a resilient and trustworthy system. By leveraging the capabilities of Spring Security, you can implement robust authentication, authorization, and secure communication within your microservices ecosystem. Follow best practices such as role-based access control, secure API endpoints, centralized security configuration, and additional security measures like input validation and security testing. By adopting these techniques, you can enhance the overall security posture of your microservices and protect sensitive data from potential threats, enabling you to build secure and reliable systems for your organization.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-9 fusion_builder_column_1_6 1_6 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:16.666666666667%;--awb-margin-top-large:25px;--awb-spacing-right-large:11.52%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:11.52%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><\/div><\/div><\/div><\/div><div class=\"fusion-bg-parallax\" data-bg-align=\"center top\" data-direction=\"down\" data-mute=\"false\" data-opacity=\"100\" data-velocity=\"-0.3\" data-mobile-enabled=\"false\" data-break_parents=\"0\" data-bg-image=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2022\/01\/bg-crypto-brand-transparent.png\" data-bg-repeat=\"false\" data-bg-color=\"var(--awb-color8)\" data-blend-mode=\"screen\" ><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-down nonhundred-percent-fullwidth non-hundred-percent-height-scrolling lazyload\" style=\"--awb-background-position:center top;--awb-background-blend-mode:screen;--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:5%;--awb-padding-right:8%;--awb-padding-bottom:6%;--awb-padding-left:8%;--awb-margin-top:40px;--awb-margin-bottom:40px;--awb-background-color:var(--awb-color8);--awb-background-size:cover;--awb-flex-wrap:wrap;\" data-bg=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2022\/01\/bg-crypto-brand-transparent.png\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-stretch fusion-flex-content-wrap\" style=\"max-width:1206.4px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-10 fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:25px;--awb-spacing-right-large:3.84%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:3.84%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-3 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:var(--awb-color1);\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:46;line-height:1.25;\">Get Started with Digital Transformation<\/h2><\/div><div class=\"fusion-separator fusion-full-width-sep\" style=\"align-self: center;margin-left: auto;margin-right: auto;width:100%;\"><\/div><div class=\"fusion-form fusion-form-builder fusion-form-form-wrapper fusion-form-912\" style=\"--awb-tooltip-text-color:#ffffff;--awb-tooltip-background-color:#333333;--awb-field-margin-top:15px;--awb-field-margin-bottom:15px;\" data-form-id=\"912\" data-config=\"{&quot;form_id&quot;:&quot;912&quot;,&quot;form_post_id&quot;:&quot;912&quot;,&quot;post_id&quot;:1,&quot;form_type&quot;:&quot;ajax&quot;,&quot;confirmation_type&quot;:&quot;&quot;,&quot;redirect_url&quot;:&quot;&quot;,&quot;field_labels&quot;:{&quot;email&quot;:&quot;&quot;},&quot;field_logics&quot;:{&quot;email&quot;:&quot;&quot;,&quot;notice_1&quot;:&quot;&quot;},&quot;field_types&quot;:{&quot;email&quot;:&quot;email&quot;,&quot;submit_1&quot;:&quot;submit&quot;,&quot;notice_1&quot;:&quot;notice&quot;},&quot;nonce_method&quot;:&quot;ajax&quot;}\"><form action=\"https:\/\/cloud-source.us\/index.php\/2023\/06\/01\/hello-world\/\" method=\"method\" class=\"fusion-form fusion-form-912\"><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-right:5vw;--awb-padding-left:0px;--awb-padding-right-small:0px;--awb-margin-bottom:-10px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-content-wrap\" style=\"width:104% !important;max-width:104% !important;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-11 fusion_builder_column_2_3 2_3 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:66.666666666667%;--awb-margin-top-large:0px;--awb-spacing-right-large:2.88%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:2.88%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-form-field fusion-form-email-field fusion-form-label-above\" style=\"\" data-form-id=\"912\"><input type=\"email\" name=\"email\" id=\"email\" value=\"\"  class=\"fusion-form-input\" required=\"true\" aria-required=\"true\" placeholder=\"Insert your email*\" data-holds-private-data=\"false\"\/><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-12 fusion_builder_column_1_3 1_3 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:33.333333333333%;--awb-margin-top-large:0px;--awb-spacing-right-large:5.76%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:5.76%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-form-field fusion-form-submit-field fusion-form-label-above\" style=\"\" data-form-id=\"912\"><div ><button type=\"submit\" class=\"fusion-button button-flat button-large button-default fusion-button-default button-1 fusion-button-span-yes  form-form-submit button-default\" data-form-number=\"912\" tabindex=\"\"><span class=\"fusion-button-text\">Register<\/span><\/button><\/div><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-13 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:20px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"form-submission-notices data-notice_1\" id=\"fusion-notices-1\"><div class=\"fusion-alert alert success alert-success fusion-alert-center fusion-form-response fusion-form-response-success fusion-alert-capitalize awb-alert-native-link-color alert-dismissable awb-alert-close-boxed\" role=\"alert\"><div class=\"fusion-alert-content-wrapper\"><span class=\"alert-icon\"><i class=\"awb-icon-check-circle\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-alert-content\">Thank you for your message. It has been sent.<\/span><\/div><button type=\"button\" class=\"close toggle-alert\" data-dismiss=\"alert\" aria-label=\"Close\">&times;<\/button><\/div><div class=\"fusion-alert alert error alert-danger fusion-alert-center fusion-form-response fusion-form-response-error fusion-alert-capitalize awb-alert-native-link-color alert-dismissable awb-alert-close-boxed\" role=\"alert\"><div class=\"fusion-alert-content-wrapper\"><span class=\"alert-icon\"><i class=\"awb-icon-exclamation-triangle\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-alert-content\">There was an error trying to send your message. Please try again later.<\/span><\/div><button type=\"button\" class=\"close toggle-alert\" data-dismiss=\"alert\" aria-label=\"Close\">&times;<\/button><\/div><\/div><\/div><\/div><\/div><\/div><\/form><\/div><div class=\"fusion-text fusion-text-12\"><p>Looking for help? <a href=\"https:\/\/cloud-source.us\/contact\/\">Get in touch with us<\/a><\/p>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-14 fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:25px;--awb-spacing-right-large:3.84%;--awb-margin-bottom-large:25px;--awb-spacing-left-large:3.84%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-image-element \" style=\"text-align:center;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-2 hover-type-none\"><img decoding=\"async\" width=\"1289\" height=\"1028\" title=\"cta-start-feat\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%271289%27%20height%3D%271028%27%20viewBox%3D%270%200%201289%201028%27%3E%3Crect%20width%3D%271289%27%20height%3D%271028%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-orig-src=\"https:\/\/cloud-source.us\/wp-content\/uploads\/2019\/01\/cta-start-feat.png\" alt class=\"lazyload img-responsive wp-image-674\"\/><\/span><\/div><\/div><\/div><\/div><\/div><\/p>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":764,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/posts\/1","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/comments?post=1"}],"version-history":[{"count":5,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/posts\/1\/revisions"}],"predecessor-version":[{"id":1239,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/posts\/1\/revisions\/1239"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/media\/764"}],"wp:attachment":[{"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/media?parent=1"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/categories?post=1"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloud-source.us\/index.php\/wp-json\/wp\/v2\/tags?post=1"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}