Skip to content

Commit

Permalink
Merge pull request #398 from bgraef/main
Browse files Browse the repository at this point in the history
update keycloak post
  • Loading branch information
bgraef authored Jul 29, 2024
2 parents 6b4a745 + c22ea40 commit 2ea8a1e
Showing 1 changed file with 19 additions and 15 deletions.
34 changes: 19 additions & 15 deletions content/posts/ol/virt/post-32/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Install Keycloak"
date: 2023-10-18
draft: false
summary: "Learn to deploy Keycloak for providing authentication to applications and secure services using OAuth and SAML."
summary: "Learn how to deploy Keycloak to provide application authentication and secure services using OAuth and SAML."
tags: ["ol","lab","tutorial","ol-podman"]
showDate: true
---
Expand All @@ -11,28 +11,32 @@ showDate: true

:crescent_moon: [Lab](https://luna.oracle.com/lab/752793ff-9f74-4bb0-b848-90c5bcae4388)

:spiral_notepad: [Tutorial](https://docs.oracle.com/en/learn/podman-keycloak)
:spiral_notepad: [Tutorial](https://docs.oracle.com/en/learn/ol-podman-keycloak)

## Details

Keycloak provides single sign-on functionality for web applications and RESTFUL web services. A primary goal of Keycloak is to provide security features that developers can easily use to secure applications and services within their organizations, for example Single-Sign-On authentication. Keycloak can also be integrated with existing LDAP and Active Directory servers.

Keycloak is based on standard protocols and provides support for User Federation, OpenID Connect, OAuth 2.0 and SAML and many more. Keycloak provides both administrators, and users, with management consoles. Users can update their passwords, profile details and setup two-factor authentication via the Account Managment Console. Likewise administrators can use the Admin Console to manage all aspects of Keycloak's functionality, it's authorization policies, applications and manage users (including user's permissions and sessions).
Keycloak provides authentication functionality for web applications and RESTFUL web services. Its primary goal is to provide security features that developers can easily use to secure applications and services within their organizations, such as Single-Sign-On. You can also integrate Keycloak with existing LDAP and Active Directory servers.

Keycloak is based on standard protocols and supports user federation, OpenID Connect, OAuth 2.0, SAML, and many more. It provides both administrators and users with management consoles. Users can update their passwords and profile details and set up two-factor authentication via the Account Management Console. Likewise, administrators can use the Admin Console to manage all aspects of Keycloak's functionality, including authorization policies, applications, user permissions, and those users' sessions.

### Objectives

These guides show how to deploy Keycloak on Podman, configure it with a datastore using a Podman volume to store the data outside of Podman. Then demonstrate how to access Keycloak, create a new `Realm` then add a `User` to the newly created Keycloak `Realm`. Finally the newly created `User` will log on to the Keycloak server's newly created `Realm` to demonstrate where a `User` could manage the Single Sign-On details. The main steps are outlined below:
In this tutorial, you'll learn how to:

- Deploy Keycloak using Podman
- Configure Keycloak with a datastore using a Podman volume
- Access Keycloak:
- Create a new realm
- Add a user to the realm
- Verify the user can log in

- Install Podman
- Configure a Podman network and volume
- Deploy a Postgres database container
- Deploy a Keycloak container using the Postgres container as a datastore
- Create a new Keycloak `Realm` and `User`
> **Note:** A production deployment would use either Podman or Kubernetes secrets to obfuscate passwords. This tutorial does not cover either scenario.
> **Note:** A production deployment would most likely use either Podman secrets, or Kubernetes secrets, to obfuscate any passwords. Neither of the scenarios are covered in this Lab.
### Prerequisites

### What Do You Need?
- Minimum of a single Oracle Linux system

- A client system with Oracle Linux installed
- Access to the Internet
- Each system should have Oracle Linux installed and configured with:
- A non-root user account with sudo access
- Podman and cURL packages
- Access to the Internet

0 comments on commit 2ea8a1e

Please sign in to comment.