keycloak-admin-go icon indicating copy to clipboard operation
keycloak-admin-go copied to clipboard

Keycloak Admin REST client for go

keycloak-admin-go

pipeline status coverage report Go Report Card CircleCI

Keycloak admin client in go.

This is still highly unstable as more of the admin api endpoints and parameters are added.

Usage

go get -u github.com/Azuka/keycloak-admin-go/...

Local Development

make init
make test
make integration
#optionally
make integration-clean

Local CI

  • Install CircleCI locally: https://circleci.com/docs/2.0/local-cli

Wish List

  • [x] Add authentication integration tests
  • [ ] Attack Detection
  • [ ] Authentication Management
  • [ ] Client Attribute Certificate
  • [ ] Client Initial Access
  • [ ] Client Registration Policy
  • [ ] Client Role Mappings
  • [ ] Client Scopes
  • [ ] Clients
  • [ ] Component
  • [ ] Groups
  • [ ] Identity Providers
  • [ ] Key
  • [ ] Protocol Mappers
  • [ ] Realms Admin
    • [x] Get realm
    • [ ] Import realm
    • [ ] Update realm
    • [x] Delete realm
    • [ ] Get admin events
    • [ ] Delete admin events
  • [ ] Role Mapper
  • [ ] Roles
  • [ ] Roles (by ID)
  • [ ] Scope Mappings
  • [ ] User Storage Provider
  • [ ] Users
    • [x] Get user
    • [x] Search users
    • [x] Create user
    • [x] Update user
      • [x] Profile information
      • [x] Groups
      • [x] Sessions, Consents
  • [ ] Root

Thanks to

  • https://gopkg.in/resty.v1: quick and dirty REST client
  • https://godoc.org/golang.org/x/oauth2: for the shamelessly copied authentication
  • https://github.com/fatih/gomodifytags: because I'm too lazy to type json struct tags