{
  "store": {
    "name": "Linagora LLNG Plugins",
    "url": "https://linagora.github.io/lemonldap-ng-plugins/",
    "updated": "2026-04-01T08:18:37Z",
    "gpgKey": "https://linagora.github.io/lemonldap-ng-plugins/store-key.asc"
  },
  "plugins": [
    {
      "name": "json-file",
      "version": "0.1.0",
      "summary": "JSON file-based authentication and user backend for development and testing",
      "description": "",
      "author": "Linagora <https://linagora.com>",
      "license": "GPL-2.0",
      "llng_compat": ">=2.23.0",
      "perl_requires": {
        "JSON": "2.0"
      },
      "archive": "llng-plugin-json-file-0.1.0.tar.gz",
      "sha256": "4eae84c929444fd8ac4ae6323e571f4cb9e30da1c7b972319b6c219f7af1684f",
      "signature": "llng-plugin-json-file-0.1.0.tar.gz.asc",
      "tags": [],
      "homepage": "",
      "customPlugins": "",
      "post_install": "Set the LLNG_JSONUSERS environment variable to point to your JSON users file.",
      "published": "2026-04-01T08:18:36Z"
    },
    {
      "name": "mail-autodiscover",
      "version": "1.0.0",
      "summary": "SMTP/IMAP autodiscover for Outlook and Thunderbird",
      "description": "Handles /autodiscover/autodiscover.xml queries for mail client autoconfiguration. Add autodiscover.mydomain.tld as an alias to your LLNG portal in your web server configuration. Also returns 404 for Exchange-specific endpoints (/EWS, autodiscover.json).",
      "author": "Xavier Guimard / Linagora <https://linagora.com>",
      "license": "GPL-2.0",
      "llng_compat": ">=2.0.0",
      "perl_requires": {},
      "archive": "llng-plugin-mail-autodiscover-1.0.0.tar.gz",
      "sha256": "87d40b5aacbd288cf2cc217584ccfa7493bb9173626e20eb1b12d3384015d3ee",
      "signature": "llng-plugin-mail-autodiscover-1.0.0.tar.gz.asc",
      "tags": [],
      "homepage": "",
      "customPlugins": "::Plugins::MailAutodiscover",
      "post_install": "Edit the $imapServer and $smtpServer variables at the top of MailAutodiscover.pm to match your mail servers. Then add autodiscover.mydomain.tld as a web server alias pointing to the LLNG portal.",
      "published": "2026-04-01T08:18:36Z"
    },
    {
      "name": "matrix-token-exchange",
      "version": "0.1.0",
      "summary": "Matrix token exchange for OIDC relying parties",
      "description": "Allows Matrix federation tokens to be exchanged for OIDC access tokens, following Matrix spec v1.9 server-server API for OpenID token validation and server discovery.",
      "author": "LemonLDAP::NG team <lemonldap-ng@ow2.org>",
      "license": "GPL-2.0",
      "llng_compat": ">=2.20.0",
      "perl_requires": {
        "Net::DNS": "0",
        "Regexp::Common": "0"
      },
      "archive": "llng-plugin-matrix-token-exchange-0.1.0.tar.gz",
      "sha256": "163719177409bd3832607d57fa53804c024693012f1266279b4ac41c25787bf7",
      "signature": "llng-plugin-matrix-token-exchange-0.1.0.tar.gz.asc",
      "tags": [],
      "homepage": "",
      "customPlugins": "::Plugins::MatrixTokenExchange",
      "post_install": "For each OIDC RP that should accept Matrix token exchange, set 'oidcRPMetaDataOptionsTokenXAuthorizedMatrix' to the list of authorized Matrix server names (comma-separated) in the Manager.",
      "published": "2026-04-01T08:18:37Z"
    },
    {
      "name": "oidc-jarm",
      "version": "0.1.0",
      "summary": "JARM - JWT Secured Authorization Response Mode (RFC 9207)",
      "description": "Implements JARM for both OIDC Provider (sign/encrypt authorization responses) and OIDC Client (request and verify JARM responses from remote OPs). Adds JARM configuration options to OIDC RP and OP metadata in the Manager.",
      "author": "LemonLDAP::NG team <lemonldap-ng@ow2.org>",
      "license": "GPL-2.0",
      "llng_compat": ">=2.23.0",
      "perl_requires": {},
      "archive": "llng-plugin-oidc-jarm-0.1.0.tar.gz",
      "sha256": "c39f7f01967aa3bb71947594f5358d40bdc7b599dd0f9ec1c82e96fc36625014",
      "signature": "llng-plugin-oidc-jarm-0.1.0.tar.gz.asc",
      "tags": [
        "oidc",
        "security"
      ],
      "homepage": "https://github.com/linagora/lemonldap-ng-plugins",
      "customPlugins": "::Plugins::OIDCJarm, ::Plugins::OIDCJarmClient",
      "post_install": "Note: the OIDC discovery metadata will not advertise JARM response modes unless you also patch Lemonldap::NG::Common::OpenIDConnect::Metadata (see README.md for the patch).",
      "published": "2026-04-01T08:18:37Z"
    },
    {
      "name": "reports",
      "version": "1.0.0",
      "summary": "Session and browser usage reports (CSV)",
      "description": "Provides API endpoints returning CSV reports: /reports/apps (OIDC offline apps by User-Agent), /reports/browsers (web sessions by User-Agent), /reports/lastcnx (last connection per user from SSO + LDAP). Requires PostgreSQL session storage and LDAP user backend for /reports/lastcnx.",
      "author": "Xavier Guimard / Linagora <https://linagora.com>",
      "license": "GPL-2.0",
      "llng_compat": ">=2.0.0",
      "perl_requires": {
        "DBI": "0",
        "Date::Parse": "0",
        "Date::Format": "0"
      },
      "archive": "llng-plugin-reports-1.0.0.tar.gz",
      "sha256": "f5395af2288d5be2ce030dd30760bc49814ad4f5e9eb20834fbd904cd824d76b",
      "signature": "llng-plugin-reports-1.0.0.tar.gz.asc",
      "tags": [],
      "homepage": "",
      "customPlugins": "::Plugins::Reports",
      "post_install": "Protect /reports/* endpoints in your Manager virtual host rules to restrict access to administrators.",
      "published": "2026-04-01T08:18:37Z"
    }
  ]
}
