User Story #157 (closed)
Opened 18 years ago
Closed 18 years ago
Enums should be system-types.
Reported by: | jamoore | Owned by: | jamoore |
---|---|---|---|
Priority: | minor | Milestone: | 3.0-M3 |
Component: | Security | Keywords: | enums, model, types, iteration2 |
Cc: | cxallan | Story Points: | n.a. |
Sprint: | n.a. | Importance: | n.a. |
Total Remaining Time: | n.a. | Estimated Remaining Time: | n.a. |
Description
#156 will implement System-Types, which are not creatable by regular users. To prevent weird enum mistakes (specifically: typos, mis-capitalization, leading or trailing whitespace, etc.), IUpdate should reject all new Enum instances (similar to the changes done in r704 for #52). Rather, users will have to use ITypes (or IEnum if preferrable) which will have a @RunAs security annotation. IUpdate will then accept the new instance and normal use can continue.
This may also be dependent on some finer aspects of #114 (the Security Roadmap). For example, the umask permissions on enums must be handled sensitively to allow global reads but only root updates.
A suggestion for the exception thrown would be:
Warning: Your enum value only differs by capitalization and/or whitespace. This is a bad idea. Please reconsider, and then talk to your administrator if this is really what you want to do.
Change History (3)
comment:1 Changed 18 years ago by jmoore
- Keywords iteration2 added
comment:2 Changed 18 years ago by jmoore
But now that enums are System-Types they also can't be created through IUpdate. r816 adds ITypes.createEnumeration.
comment:3 Changed 18 years ago by jmoore
- Resolution set to fixed
- Status changed from new to closed
After the changes to #178, this should happen naturally with #156. Should also implement #145 (unique Enums) at the same time.