dingshuangxi888 opened a new pull request, #7725:
URL: https://github.com/apache/rocketmq/pull/7725

   <!-- Please make sure the target branch is right. In most case, the target 
branch should be `develop`. -->
   
   ### Which Issue(s) This PR Fixes
   
   <!-- Please ensure that the related issue has already been created, and 
[link this pull request to that issue using 
keywords](<https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword>)
 to ensure automatic closure. -->
   
   Fixes #7560
   
   ### Brief Description
   
   1. Standardized IP whitelist control: The enhanced ACL design provides a 
more standardized IP whitelist control mechanism. It effectively restricts user 
requests to specific IP sources and blocks access from untrusted IP addresses.
   2. Scalable ACL configuration and authentication mechanism: The improved 
design allows for easy extension and implementation of ACL-related logic. Users 
can conveniently customize and expand ACL configurations to meet their specific 
requirements. Additionally, the ACL design includes access control for 
control-related interfaces, enhancing the overall security of the system.
   3. Effective separation of user and permission management: The optimized 
design successfully achieves a clear separation between user authentication and 
permission management, establishing explicit responsibilities and boundaries 
for each. This enhancement significantly improves the security of the system. 
Additionally, User passwords should be stored in a non-plaintext format., 
effectively reducing the risk of password leaks.
   
   ### How Did You Test This Change?
   
   broker.conf
   ```
   authenticationEnabled = true
   authenticationProvider = 
org.apache.rocketmq.auth.authentication.provider.DefaultAuthenticationProvider
   initAuthenticationUser = {"username":"rocketmq","password":"12345678"}
   innerClientAuthenticationCredentials = 
{"accessKey":"rocketmq","secretKey":"12345678"}
   authenticationMetadataProvider = 
org.apache.rocketmq.auth.authentication.provider.LocalAuthenticationMetadataProvider
   authorizationEnabled = true
   authorizationProvider = 
org.apache.rocketmq.auth.authorization.provider.DefaultAuthorizationProvider
   authorizationMetadataProvider = 
org.apache.rocketmq.auth.authorization.provider.LocalAuthorizationMetadataProvider
   ```
   
   proxy.conf
   ```
   {
     "authenticationEnabled": true,
     "authenticationProvider": 
"org.apache.rocketmq.auth.authentication.provider.DefaultAuthenticationProvider",
     "authenticationMetadataProvider": 
"org.apache.rocketmq.proxy.auth.ProxyAuthenticationMetadataProvider",
     "innerClientAuthenticationCredentials": "{\"accessKey\":\"rocketmq\", 
\"secretKey\":\"12345678\"}",
     "authorizationEnabled": true,
     "authorizationProvider": 
"org.apache.rocketmq.auth.authorization.provider.DefaultAuthorizationProvider",
     "authorizationMetadataProvider": 
"org.apache.rocketmq.proxy.auth.ProxyAuthorizationMetadataProvider"
   }
   ```
   
   migration from acl v1
   ```
   migrateAuthFromV1Enabled = true
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@rocketmq.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to