[GH-ISSUE #714] Plugin system #258

Open
opened 2026-02-27 08:16:12 +03:00 by kerem · 6 comments
Owner

Originally created by @nitnelave on GitHub (Oct 25, 2023).
Original GitHub issue: https://github.com/lldap/lldap/issues/714

WIP issue to jot down some notes:
https://github.com/extism/extism

Register itself
Hook into the domain methods
Initialization code

Useful for:
Setting up and managing custom attributes.
Extra logging/audit/security enforcement
More?

Originally created by @nitnelave on GitHub (Oct 25, 2023). Original GitHub issue: https://github.com/lldap/lldap/issues/714 WIP issue to jot down some notes: https://github.com/extism/extism Register itself Hook into the domain methods Initialization code Useful for: Setting up and managing custom attributes. Extra logging/audit/security enforcement More?
Author
Owner

@fgardt commented on GitHub (Oct 26, 2023):

maybe also the possibility to extend the web UI with a new page per plugin but that would involve adding some way to add new APIs etc

<!-- gh-comment-id:1781026418 --> @fgardt commented on GitHub (Oct 26, 2023): maybe also the possibility to extend the web UI with a new page per plugin but that would involve adding some way to add new APIs etc
Author
Owner

@nitnelave commented on GitHub (Oct 26, 2023):

I think making the web UI extensible is going to be another whole can of
worms that I don't want to get into. I was more thinking of plugins as
unintrusive pieces of logic that hook into the lower-level calls
("create_user", "add_user_to_group" and so on) and return a modified
request, potentially issuing more requests or adding some logging and so on.

And ideally, with the right setup, you can have the plugins be written in
any language that compiles to WASM. A Lua or go plugin could be fairly
simple to write for most sysadmins, to support their
{auto-incrementing/unique/CRC-checked} custom attribute.

On Thu, Oct 26, 2023 at 2:29 PM Florian Gebhardt @.***>
wrote:

maybe also the possibility to extend the web UI with a new page per plugin
but that would involve adding some way to add new APIs etc


Reply to this email directly, view it on GitHub
https://github.com/lldap/lldap/issues/714#issuecomment-1781026418, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGCPWLOBIIJU7RH3ZI5N2TYBJJTDAVCNFSM6AAAAAA6PYNRMOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBRGAZDMNBRHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Valentin Tolmer

<!-- gh-comment-id:1781052154 --> @nitnelave commented on GitHub (Oct 26, 2023): I think making the web UI extensible is going to be another whole can of worms that I don't want to get into. I was more thinking of plugins as unintrusive pieces of logic that hook into the lower-level calls ("create_user", "add_user_to_group" and so on) and return a modified request, potentially issuing more requests or adding some logging and so on. And ideally, with the right setup, you can have the plugins be written in any language that compiles to WASM. A Lua or go plugin could be fairly simple to write for most sysadmins, to support their {auto-incrementing/unique/CRC-checked} custom attribute. On Thu, Oct 26, 2023 at 2:29 PM Florian Gebhardt ***@***.***> wrote: > maybe also the possibility to extend the web UI with a new page per plugin > but that would involve adding some way to add new APIs etc > > — > Reply to this email directly, view it on GitHub > <https://github.com/lldap/lldap/issues/714#issuecomment-1781026418>, or > unsubscribe > <https://github.com/notifications/unsubscribe-auth/AAGCPWLOBIIJU7RH3ZI5N2TYBJJTDAVCNFSM6AAAAAA6PYNRMOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBRGAZDMNBRHA> > . > You are receiving this because you authored the thread.Message ID: > ***@***.***> > -- Valentin Tolmer
Author
Owner

@fgardt commented on GitHub (Oct 26, 2023):

so more as a way to enforce / automate certain parts of user / group attributes and creation ok

<!-- gh-comment-id:1781083400 --> @fgardt commented on GitHub (Oct 26, 2023): so more as a way to enforce / automate certain parts of user / group attributes and creation ok
Author
Owner

@nitnelave commented on GitHub (Jan 30, 2024):

FYI, I'm exploring what a plugin API would look like in https://github.com/nitnelave/lldap_plugin_poc, feel free to leave some comments in issues/discussions there, or just on discord in the #development channel.

<!-- gh-comment-id:1917451115 --> @nitnelave commented on GitHub (Jan 30, 2024): FYI, I'm exploring what a plugin API would look like in https://github.com/nitnelave/lldap_plugin_poc, feel free to leave some comments in issues/discussions there, or just on discord in the #development channel.
Author
Owner

@nitnelave commented on GitHub (Jan 23, 2025):

@broeng started writing an RFC, feel free to contribute/review/comment/suggest: https://docs.google.com/document/d/1pWbiZXhfJVx3XDMEz7VWUAJVPj3kT0O95G_sYZ09OLM/edit?usp=sharing

<!-- gh-comment-id:2609720706 --> @nitnelave commented on GitHub (Jan 23, 2025): @broeng started writing an RFC, feel free to contribute/review/comment/suggest: https://docs.google.com/document/d/1pWbiZXhfJVx3XDMEz7VWUAJVPj3kT0O95G_sYZ09OLM/edit?usp=sharing
Author
Owner

@tenninjas commented on GitHub (Feb 28, 2025):

I'm available to help with testing this, please ping me when I can help.

<!-- gh-comment-id:2690735273 --> @tenninjas commented on GitHub (Feb 28, 2025): I'm available to help with testing this, please ping me when I can help.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/lldap-lldap#258
No description provided.