summaryrefslogtreecommitdiff
path: root/src/views/SecurityAndAccess
AgeCommit message (Collapse)AuthorFilesLines
2025-08-13Remove NoAccess references from privilege rolesaravinths11-15/+0
The NoAccess privilege is not supported according to the Redfish schema, yet residual UI privilege role definitions still referenced it. This commit cleans up remaining code fragments that displayed NoAccess-related descriptions in the web UI. Resolves discrepancies between schema and UI by aligning privilege role displays with Redfish standards, reducing user confusion. Change-Id: I1f21630019407e9b2bf223d2336bc110a6bfafab Signed-off-by: Aravinth Sri Krishna Raja Raghavan <aravinths@ami.com>
2025-03-26style: add Sass configuration for Vue 3suryav97242-6/+0
Configure sass in the vue.config.js file and remove the import of the scss file from each page. The styles are handled by the css loaderOptions in the config file. Every component and page has the appropriate style applied. The appearance adjusts to the openBmc webui in Vue 2. Change-Id: I3773c063646185b80b7bd61d05aa80a993cbd121 Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-12-26Timeout duration error in account policy settingsuryav97241-1/+1
On user management page fix the error while save the account policy settings with the automatic after timeout. while changing the timeout duration the value is in string but the payload should be integer. Add the parseInt in the timeout duration value while save the account policy settings with the automatic after timeout. Change-Id: I69ab13af3fd34e4128d3f01b71b0ffd092fe9a06 Signed-off-by: suryav9724 <suryav@ami.com>
2024-10-04i18n fix after vue3 merge to masterSurya Venkatesan1-4/+4
Fix i18n issue in the Power restore policy, Inventory LEDs, and User management page. After merge the vue3 code to master the i18n Power restore policy, Inventory LEDs, and User management page got conflicts and old code retrieved in master. So unable to render the Power restore policy, Inventory LEDs and unable to disable the user in user management page change the i18n.t method to i18n.global.t for the vue3 support. Change-Id: I46f3f56632308ceaee321dd896e16e922d964b60 Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-10-03Invalid feedback if condition changeSurya Venkatesan2-4/+4
For required, invalid format, minlength, maxlength, date, pattern validation if condition change in the few components Change-Id: Id8eebc140301e48dde833a604ca92426ebf77c9c Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-10-03LDAP and server power operation page fixSurya Venkatesan1-3/+3
In LDAP loading declare outside the form, form validation condition change, server power operation page validation added and i18n method changed in the event log store. Change-Id: I903b4dec7da1a5a2cc8441c65693c57201405d70 Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-10-03Add user validation in user management pageSurya Venkatesan1-10/+14
helpers and sameAs validations are not working in vue3 so the helpers and sameAS are imported from vuelidate/lib/validators. Invalid validation field like required are not show so the if condition for invalid feedback alert field changed. Add user and delete user are working in the user management page. Change-Id: I0133e02357048ffbc6206382b2a0a5c162e2384d Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-10-03Vuelidate, I18n, and filter are upgraded to vue3Surya V12-178/+213
While navigating to the pages i18n, vuelidate, and filters errors occurred. i18n, and vuelidate code changes in each page adapted to vue3. Filter global function for date and time format implemented in the main.js file and those files which as called the filter functions. Change-Id: If1a2ee22d47750faef1c35ef2c263299067d9a20 Signed-off-by: Surya Venkatesan <suryav@ami.com>
2024-10-03Upgrade vue3 and all dependenciesEd Tanous10-13/+58
Start the process of porting everything to Vue 3. I have most things working. npm run-scripts build works, npm install works. prettier passes. Styles load, login works, webui loads. This was primarily done using the linked documents below. It makes the following design decisions: 1. Vue is put in compat 2 mode, which allows most of the components to work as-is. 2. Bootstrap v4 is used along with bootstrap-vue to keep our components working. 3. Minor changes are made to load the latest versions of vue-router, vuex, and vue-i18n. I suspect this patchset is good enough to start with, and we can clean up the broken things one patchset at a time. The things that need to happen are: 1. Get remaining features working again. This primiarily is vue-i18n for mixins, and non vue components. This likely needs to be done by not pulling in i18n into the non vue components, then using the .Vue files to do the internationalization in the component context, NOT in the mixin context. Alternatively, we could drop MixIns alltogether. 2. Get custom styles working again. Previously, we used some path hackery in vue.config.js to optionally pre-load styles. This stops working now that we're required to @import our modules. Likely we need some rearangement of the paths such that custom styles are a complete replacement (possibly importing the original) rather than additive with overrides. That's a guess, but I don't really see anyone else doing customization the way we've defined it here. 3. Bootstrap 5 no longer requires ANY custom vue modules, as it has dropped the jquery dependency. We won't be able to pull in bootstrap 5 all at once, so pull in bootstrap 5 under an alias, like "bootstrap5" that we can optionally import 5 or 4. 4. One at a time, start porting components over to Vue3 syntax and bootstrap 5. This will be the bulk of the manual work and review. The only thing I think left is getting unit tests passing, which I commented out the pre-commit hook to make this PR. Tested: Code builds. Needs better testing. [1] https://router.vuejs.org/guide/migration/ [2] https://vue-i18n.intlify.dev/guide/migration/vue3 [3] https://vuelidate-next.netlify.app/migration_guide.html#package-name-and-imports Change-Id: I5bb3187b9efbf2e4ff63e57994bc528756e2a981 Signed-off-by: Ed Tanous <ed@tanous.net>
2024-08-14Add a confirmation modal for disabling usersFarah Rasheed1-10/+33
Add a confirmation modal in the user management table when users are disabled. Change-Id: I06bb1c96abdc7fa895aec2fe2025e9039577ae1d Signed-off-by: Farah Rasheed <Farah.Rasheed1@dell.com>
2024-07-12Fix word-break for group name in edit role groupFarah Rasheed1-1/+1
Apply 'word-break: break-all' style for the group name field in the Edit role group modal to ensure long group names wrap properly within their container. The change improves the readability and layout consistency of the group name display in the modal even if it contains long text. Fixes #111 Change-Id: Ia424fadc1630bbf28726a7064ff9b14764877d2b Signed-off-by: Farah Rasheed <Farah.Rasheed1@dell.com>
2024-06-25Replace fixed paths with response from APISean Zhang1-9/+15
Currently, the Redfish request used fixed URIs, modify the code to use the BMC and System paths got from response of API calls. For CertificateStore, since it was using the URL for constant variable assignment, changed the constant CERTIFICATE_TYPES to method call. Change-Id: I330b7272083e3e6993aae5705aae170b8e9a4659 Signed-off-by: Sean Zhang <xiazhang@nvidia.com>
2024-06-07Disabled the privilege dropdown for root useraravinths11-0/+1
By allowing root user privilege changes to Operator or Read Only, after login with root user seeing privilege access issues in some pages and not possible to change administrator again. Allowed root user to change password alone and disabled the privilege changes Change-Id: I2be93060fb30e1f08dc2ea20a30fb998dc83ee0f Signed-off-by: aravinths1 <aravinths@ami.com>
2024-05-08Removed Challenge password option from Generate CSR panelVedangi Mittal1-20/+2
- Unable to generate Certificate Signing Request (CSR) when filling optional field-Challenge password values on Certificate page. - Hence, removed the Challenge password option from the Generate CSR panel. Change-Id: I862f024de84f34738be5e5cd22701b63c2309152 Signed-off-by: Vedangi Mittal <vedangimittal3004@gmail.com>
2024-04-18Focus default action in modal windowsPaul Fertser4-0/+7
Users of common WIMP GUIs (as opposed to interfaces primarily meant for touch input) expect dialog boxes to have keyboard focus set on the button for default action so that it can be executed by a single key press. Usually that is chosen to proceed with the operation but in cases where that leads to data loss the UI designers often pre-select Cancel as a precaution. This patch adds suitable property to all invocations of msgBoxConfirm() method of `this.$bvModal` BootstrapVue object. For regular actions the confirmation button is selected and can be activated by Enter or Space bar. For actions deemed dangerous Cancel is focused instead so it takes two key presses (first being Tab to shift the focus) to prooceed. This also improves accessibility following the Web Content Accessibility Guidelines (WCAG) published by W3C. Tested: manually verified that modals are consistently shown with the specified button focused, Enter and Space bar key presses produce the same effect as left pointer button click: when Cancel is focused it just closes the window, when OK is focused it sends the corresponding request to the Redfish endpoint. Change-Id: I66bfd02e48e08dc18994b11bbdd5d6b3ea27047f Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2024-03-05Reformat files with new linterEd Tanous7-26/+25
All changes should be whitespace, and were done using npm run-script lint. Change-Id: I943c6b435c5c872841af5affc1e89910468b5ca6 Signed-off-by: Ed Tanous <ed@tanous.net>
2024-03-04Fix useless class in SessionsEd Tanous1-1/+1
New versions of the vue linter flag that this class has no effect. It isn't clear what the intent was, so remove it so the linter can pass. Tested: Upgraded linter now passes. Change-Id: Icccc4d57714be313c958023c74e9d8508afed4ce Signed-off-by: Ed Tanous <ed@tanous.net>
2023-06-15OpenLDAP and Active Directory is taken from translation fileNikhil Ashoka1-2/+2
- OpenLDAP and Active Directory were hardcoded in the file, Hence, now, it is taken from the translation file in this commit. Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Change-Id: Iebf557fbb20842878cce34c7f2969031af1765dd
2023-05-10Add session timeout in Policies pagekirankumarb071-0/+50
This patchset will provide the option to configure the session timeout for the WebUI. The functionality will provide the below timeout options to configure. 1. 30 minutes 2. 1 hour 3. 2 hours 4. 4 hours 5. 8 hours 6. 1 Day For the API, redfish is having the following resource. URL - /redfish/v1/SessionService Method - GET (to get the configured timeout) - PATCH (to configure the timeout value) Property - { "SessionTimeout": 1800 } When the user idles up until the configured session timeout, after that any API call from this session will get 401 status and the web UI will gets logged out. Change-Id: Ic7c6b4817e560ca4ceb983dc5e2af51f3ae08cf5 Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>
2023-03-28Fix User Management Page issues title and Policykirankumarb071-1/+3
This patchset will fix the following issues in the user management page 1. "lockoutThreshold" and "lockoutDuration" values are not shown in the account policy model when we navigate to any other page and come back to the user management page account policy model. Fix - The "lockoutThreshold" and "lockoutDuration" values are monitored and updated in the model window by using the watch. When navigated from another page, the watch is not updating the values, so the default values are displayed. Initialized the value with an empty object, so the watch will get triggered and update the fields with proper values. 2. The User Management Page title is not translated properly. The router names are used to map each page's language objects. For the user management page, the router name and the object value in the locale file are different. Due to that, the title did not get translated properly. Fix - Changed the user management page title to match the locale file's language object key value. Change-Id: I1582c9d528633465c65f5d78e31d3dc740252cb0 Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>
2023-03-27Sessions page Client ID is not displayedkirankumarb071-3/+13
Redfish added support for the Context parameter on the session resource This parameter has the same function that the "OemSession.ClientId" field served. And BMC Web moves all the existing ClientId code to produce Context. This patch set contains the code changes for adding a new column "Context" in the sessions page and modifying the existing column "Client ID" to "Session ID" and mapping the redfish property "Id" to it. The property "Context" is optional in redfish. If the Context holds any value it will display in WebUI as it is. If it is not having any value, "-" will be displayed in the WebUI. Change-Id: Ibc99416fc37a91029bf430ccc7b387832eef729c Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>
2023-03-13Fixed calling method "handleSubmit" two timesChandra Harkude1-1/+1
Problem : "handleSubmit" called on clicking Ok button implicitly as well by the form (<b-form id="generate-csr-form" novalidate @submit.prevent= "handleSubmit"), due to this, redfish API POST /redfish/v1/CertificateService/Actions/Certificate Servi ce.GenerateCSR sent two times when "Generate CSR" button clicked,ideally redfish API needs to be sent only once This leads to failure of the second redfish API. Steps to Reproduce Issue: 1. Go to 'Login->Security and access->Certificate->Generate CSR fill the form 2. Click on 'Generate CSR.' 3. Scroll down to 'More Tools->Web Developer Tools->Network tab' 4. Two POST /redfish/v1/CertificateService/Actions/CertificateService. GenerateCSR are sent Solution: The issue can be fixed either by deleting the Ok button click event listener or deleting the (@submit.prevent="handleSubmit"). I have used later one, which is small change as well does not alter the code much Tested : I did manual testing and observed that two POST requests are no longer sent Reference : https://softauthor.com/vuejs-prevent-form-submission/ Signed-off-by: Chandra Harkude <chandramohan.harkude@gmail.com> Change-Id: I8736e597d2fe70aef438779667475426837d2c67
2023-02-13Added popup window with error messageDamian Celico1-6/+7
Showing error message if uploaded certificate is incorrect Signed-off-by: Damian Celico <damianx.celico@intel.com> Change-Id: Ifa034e663329e4841ff5c68f6171ce71739a6d13
2023-02-13Add translation for a few missing UI elementskirankumarb071-5/+24
On the sensor page and user management page, some of the strings are not getting translated to the selected language. I have added this patch to add the multiple language strings to the missing strings. Change-Id: I03ca43bb81708f85e913e39c6dfa24ab7f3de876 Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>
2023-02-08Enhanced User Management page error messageSivaprabu Ganesan2-3/+17
Description 1: When WebUI creates the user with an already existing username the error message will display the exact failure reason. Tested: Step 1: Login to webUI and navigate to user management page Step 2: Create new user with username "testUser1" Step 3: Create another user with same username "testUser1" Step 4: WEB UI will through the error message as "Username 'testuser1' already exists." Description 2: User can able to disable and change the root user via WebUI Now restricted to disable the root user and changing the root user privilege. Tested: Step 1: Login to Web UI with root user Step 2: Navigate to User management page Step 3: Try to modify the root user's details Step 4: WebUI won't allow to disable the user, username change and privilege change Step 5: Login Web UI with non-root user Step 6: Web UI won't allow to modify or delete the root user's details Change-Id: I0e38215b51fb058984664ec38ae9613e18043ed7 Signed-off-by: Sivaprabu Ganesan <sivaprabug@ami.com>
2023-01-25Added encodeURIComponent to CSR certificateSivaprabu Ganesan1-2/+5
Description 1: Downloading the CSR certificate data value without encodeURIComponent function is not supported in Firefox So added the encodeURIComponent function to download the csr certificate Tested: Step 1: Launch WEBUI on firefox Step 2: Navigate to Security and access, Certificates Page Step 3: Generate and Download CSR certificate (KeyPair Algorithm - EC and Key curve id - secp521r1) Step 4: After CSR Downloaded, copy the downloaded file to any of the linux machine Step 5: Try to create an https/ldap certificate via openssl on linux machine Result: Able to download the CSR certificate successfully and able to create https/ldap certificate via openssl Description 2: While downloading the generated csr via Web UI, the csr file is getting downloaded as ".txt" file but it should download as ".csr" file So changed the extension to ".csr" Tested: Step 1: Login to Web UI. Step 2: Navigate to Security and access, Certificates Page Step 3: Click Generate CSR Button and fill the required details Step 4: Click Generate CSR from the popup modal. Step 5: After CSR Generated an prompt will open and it will show download and copy option. In that select download, the csr certificate will download with ".csr" extension Change-Id: Ice176006a95afd53845d7696ce0eac88f02b1096 Signed-off-by: Sivaprabu Ganesan <sivaprabug@ami.com>
2022-09-26Check certificate file extensionDamian Celico1-7/+23
Checking the file extension type of uploaded certificates to redfish. Sends the file only if the file type is correct, otherwise shows error. Signed-off-by: Damian Celico <damianx.celico@intel.com> Change-Id: Idfc790bc8967333aed66c5c128334af4231dbea3
2022-02-04Set table busy state on loadKenneth Fullbright4-10/+23
- Add busy prop to tables Signed-off-by: Kenneth Fullbright <kennyneedsmilky@gmail.com> Change-Id: I4416f12967c9a0ad6c8bb782c7d8de5c17fdd195
2022-02-04Security Panel add additional featuresNikhil Ashoka1-57/+141
Added RTAD under Network interfaces Added VirtualTPM under Network services Removed the sub-headings in Policies page Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Change-Id: I6290362cecdfe7f8cd7bfde20fcaca88b6bc2c09
2021-09-03Resolve bug for pagination not being updatedSukanya Pandey1-1/+1
- Bug: When a user filters a page, the pagination does not change. - Solution: When a user filters a page, the pagination will be updated based on the filtered results. - This patchset will also add pagination in dumps page. Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: I189d27b5489c42ac85f25c0a1a4cdb7cf7eae5c2
2021-08-19Hide "BMC shell (via SSH)" switch button on Intel environmentMichalX Szopinski1-1/+7
Add environment variable to control visibility of "BMC shell" switch button on "Policies" tab. Signed-off-by: MichalX Szopinski <michalx.szopinski@intel.com> Change-Id: I824e942cabbbb9da61343ebdbea8c93f1fe2b246
2021-08-10IA update: Update access and control sectionSandeepa Singh18-0/+3697
This is the fifth commit of the information architecture changes and has the following changes: - The icon for access and control has been updated - Access and control section has been updated to security and access section - Security settings page has been updated to policies page and moved to security and access section - Client sessions page has been updated to sessions page - Local user management page has been updated to user management page - SSL certificates page has been updated to certificates page Signed-off-by: Sandeepa Singh <sandeepa.singh@ibm.com> Change-Id: Ie93cee9002742ecf7d33615636f4f159f4395fc4