Webhooks
AdminUI contains two webhooks to extend AdminUI functionality and integrate it with your IdentityServer and custom Identity needs. These webhooks hold no functionality themselves but call secured endpoints to trigger outside functionality, this could within your IdentityServer instance or a separate API.
The Password Reset webhook
will allow AdminUI to trigger custom password reset logic contained elsewhere. And the User registration webhook
will trigger any additional account setup process your security solution might have.
Password Reset
If properly configured on a User's account page, a Password Reset button will be avalible for triggering the webhook.
In order to configure this web you must first set up a Webhooks Client in AdminUI and a have an avalible Endpoint to consume the webhook.
The Endpoint Url is set in the API config under the field PasswordResetEndpoint
.
For more information on how to create an Endpoint for Password Reset see Password Reset Endpoint.
User registration
If account creation succeeds and the User registration hook has been configured, then the webhook will trigger. The prefered method to finalise account creation and ask users to setup their intial password is by using this webhook.
In order to configure this web you must first set up a Webhooks Client in AdminUI and a have an avalible Endpoint to consume the webhook.
The Endpoint URL is set in the API config under the field RegistrationConfirmationEndpoint
.
For more information on how to create an Endpoint for User registration see User registration Endpoint.
Authorization
The webhooks will need to be to secured by your IdentityServer, AdminUI webhooks use the admin_ui_webhooks
scope for authorization.
To ensure your webhooks are secured against public use, they should check for a bearer token, issued by your IdentityServer installation, that contains this scope.
Client
To allow AdminUI to request access tokens for these webhooks, a new client must be created within your IdentityServer. Both the Password Reset and the User registration webhooks use the same Client.
This client should have the following configuration:
client_credentials
grant type (aMachine to Machine
Client within AdminUI)- can request the
admin_ui_webhooks
scope - have a client secret
Once this Client has been created, the Client ID and the Client Secret must be set in the API config under the ClientId
and ClientSecret
fields.