[xwiki-devs] [Proposal] New Anti Spam API in xwiki-platform-spam
Hi devs, We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through. I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting. xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping. The API would be simple: @Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map<String, Object> parameters); } Then the idea would be to have an EventListener for page save and comment save and go through this API. WDYT? Thanks -Vincent
Why not in contrib ? On Fri, Jan 29, 2016 at 4:10 PM, [email protected] <[email protected]> wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map<String, Object> parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
On 29 Jan 2016 at 16:13:38, Thomas Mortagne ([email protected](mailto:[email protected])) wrote:
Why not in contrib ?
It could but I consider it a core service and I’d like to xwiki core dev team to maintain it. I’m volunteering of course. Thanks -Vincent
On Fri, Jan 29, 2016 at 4:10 PM, [email protected] wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
+0 On Fri, Jan 29, 2016 at 4:14 PM, [email protected] <[email protected]> wrote:
On 29 Jan 2016 at 16:13:38, Thomas Mortagne ([email protected](mailto:[email protected])) wrote:
Why not in contrib ?
It could but I consider it a core service and I’d like to xwiki core dev team to maintain it. I’m volunteering of course.
Thanks -Vincent
On Fri, Jan 29, 2016 at 4:10 PM, [email protected] wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
Hi, On 29 Jan 2016 at 16:14:42, [email protected] ([email protected](mailto:[email protected])) wrote:
On 29 Jan 2016 at 16:13:38, Thomas Mortagne ([email protected](mailto:[email protected])) wrote:
Why not in contrib ?
It could but I consider it a core service and I’d like to xwiki core dev team to maintain it. I’m volunteering of course.
After more thinking I think you’re right and we don’t need to put it in the core. So I remove my proposal for platform and I’m going to code this contrib. Unless several other devs think it should go in platform... Thanks -Vincent
Thanks -Vincent
On Fri, Jan 29, 2016 at 4:10 PM, [email protected] wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
+1 for contrib. On 01/29/2016 10:28 AM, [email protected] wrote:
Hi,
On 29 Jan 2016 at 16:14:42, [email protected] ([email protected](mailto:[email protected])) wrote:
On 29 Jan 2016 at 16:13:38, Thomas Mortagne ([email protected](mailto:[email protected])) wrote:
Why not in contrib ?
It could but I consider it a core service and I’d like to xwiki core dev team to maintain it. I’m volunteering of course.
After more thinking I think you’re right and we don’t need to put it in the core.
So I remove my proposal for platform and I’m going to code this contrib.
Unless several other devs think it should go in platform...
Thanks -Vincent
Thanks -Vincent
On Fri, Jan 29, 2016 at 4:10 PM, [email protected] wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Sergiu Dumitriu http://purl.org/net/sergiu/
+1 for contrib too. On Fri, Jan 29, 2016 at 7:01 PM, Sergiu Dumitriu <[email protected]> wrote:
+1 for contrib.
On 01/29/2016 10:28 AM, [email protected] wrote:
Hi,
On 29 Jan 2016 at 16:14:42, [email protected] ([email protected] (mailto:[email protected])) wrote:
On 29 Jan 2016 at 16:13:38, Thomas Mortagne ([email protected]
(mailto:[email protected])) wrote:
Why not in contrib ?
It could but I consider it a core service and I’d like to xwiki core
dev team to maintain it. I’m volunteering of course.
After more thinking I think you’re right and we don’t need to put it in the core.
So I remove my proposal for platform and I’m going to code this contrib.
Unless several other devs think it should go in platform...
Thanks -Vincent
Thanks -Vincent
On Fri, Jan 29, 2016 at 4:10 PM, [email protected] wrote:
Hi devs,
We’ve suffered some spamming attacks on xwiki.org recently and we’ve put xwiki.org under cloudflare. This should prevent some attacks but it’s not enough and spam is still going through.
I’d like to propose creating a new xwiki-platform-spam module with an API module and a simple implementation using keyword blacklisting.
xwiki-platform-spam |_ xwiki-platform-spam-api |_ xwiki-platform-spam-simple
We could imagine adding an akismet implementation later on: xwiki-platform-spam-akismet
For the simple implementation, I’d like to be able to configure the keywords in xobjects to make it simple to update and have the community helping.
The API would be simple:
@Role public interface SpamChecker { /** * Checks if the passed content is considered spam or not. * * @param content the content to check * @param parameters a map of parameters that depends on the implementation used. For example this can include the * IP address of the submitter of the content, its email address, the date of submission, etc * @return true if the content is considered spam or false otherwise */ boolean isSpam(Reader content, Map parameters); }
Then the idea would be to have an EventListener for page save and comment save and go through this API.
WDYT?
Thanks -Vincent
devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
participants (4)
-
Marius Dumitru Florea -
Sergiu Dumitriu -
Thomas Mortagne -
vincent@massol.net