New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IGNITE-9560 #4922
IGNITE-9560 #4922
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Guys,
I have looked through the PR and left couple of comments through the code. Please take a look.
The biggest issue for me was to understand logic behind classes hierarchy and relationships between IgniteSecurity, GridSecurityProcessor, IgniteSecurityProcessor, etc. It is still unclear for me. I would appreciate if someone creates a wiki page with design description. Then I take a look once again.
One more question - do we really need "withContext()" notation? Is that true that we never need to call withContext() several times wrapping and unwrapping the context multiple times? If yes and we do it only once on message processing start then logic behind wrapping and unwrapping can be simplified a lot. Do you agree?
Also note that adding 16 bytes field to IO message may affect performance for cases when security is off. Please suggest another solution.
There are also several comments from Nikolay Izhikov still unresolved. Please address all of them.
Please also review English in javadocs.
...rc/main/java/org/apache/ignite/internal/processors/security/NoOpIgniteSecurityProcessor.java
Outdated
Show resolved
Hide resolved
/** | ||
* Default Grid security Manager implementation. | ||
*/ | ||
public class IgniteSecurityProcessor implements IgniteSecurity, GridProcessor { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not extending ProcessorAdapter?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IgniteSecurityProcessor delegates all methods of GridProcessor to inner GridSecurityProcessor.
Adapter as a parent usage may lead to a situation when some delegation broke (no-op implementation from adapter used).
...rc/main/java/org/apache/ignite/internal/processors/security/NoOpIgniteSecurityProcessor.java
Outdated
Show resolved
Hide resolved
modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
Outdated
Show resolved
Hide resolved
modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
Outdated
Show resolved
Hide resolved
* IGNITE-9560 fix comments * IGNITE-9560 add license info * IGNITE-9560 fix comments * IGNITE-9560 fix comments
* IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing
* IGNITE-9560: Tests reducing * IGNITE-9560: Tests reducing
* IGNITE-9560 fix index tests * IGNITE-9560 fix index tests * IGNITE-9560 fix comments * IGNITE-9560 fix comments
* IGNITE-9560 Explicit plugin configuration added. * IGNITE-9560 pluginConfiguration method was deprecated. * IGNITE-9560 Added explicit test security plugin provider passing.
@yzhdanov hello!
Answer: There are two implementations of IgniteSecurity:
Which GridSecurityProcessor should be used is defined through plugin as it was earlier.
Answer: That's not true, regular case is to start processing with the node's context, |
This reverts commit 99ed2a0.
No description provided.