Coder Social home page Coder Social logo

yogeshkk / kaau Goto Github PK

View Code? Open in Web Editor NEW
7.0 2.0 1.0 32.04 MB

This is a Hobby Project. This project aims to provide a management utility to Authorisation and Authentication for Kubernetes from a simple UI

License: Apache License 2.0

Go 37.97% CSS 10.10% HTML 49.93% JavaScript 1.99%
kubernetes docker authorization role clusterrole clusterrolebinding kubernetes-authentication

kaau's Introduction

kaau

Project KAAU.

Kubernetes Authorization Authentication Utility

NAQ(Nobody Asked Questions)

Q1) What is KAAU?

Ans: KAAU is an abbreviation of Kubernetes Authorization Authentication Utility. It is a small hobby project I have been working on the past couple of months.

Q2) What this utility does?

Ans: KAAU is a web-based application it does CRUD(Create, Read, Update, and Delete) on Kubernetes Authentication and Authorization part which are.

Authentication

  • service Account

Authorization

  • Roles
  • Cluster Roles
  • RoleBinding
  • ClusterRoleBinding

Q3) Hold on you missed User account in which are part of Authentication.

Ans: Good catch. User accounts are not managed by Kubernetes and I am using an API call to Kubernetes to manage the above.

Normal users are assumed to be managed by an outside, independent service. An admin distributing private keys, a user store like Keystone or Google Accounts, even a file with a list of usernames and passwords. In this regard, Kubernetes does not have objects which represent normal user accounts. Normal users cannot be added to a cluster through an API call.

https://kubernetes.io/docs/reference/access-authn-authz/authentication/

Q4) Ok. But I have Kubectl to do all the above tasks and more then why so much effort if no one going to use it.

Ans: So cruel, But it is ok if this goes in git graveyard. I loved kubernetes and was learning the Go language so I thought I could create something in kubernetes.

I use kubernetes every day all of using kubectl, But when your users and roles grow a lot it is painfull to find which account entitles which role via which role binding. So a simple UI can be helpful. It is ok if no one uses it will be in opensource so another brillance developer can see how easy to develop around kubernetes and make something awesome out of it.

Q5) You are learning Go Language. Is that why code is so awful?

Ans: Yes. Not only Golan but HTML and CSS also. I know how to write a code still, have to learn how not to write code.

Q6) That's great. how I can test it.

Ans: You can check in the install section. you can compile the binary or download them from the release section. Best way to install in minikube. I have provided minikube.yaml in install folder/

Q7) Imagine if I like a project. Then how I can contribute.

Ans: I will be working on fixing code. You can provide me star on GitHub for encouragement. It is an open-source project you can contribute to your capacity.

Q8) What is pending?

Ans: As of now, all modules are working. The pending part is to generalize code, Add error handling and add unit test cases which I have to figure out how to do.

Q9) Last thing. What a great logo.

Ans: Thanks. It is "Crow the detective" made by my wife. She is not much on social media. I will convey your message.

Login Screen Login page

Role Binding Role Binding

Create Role Binding Role Binding

Role Page Role Page

Create Role Page Create Role Page

Creating Role Page Create Role Page

Role Created notification Role Created notification

Delete role Confirmation. Delete role Confirmation

Delete role delete Role

Read bit about RBAC https://medium.com/@yogeshkunjir/kubernetes-has-your-r-back-5b4c983be0

Install KAAU https://github.com/yogeshkk/KAAU/blob/master/Doc/install.md

Status of Project. All modules are functional.

NOTE:- You can browse code and if like idea provides star for encouragement or provide feedback to me one below social networks.

Twitter https://twitter.com/yogeshkunjir LinkedIn https://www.linkedin.com/in/yogeshkunjir/

kaau's People

Contributors

yogeshkk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.