summaryrefslogtreecommitdiff
path: root/src/store/modules/SecurityAndAccess/PoliciesStore.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/store/modules/SecurityAndAccess/PoliciesStore.js')
-rw-r--r--src/store/modules/SecurityAndAccess/PoliciesStore.js63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/store/modules/SecurityAndAccess/PoliciesStore.js b/src/store/modules/SecurityAndAccess/PoliciesStore.js
index 1e195527..64bd3369 100644
--- a/src/store/modules/SecurityAndAccess/PoliciesStore.js
+++ b/src/store/modules/SecurityAndAccess/PoliciesStore.js
@@ -6,16 +6,22 @@ const PoliciesStore = {
state: {
sshProtocolEnabled: false,
ipmiProtocolEnabled: false,
+ rtadEnabled: 'Disabled',
+ vtpmEnabled: 'Disabled',
},
getters: {
sshProtocolEnabled: (state) => state.sshProtocolEnabled,
ipmiProtocolEnabled: (state) => state.ipmiProtocolEnabled,
+ rtadEnabled: (state) => state.rtadEnabled,
+ vtpmEnabled: (state) => state.vtpmEnabled,
},
mutations: {
setSshProtocolEnabled: (state, sshProtocolEnabled) =>
(state.sshProtocolEnabled = sshProtocolEnabled),
setIpmiProtocolEnabled: (state, ipmiProtocolEnabled) =>
(state.ipmiProtocolEnabled = ipmiProtocolEnabled),
+ setRtadEnabled: (state, rtadEnabled) => (state.rtadEnabled = rtadEnabled),
+ setVtpmEnabled: (state, vtpmEnabled) => (state.vtpmEnabled = vtpmEnabled),
},
actions: {
async getNetworkProtocolStatus({ commit }) {
@@ -29,6 +35,15 @@ const PoliciesStore = {
})
.catch((error) => console.log(error));
},
+ async getBiosStatus({ commit }) {
+ return await api
+ .get('/redfish/v1/Systems/system/Bios')
+ .then((response) => {
+ commit('setRtadEnabled', response.data.Attributes.pvm_rtad);
+ commit('setVtpmEnabled', response.data.Attributes.pvm_vtpm);
+ })
+ .catch((error) => console.log(error));
+ },
async saveIpmiProtocolState({ commit }, protocolEnabled) {
commit('setIpmiProtocolEnabled', protocolEnabled);
const ipmi = {
@@ -81,6 +96,54 @@ const PoliciesStore = {
}
});
},
+ async saveRtadState({ commit }, updatedRtad) {
+ commit('setRtadEnabled', updatedRtad);
+ return await api
+ .patch('/redfish/v1/Systems/system/Bios/Settings', {
+ Attributes: {
+ pvm_rtad: updatedRtad,
+ },
+ })
+ .then(() => {
+ if (updatedRtad === 'Enabled') {
+ return i18n.t('pagePolicies.toast.successRtadEnabled');
+ } else {
+ return i18n.t('pagePolicies.toast.successRtadDisabled');
+ }
+ })
+ .catch((error) => {
+ console.log(error);
+ if (updatedRtad === 'Enabled') {
+ throw new Error(i18n.t('pagePolicies.toast.errorRtadEnabled'));
+ } else {
+ throw new Error(i18n.t('pagePolicies.toast.errorRtadDisabled'));
+ }
+ });
+ },
+ async saveVtpmState({ commit }, updatedVtpm) {
+ commit('setVtpmEnabled', updatedVtpm);
+ return await api
+ .patch('/redfish/v1/Systems/system/Bios/Settings', {
+ Attributes: {
+ pvm_vtpm: updatedVtpm,
+ },
+ })
+ .then(() => {
+ if (updatedVtpm === 'Enabled') {
+ return i18n.t('pagePolicies.toast.successVtpmEnabled');
+ } else {
+ return i18n.t('pagePolicies.toast.successVtpmDisabled');
+ }
+ })
+ .catch((error) => {
+ console.log(error);
+ if (updatedVtpm === 'Enabled') {
+ throw new Error(i18n.t('pagePolicies.toast.errorVtpmEnabled'));
+ } else {
+ throw new Error(i18n.t('pagePolicies.toast.errorVtpmDisabled'));
+ }
+ });
+ },
},
};