What is Open Policy Agent and how do you use it in cloud-native environments?

Open Policy Agent (OPA) helps you to increase application security and to reduce the risk of unauthorized access to sensitive data even in case of a breach of the application. 

It achieves this by simplifying access authentication and authorization within the application architecture, which in turn secures internal communication and access.

Many multinational corporations are using Open Policy Agent in their IT operations to establish, validate and enforce access control and security policies across the architecture of the application, thus allowing them to customize and strengthen security strategies for the application.

Why should Open Policy Agent matter to your business?

Take, for instance, edge security, which is used to protect corporate resources, users, and apps at the “edge” of your company’s network, where sensitive data is highly vulnerable to security threats. The edge security model trusts all internal communication and checks a user identity only at an ingress API-Gateway.

With Open Policy Agent it is possible to plug this gap by building a distributed authorization as close to a data source as possible without having to build the authorization logic directly into services. That increases security at every level of your application.

Here’s how major enterprises are using OPA

  • Goldman Sachs uses Open Policy Agent to enforce admission control policies in their Kubernetes clusters as well as for provisioning Role-based access control and Quota resources central to their security.

  • Google Cloud uses Open Policy Agent to validate configurations in several products and tools including Anthos Config Management and GKE Policy Automation.

  • Netflix uses Open Policy Agent to enforce access control in microservices across languages and frameworks in their cloud infrastructure and to bring in contextual data from remote resources to evaluate policies.

But what is OPA, exactly?

Open Policy Agent (OPA) is a tool that helps you write and test policy-as-code for Kubernetes to improve operational efficiency and promote scalability and repeatability. OPA decouples policies from application configurations and provides policy-as-a-service. Since this engine unifies policy enforcement across the stack, it allows security, risk, and compliance teams to adopt a DevOps methodology to express desired policy outcomes as code as well as offload policy decision-making from software. Created by Styra, and now part of the Cloud Native Computing Foundation (CNCF) alongside other CNCF technologies like Kubernetes and Prometheus, OPA is an open source, general-purpose policy engine. 

When and How can OPA be used to improve your IT Ops?

Infrastructure Authorization

You can use make all elements of your application infrastructure more secure using OPA.

OPA enforces and monitors security policies across all relevant components. For instance, you can centralize compliance across Kubernetes and application programming interface (API) gateways. 

With Open Policy Agent, you can add authorization policies directly into the service mesh, thereby limiting lateral movement across a microservice architecture. That way, since authorization is required at entry to every microservice, improper access to one microservice does not necessarily compromise others.

(You can learn more about Service Mesh and how it can help you with cluster security here and here.)

Admission Controller

You can control admission to your resources by working with an OPA-powered Gatekeeper.

Azure Gatekeeper and other Kubernetes policy controllers work with OPA to allow you to define policy to enforce which fields and values are permitted in Kubernetes resources. They can mutate resources. 

A common example of a mutation policy would be changing privileged Pods to be unprivileged, or setting imagePullPolicy to Always for all Pods. When you’re able to mutate resources server-side, it’s a really easy way to enforce best practices, apply standard labeling, or simply apply a baseline security policy to all resources.

Azure Gatekeeper for example is a Kubernetes policy controller that allows you to define policy to enforce which fields and values are permitted in Kubernetes resources. It operates as a Kubernetes admission controller and utilizes Open Policy Agent as its policy engine to ensure resources are compliant with policy before they can be successfully created.

Application Authorization

With the level of automation OPA provides, your team can make changes with the confidence that access authorization will remain accurate. 

Since Open Policy Agent uses a declarative policy language that lets you write and enforce rules, it comes with tools that can help integrate policies into applications as well as grant end users permissions to contribute policies for tenants. This enforces policies across organizations for end-user authorization with the OPA deciding level of user access in the application.

Open Policy Agent is also used to resolve problems around service-level authorization to control who can do what at different parts of the stack. 

What are the advantages of using OPA?

The OPA policy improves operational efficiency, allows for virtually unlimited scalability, eases interpretation, offers version control, and ensures repeatability. It essentially provides a uniform, systematic means of managing policies as well as auditing and validating them to avoid the risk of introducing critical errors into production environments. That’s because in Kubernetes, policies are best defined in code and OPA allows you to write and validate policy-as-code. 

By leveraging code-based automation instead of relying on manual processes to manage policies, your team can move more quickly and reduce the potential for mistakes due to human error. At the same time, your application architecture remains absolutely secure. Want to know more about how OPA can make your business more efficient? Contact us at Akku.

Here’s why your apps built with no-code platforms need an external IAM

Have you heard of no-code application builders? They are ideal for minor applications without heavy technological requirements. These no-code apps can be taken to market much faster, are cheaper to develop and can deliver a great experience in many cases.

However, while they are easy to build and use, securing apps made with a no-code app builder requires an external IAM.

Access management for internal applications

Consider a desktop-based application such as MS Access, which is used for combining, processing and editing large groups of data from different sources. It’s largely being replaced by web-based equivalents. This kind of small internal application has a clear function, and is therefore easy to build using a no-code development tool.

Internal applications such as data management tools, onboarding tools and other HR applications are often considered lower priority as they are purely internal in use. Therefore, low-budget no-code app builder tools are used in these cases.

However, these applications process a great deal of valuable internal data, and it’s important to take their security seriously and guard access to them. That’s why it’s important to implement a strong IAM tool for all your internal-facing applications.

The risk of web-based applications

With web-based apps, whether or not it’s developed with a no-code tool, you have the freedom to deploy the application on cloud servers on flexible pricing models, and access them from anywhere. Since such apps are hosted on the cloud, it can be risky to access them directly without a VPN.

Tiny no-code app builders don’t invest the necessary time and effort into security and privacy, which is why it’s difficult to set up good protection for such apps. Additionally, the user working on a no-code app builder typically doesn’t have the necessary time and knowledge to do so.

Syncing your IAM

While some well-known no-code app builders offer plugins to integrate with external IAM through SAML and OAuth2, others do not. In cases where such plugins exist, you can use any external IAM system.

When the plugins do not exist, however, and especially in cases where you would rather reduce the coding footprint of your project, consider an IAM product like Akku. Since Akku is a customizable solution, you can use it as a gateway for any major or minor internal or external application, even when the app being used does not support SAML, OAuth2 or OIDC. 

Your minor internal applications often contain or process the most valuable data at your organization. Protect them with an external IAM that’s easy to set up, integrates with any setup, and restricts access to these key internal corporate resources. Protect them with Akku, the customizable IAM.

Maintaining in-house control of your digital access gateways

Unless you have the right kind of access control, you don’t have ownership of your assets. For digital assets, you also need a proper access gateway, which should not be under third-party control for storage and management. That’s because losing access keys means losing control of assets. With digital gateways, one can access the assets without needing to know where the keys are. It is very important to always keep these gateways running, disaster-free and tamper-free, and free of vendor lock. 

Digital vaults

In a smart society and business set-up, every person has the right to their own digital vault to store their digital keys, with a common gateway to access all their assets. This digital gateway should be tamper-free, immutable and self-sovereign. You need a reliable, dependable single gateway for all digital assets wherever they are, with distributed and decentralized systems.

Multi-cloud data storage

Cloud computing makes this possible, as it works with distributed and elastic principles itself. Data can be distributed into multi-cloud platforms. One can build need-based custom IAMs for digital gateways by spanning its infrastructure into a multi-cloud environment with distributed storage like Hadoop and distributed databases with hash sharding, as distributed technology has self-balancing and auto-scaling features.

In-house or third-party?

It is extremely complex to build such a system manually. Instead, you can achieve the same result with the Google Anthos multi-cloud platform. As it can work on other cloud platforms as well as on on-prem platforms, it is vendor-lock-free.

Google Anthos

Since Anthos is a multi-cloud platform, you are not forced to depend on specific highly integrated tools specific to that cloud service provider. Rather than siloize each cloud environment, you can use Anthos to deploy and manage workloads to multiple cloud platforms. Google Anthos allows the creation of Kubernetes clusters in both AWS and Azure environments.

Source: https://cloud.google.com/anthos/clusters/docs/multi-cloud

For any organization to keep its digital world alive and healthy, this kind of multi-cloud environment with hybrid cloud architecture is required. It might be the foundation of the smart world.

At CloudNow – creators of the Akku Identity and Access Management solution – we understand the importance of maintaining the sustainability and privacy of digital gateways, the real holder of all digital assets. Contact our team to learn more about how to implement a cloud-based access control system that works for your organization.

When should you implement an IAM solution?

In which stage of the user or employee lifecycle should an IAM solution ideally be implemented? The answer is: Right at the beginning, during onboarding. When the IAM is implemented early, it becomes part of the organization’s culture and ethos.

Provisioning and onboarding

Access to necessary applications and data needs to be provisioned as soon as the employee is onboarded. When an IAM is not used, access may be provisioned improperly with the intent to keep track manually and perform proper provisioning later.

For enterprise-level organizations with a huge number of employees, this causes issues at a later stage, as you may not have a proper record of the rights provided to each individual. When access provisioning is done properly with an IAM, access privileges will be tracked automatically to keep track of what access is and is not given to each employee.

Redundant data capture is also a real problem as the same data is entered by the new employee in the HRMS and then in the IAM for provisioning. By using a single platform, the redundancy is eliminated.

Single-platform onboarding

Instead of onboarding through multiple tools such as an HRMS or ERP, you can complete onboarding through a single platform – an IAM, such as Akku. You can also integrate your HRMS with Akku’s REST API, if you prefer. When using Akku for onboarding, your employees can upload all required induction documents through the IAM dashboard itself. This could include proof of identity documents, experience certificates, etc. Akku also allows you to set deadlines and schedule reminders for each employee. 

Why choose Akku?

Many businesses choose to work with Active Directory to simplify onboarding. However, there are certain issues with AD, including non-seamless remote working and of course, the enterprise-level costing.

Additionally, in as much as 50-70 percent of cases, in our experience, employees are brought in via a different tool and then asked to provide details on IAM as well. Instead, you can streamline the process with Akku, a tool that allows single-point data capture for onboarding.

Customer IAM for GDPR Compliance

In order to protect the digital privacy of European citizens, the European Union created the General Data Protection Regulation to ensure that organizations which collect any personal data from their users make the users aware of how and why their personal data is being used. Essentially, installing an Identity and Access Management solution across your organization for your employees as well as customers can help you stay compliant with this complex regulation. 

The EU’s GDPR took effect more than a year ago, but that doesn’t make it any easier to comply with. So if your organization is still finding compliance a difficulty, we are here to help.  Continue reading Customer IAM for GDPR Compliance

What is ADFS and why do you need it?

ADFS (Active Directory Federation Services) is an SSO solution created by Microsoft to authenticate users logging into applications which are incompatible with Integrated Windows Authentication (IWA) and Active Directory (AD).

ADFS provides organizations with the flexibility needed to simplify the user experience while improving the control that admins have over user accounts across owned as well as third-party applications. Since ADFS implements SSO, your employees are required to remember only one set of credentials for all the applications. Continue reading What is ADFS and why do you need it?

Akku’s Agentless AD Connector For Improved Security

The AD connector which comes with Akku, allows organizations to use either their on-prem AD or Azure AD as the data source for authentication. Akku’s AD is agentless, which means that no additional software is installed in the client environment. Continue reading Akku’s Agentless AD Connector For Improved Security

Agent-based Cloud Security Solution? No thanks!

If your organization relies on the cloud for a majority of its operations, you may want to look closer at the type of architecture your security solution uses – whether it is agent-based or agentless. While some might say that it is irrelevant and that you should focus only on the security solution’s efficiency, we beg to differ. Picking the right kind of cloud security solution can drastically affect your organization’s day-to-day operations and how much ownership you can take over the security solution. Continue reading Agent-based Cloud Security Solution? No thanks!

Beware of Credential Stuffing

In recent times, you might have noticed user accounts being compromised by the millions, and yet companies refute these claims saying that their systems are secure and have not been attacked. In these cases, the companies are right – instead of a direct attack, the hackers may have performed an attack called ‘credential stuffing’. In this type of attack, hackers get their hands on usernames and passwords of one application or service and stuff the same credentials on another login for another digital provider.

For example, if you have used the same user ID and password for creating your Facebook and Twitter accounts, a hacker who has access to your Facebook user id and password can use the same for getting into your Twitter account. This does not mean that Twitter’s systems are faulty. It simply means that your credentials have been stuffed. Credential stuffing attacks use code injection techniques to test the credentials against multiple accounts like social media, online marketplaces, and bank accounts. Once access is gained, the hacker can get access to personal information, credit card information and other personally verifiable information.

In recent times, this type of attack has gained popularity due to the fact that most users use the same user ID and password for multiple accounts. The situation right now is precarious for most online users – a recent breach of breaches has given hackers access to a whopping 2.2 billion user IDs and passwords. It is called a ‘breach of breaches’ because a few hackers hacked into millions of Dropbox and LinkedIn accounts and compiled a list of plain text credentials. However, another team of hackers hacked into this list to compile an even bigger list of stolen credentials.

If you have built enterprise applications, how sure can you be that your users have created different passwords for all your applications? There is no way for you to know for sure. However, you could put in place a password policy which prevents them from using the same password for all the applications in your network.

Akku from CloudNow Technologies allows you to set custom password policies to help you standardize the passwords set by your users. You can also leverage it to prevent the setting of the same passwords. To know more, get in touch with us now.