Skip to main content

Yet another tool for transferring users from PostgreSQL to Keycloak using Keycloak REST API.

Project description

keycloak-user-transfer

This is yet another tool for transferring huge amount of users from PostgreSQL to Keycloak using Keycloak REST API. It supports groups, custom user attributes, creation of disabled users and users with verified mail.

Configuration

  • db:
    • user_sql: Sql query for fetching users. (Remember: Cast all column types to varchar due bug in psycopg2)
    • cursor_fetch_size: This script use PostgreSQL binary cursors to iterate large amount of user rows. You can set cursor fetch size with this value.
  • keycloak:
    • base_url: Keycloak base url without trailling slash on end. Ex: https://sso.myhost.tld
    • realm: Which realm to insert users.
    • admin-cli-secret: Client secret of "Admin-cli" client. This script use service account on master realm to create users. You can learn more about service accounts in Keycloak here.
  • mappings:
    • user_fields: Key-value mappings of user fields. Keys are Keycloak fields and values are the corresponding columns on the database.
    • user_attributes: Key-value mappings of user attributes. Keys are Keycloak fields and values are the corresponding columns on the database.
    • groups: Key-value mappings of group names and Keycloak IDs. (Groups must created before transfer.)
    • groups_field: Corresponding column that group names concatenate with delimiter.

This tool set random secure temporary password for user for additional security. You should send password reset mail to them.

Usage

After installing package from PyPI, define your config.yml path via KEYCLOAK_USER_TRANSFER_CONFIG environment variable then run keycloak_user_transfer command.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

keycloak_user_transfer-1.0.2-py3-none-any.whl (8.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page