RANGER-5402 Fix the out-of-bounds issue caused by overly long kms keys #734
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What changes were proposed in this pull request?
When creating a kms key, if the key name exceeds 240+ characters, it will display "Key createed successfully". However, in reality, the key creation failed and the corresponding key could not be found in the database either. The reason for this problem is that when creating the ranger_keystore table in the scripts/db/sqlserver/kms_core_db_sqlserver.sql file, the length of the kms_alias field was restricted. Therefore, judgment logic needs to be added in the code. If the length exceeds the limit, an exception will be thrown.

How was this patch tested?
To test this patch, create keys of different lengths in the ranger ui test. When the number of key characters exceeds 255, an error will be reported and creation will not be allowed. When the number of key characters is less than 255, it is created normally.


The repaired example is shown in the figure:
The key length exceeds the limit:
The key length is within the limit: