aws-iam-authenticator VS Keycloak

Compare aws-iam-authenticator vs Keycloak and see what are their differences.

aws-iam-authenticator

A tool to use AWS IAM credentials to authenticate to a Kubernetes cluster (by kubernetes-sigs)

Keycloak

Open Source Identity and Access Management For Modern Applications and Services (by keycloak)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
aws-iam-authenticator Keycloak
9 231
2,144 19,946
0.8% 2.2%
8.2 10.0
8 days ago 5 days ago
Go Java
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

aws-iam-authenticator

Posts with mentions or reviews of aws-iam-authenticator. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-04.
  • A Step-by-Step Guide to Easily Deploying EKS Infrastructure and Applications Using Terraform
    2 projects | dev.to | 4 Feb 2024
    curl -Lo aws-iam-authenticator https://github.com/kubernetes-sigs/aws-iam-authenticator/releases/download/v0.5.9/aws-iam-authenticator_0.5.9_linux_amd64 chmod +x ./aws-iam-authenticator mkdir -p $HOME/bin && cp ./aws-iam-authenticator $HOME/bin/aws-iam-authenticator && export PATH=$PATH:$HOME/bin echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
  • Ask r/kubernetes: What are you working on this week?
    2 projects | /r/kubernetes | 31 Oct 2022
    I will be setting up vcluster to work with aws-iam-authenticator. This should work just by following the readme, so I'll be spending extra time automating the setup.
  • Using client-go to `kubectl apply` against the Kubernetes API directly with multiple types in a single YAML file
    6 projects | /r/codehunter | 14 Aug 2022
    Edit: Because I need to do this for more than one cluster and am creating clusters programmatically (AWS EKS API + CloudFormation/eksctl), I would like to minimize the overhead of creating ServiceAccounts across many cluster contexts, across many AWS accounts. Ideally, the only authentication step involved in creating my clientset is using aws-iam-authenticator to get a token using cluster data (name, region, CA cert, etc). There hasn't been a release of aws-iam-authenticator for a while, but the contents of master allow for the use of a third-party role cross-account role and external ID to be passed. IMO, this is cleaner than using a ServiceAccount (and IRSA) because there are other AWS services the application (the backend API which creates and applies add-ons to these clusters) needs to interact with.
  • Five Dex Alternatives for Kubernetes Authentication
    6 projects | dev.to | 16 Jun 2022
    Access to Kubernetes clusters in Amazon EKS is controlled by the AWS IAM Authenticator for Kubernetes. The authenticator runs on the EKS control plane and depends on the aws-auth ConfigMap for configuration settings. Every time you use kubectl to perform actions on the EKS cluster, the AWS IAM Authenticator generates an STS token (AWS Security Token Service). Kubernetes uses the IAM authenticator service to verify the identity of users specified in this security token.
  • Launch HN: Infra (YC W21) – Open-source access management for Kubernetes
    4 projects | news.ycombinator.com | 17 May 2022
    As someone who is a big fan of Teleport, sorry, I just don't get it.

    > Teleport doesn't provide identity provider integrations beyond GitHub (e.g. Okta) in their open source project

    Right, and if you're a small team (5-10 people, like you're targeting) you don't really need SSO on the infra layer. It's a nice to have, it's best practice, but the truth is, by the time you really need it (enough engineers that account management is a pain), you typically have the budget for an Enterprise license.

    > They have a different architecture that involves deploying a centralized proxy service (whereas Infra verifies credentials at the destination infrastructure vs at a central proxy).

    So anyway you need to deploy something central to issue certificates. And anyway, if, to quote you, "We plan to make money by running a managed service version of Infra so teams don’t need to host and upgrade Infra manually.", isn't that the central proxy service? Yet the open-source version avoids it somehow?

    > We plan to make money by running a managed service version of Infra so teams don’t need to host and upgrade Infra manually

    So you want to sell to teams that a) are too small to afford the license for a product like Teleport Enterprise, b) have enough money that they can afford a premium product above and beyond the free offering provided by their Kubernetes vendor, like https://github.com/kubernetes-sigs/aws-iam-authenticator (for EKS), c) are willing to install and maintain another agent on their cluster (infra), but aren't willing to install and maintain the central proxy point?

    > we've designed Infra around an extensible REST API from the start whereas Teleport uses GRPC.

    This isn't really important from a product perspective. For what it's worth, Teleport started with a REST API; they moved to gRPC because, if I recall correctly, gRPC helped them scale to support larger infrastructure better.

    If you're launching a competing product to Teleport, which is now by far the most mature product in the space, then currently, at least from where I'm sitting, you aren't offering sufficient added value compared to the incumbent offerings, which also include CloudFlare Access, Checkpoint Harmony Connect SASE, Hashicorp Boundary (their offerings aren't quite Kubernetes native, but it's the same idea)...

  • Kubernetes Multi-Cluster Part 3: Authentication and Access Control
    4 projects | dev.to | 9 May 2022
    If you’re looking for a cloud provider that caters to identity and access management, then tools like aws-iam-authenticator (AWS) and Anthos Identity Service (Google) are good places to start.
  • Kubernetes Cluster Authentication using AWS IAM
    1 project | dev.to | 9 Feb 2022
    AWS IAM Authenticator.
  • EKS, grupos IAM, "dono do cluster" e system:masters
    2 projects | dev.to | 2 Feb 2022
  • EKS Auth Deep Dive
    1 project | dev.to | 17 Sep 2021
    aws-auth configmap is based on aws-iam-authenticator and has several configuration options:

Keycloak

Posts with mentions or reviews of Keycloak. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-03.
  • Simplifying Keycloak Configuration with Terraform and Terragrunt
    1 project | dev.to | 4 May 2024
    Keycloak, an open-source identity and access management solution, provides robust authentication and authorization services for modern applications. However, configuring Keycloak instances manually can be tedious and error-prone. In this blog post, we'll explore how to simplify Keycloak configuration using Terraform and Terragrunt, enabling infrastructure as code (IaC) practices for managing Keycloak realms, clients, users, and more.
  • Securing Vue Apps with Keycloak
    3 projects | dev.to | 3 Apr 2024
    In this article we'll be using Keycloak to secure a Vue.js Web application. We're going to leverage oidc-client-ts to integrate OIDC authentication with the Vue app. The oidc-client-ts package is a well-maintained and used library. It provides a lot of utilities for building out a fully production app.
  • User Management and Identity Brokering for On-Prem Apps with Keycloak
    1 project | dev.to | 3 Apr 2024
    Keycloak has been a leader in the Identity and Access Management world since its launch almost 8 years ago. It is an open-source offering under the stewardship of Red Hat
  • Navigating Identity Authentication: From LDAP to Modern Protocols
    2 projects | dev.to | 28 Mar 2024
  • Ask HN: No-code, simple-setup user management
    1 project | news.ycombinator.com | 11 Mar 2024
    It sounds like what you're looking for is an identity provider.

    A popular open source option is https://www.keycloak.org/

    This application can manage your users, then you can use standards like OpenID or SAML to plug it into your application, of which there are usually many plugins to accomplish this depending on your tech stack.

  • Top 6 Open Source Identity and Access Management (IAM) Solutions For Enterprises
    3 projects | dev.to | 21 Feb 2024
    KeyCloak is a Cloud Native Computing Foundation (CNCF) project that offers enterprise IAM solutions. Keycloak emphasizes proficient enterprise authorization solutions by providing:
  • Outline: Self hostable, realtime, Markdown compatible knowledge base
    7 projects | news.ycombinator.com | 16 Jan 2024
    Outline only uses SSO for authentication. The solution when self hosting is use a private keycloak server [1]. This allows you to do email based auth.

    [1] https://www.keycloak.org/

  • Keycloak open redirect: wildcard redirect URIs can be exploited to steal tokens
    2 projects | news.ycombinator.com | 12 Jan 2024
    > Keycloak was good but has too much legacy for 10+ years.

    I got curious, actually seems to check out and explains why it's so well documented (but also complex and oftentimes confusing):

    > The first production release of Keycloak was in September 2014, with development having started about a year earlier.

    https://en.wikipedia.org/wiki/Keycloak

    https://github.com/keycloak/keycloak/releases/tag/1.0.0.Fina...

  • What Is OIDC?
    3 projects | news.ycombinator.com | 21 Dec 2023
    > Don't outsource either your authentication or authorization. Run it in-house.

    This is hard to do, though. I hope people here will drop a lot of combinations that work for them!

    Personally, for a small/medium scale project, I went with:

    Keycloak: https://www.keycloak.org/

    It supports various backing RDBMSes (like PostgreSQL, MariaDB/MySQL and others), allows both users that you persist in your own DB, as well as various external sources, like social login across various platforms, is an absolute pain to configure and sometimes acts in stupid ways behind a reverse proxy, but has most of the features that you might ever want, which sadly comes coupled with some complexity and an enterprise feeling.

    I quite like that it offers the login/registration views that you need with redirects, as well as user management, storing roles/permissions and other custom attributes. It's on par with what you'd expect and should serve you nicely.

    mod_auth_openidc: https://github.com/OpenIDC/mod_auth_openidc

    This one's a certified OpenID Connect Relying Party implementation for... Apache2/httpd.

    Some might worry about the performance and there are other options out there (like a module for OpenResty, which is built on top of Nginx), but when coupled with mod_md Apache makes for a great reverse proxy/ingress for my personal needs.

    The benefit here is that I don't need 10 different implementations for each service/back end language that's used, I can outsource the heavy lifting to mod_auth_openidc (protected paths, needed roles/permissions, redirect URLs, token renewal and other things) and just read a few trusted headers behind the reverse proxy if further checks are needed, which is easy in all technologies.

    That said, the configuration there is also hard and annoying to do, as is working with OpenID Connect in general, even though you can kind of understand why that complexity is inherent. Here's a link with some certified implementations, by the way: https://openid.net/developers/certified-openid-connect-imple...

  • Auth0 increases price by 300%
    7 projects | /r/webdev | 7 Dec 2023
    You couldn't pay me to use their bullshit...if you need an identity server/provider go with Keycloak. Open source, free, and standards based, works better and scales better too.

What are some alternatives?

When comparing aws-iam-authenticator and Keycloak you can also consider the following projects:

aws-vault - A vault for securely storing and accessing AWS credentials in development environments

authelia - The Single Sign-On Multi-Factor portal for web apps

dex - OpenID Connect (OIDC) identity and OAuth 2.0 provider with pluggable connectors

authentik - The authentication glue you need.

iam-policy-json-to-terraform - Small tool to convert an IAM Policy in JSON format into a Terraform aws_iam_policy_document

Apache Shiro - Apache Shiro

aws-ebs-csi-driver - CSI driver for Amazon EBS https://aws.amazon.com/ebs/

OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.

aws-efs-csi-driver - CSI Driver for Amazon EFS https://aws.amazon.com/efs/

IdentityServer - The most flexible and standards-compliant OpenID Connect and OAuth 2.x framework for ASP.NET Core

audit2rbac - Autogenerate RBAC policies based on Kubernetes audit logs

Spring Security - Spring Security