(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

IAM

【Keycloak/RHBK】AdminAPIで作成したユーザのidをLocationから取得する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でユーザを作成した際にその応答結果から新規作成されたユーザのユーザーID(id)を取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 curl 7.76.1 (x86…

【Ver22/Ver24】開発モードで利用しているKeycloakをアップデートする

はじめに Keycloak(RedHat Build of Keycloak)は開発モードで起動を行うと、特に設定をせずともH2という同梱されているデータベース上に情報が格納されます。本記事ではそれらのデータを新しいバージョンに持っていくためにデータをコピーし、起動させた際…

【Keycloak/RHBK】AdminAPIでResourceTypeを指定してパーミッションを作成する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でリソースタイプと紐づくリソースベースドパーミッションを新規作成する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークン及び該当の…

【Keycloak/RHBK】AdminAPIでAggregate Policyを作成する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でAggregate Policyを新規作成する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークン及び該当のクライアントのID及びAggregate Policy…

【Keycloak/RHBK】AdminAPIでAggregate Policyに紐づくポリシーを取得する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でAggregate Policyに関する情報を取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークン及び該当のクライアントのID及び該当のAgg…

【Keycloak/RHBK】AdminAPIを用いてユーザのグループ情報を操作する

はじめに Red Hat build of Keycloak(Keycloakの商用版)ではユーザにグループという属性があります。 属性とは違ってサブグループ/親グループという階層構造となっているのが特徴で、ユーザへのロールマッピングにて利用されます。そんなグループですが、…

【Keycloak/RHBK】AdminAPIでクライアントリソースを新規作成する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でクライアントリソース(client resource)を作成する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークン及びリソースを作成したいクラ…

【Keycloak/RHBK】ユーザのアカウントロックをAdminAPIで行う

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にて任意のユーザのアカウントロック(アカウントの無効化)を取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 ユーザのIDをURIに付与した状態でenabledをtrueか…

【Keycloak/RHBK】ユーザーが所属しているグループをexportで出力する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてユーザ名をキーにグループ名を取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 以下のようにユーザ情報を出力した上で ./kc.sh export --dir Test --users d…

【Keycloak/RHBK】jqコマンドを利用してGETするユーザを属性の値で絞る

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でリスト表示するユーザを絞る。 具体的には属性hogeの値がfugaのユーザのみの出力を行う。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストー…

【Keycloak/RHBK】PowerShellからREST経由でアクセストークンを発行する

やりたいこと PowerShellからKeycloak(RedHat Build of Keycloak)のアクセストークンを発行する。尚、adminユーザを利用したパスワード方式での実行を想定する。 環境情報 rhbk-22.0.8 PowerShell 7.3.11 やり方 ボディデータをハッシュテーブルで定義した…

【Keycloak/RHBK】ログイン後のセッション情報をブラウザとサーバー側で確認する

はじめに Keycloak(RedHat Build of Keycloak)ではログインに成功すると内部的にはセッションが生成され、サーバ側で認証されたユーザを管理しています。また、その情報に相対する情報がブラウザ側にもクッキーとして保管されます。本記事ではサーバ側及び…

【Keycloak/RHBK】AdminAPIでログイン済みのセッション数を取得する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でログイン済みのユーザセッション数の合計を取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークンの取得を行い $ AT=`curl --ins…

【Keycloak/RHBK】AdminAPIで100ユーザ以上の情報を一括で取得する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でユーザ情報を一気に取得する。尚、デフォルトでは100ユーザを上限として出力される。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークン…

【Keycloak/RHBK】AdminAPIでユーザ名からidを取得する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でユーザ名(username)からidを取得する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークンの取得を行い $ AT=`curl --insecure -X POS…

【Keycloak/RHBK】AdminAPIで既存ユーザのパスワードを設定する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でユーザのパスワードを設定する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークンの取得を行い $ AT=`curl --insecure -X POST http:/…

【Keycloak/RHBK】AdminAPIを利用して新規ユーザを作成する

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)にてAdmin API経由でユーザを作成する。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) rhbk-22.0.8 やり方 アクセストークンの取得を行い $ AT=`curl --insecure -X POST http://localhost:8…

【RHBK】RHELにRedHat Build of Keycloakをインストールする流れ

やりたいこと Red Hat build of Keycloak(Keycloakの商用版)のインストール作業を行う。 環境情報 Red Hat Enterprise Linux : 9.3 (Plow) openjdk 17.0 やり方 Javaの環境をインストールした上で # yum install java-17-openjdk# java --version openjdk …

【Keycloak/Nginx】プロキシ型でアプリケーションを認証保護する流れ

はじめに ウェブサーバであるNginxと認証認可ツールKeycloakを連携させることで、アクセス時にユーザ認証をかけることが可能です。 本記事では実際にNginxとKeycloakを連携させ、アクセス時にログイン画面が表示される動きを確認しました。 環境情報 keycloa…

【Keycloak】Admin REST APIを利用してユーザ一覧を取得する

やりたいこと Keycloak(RedHat SSO)上に存在するユーザをAdmin REST APIを利用して取得する。 尚、今回はデフォルトで存在するクライアント「admin-cli」を利用するケースで記載を行い、masterレルムを取得対象とする。 環境情報 Linux(fedora) keycloak…

【Keycloak】H2データベースに格納された情報をコマンドから確認する

はじめに Keycloak(RedHat SSO)は開発モード(start-dev)で起動するとH2データベースに情報が格納されます。 本記事では同データベースに保管されているデータをLinux機のターミナル上で確認する流れについて記載しました。 環境情報 Linux(fedora) key…

【Keycloak】kc.sh exportによってユーザの一覧をエクスポートする

やりたいこと Keycloak(RedHat SSO)上に存在するユーザをexportコマンドにて出力する。 環境情報 Linux(fedora) keycloak-21.1.2 やり方 Keycloakが稼働しているサーバ上で以下のようにレルムを指定してコマンドを押下する。 $ /kc.sh export --file ./t…

【Keycloak】User Storage Providerを利用してテキストファイルでユーザ管理を行う

はじめに Keycloak(RedHat SSO)には「User Storage SPI」という拡張機能があり、これを用いると直接接続しているデータベースとは別の認証情報ストアを利用することができます。本記事では公式が提供する「user-storage-simple」というチュートリアルを利…

【Keycloak】Direct access grantsを利用してcurlでアクセストークンを発行する

はじめに Direct Access Grantsとはクライアントがユーザー認証を行う際の方式の一つで、直接ユーザ名とパスワードで認証を行います。同方式を利用するとブラウザ経由ではなくcurlコマンドで簡易的にトークン発行が可能なため、今回はKeycloakの動作検証とし…

【Keycloak】管理コンソールを開いた際にHTTPS requiredという画面になる事象

事象 Keycloak(RHBKでも同様)のトップ画面にて管理コンソール(Administration Console)を表示するために進めようとするもトップ画面「We are sorry... HTTPS required」という画面に遷移してエラーとなる。HTTPS requiredという画面 環境情報 Linux(fed…

【Keycloak/Linux】tarで配置した資材からインストールを行う流れ

はじめに IAMに関するOSSであるKeycloakですが、同ツールをインストールするためにはJDK環境が必要です。 本記事ではJDKのインストールからKeycloakの起動を行うまでの流れを記事にしました。尚、インターネットから隔離された環境を考慮してyum等のツールは…