summaryrefslogtreecommitdiff
path: root/meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch')
-rw-r--r--meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch411
1 files changed, 411 insertions, 0 deletions
diff --git a/meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch b/meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch
new file mode 100644
index 0000000000..daf85c3539
--- /dev/null
+++ b/meta-ibs/meta-cp2-5422/recipes-phosphor/webui/webui-vue/0014-security-ldap-settings.patch
@@ -0,0 +1,411 @@
+From 3826216e8f7a6c11291dde78b437f7554819f7ff Mon Sep 17 00:00:00 2001
+From: "Andrey V.Kosteltsev" <AKosteltsev@IBS.RU>
+Date: Tue, 28 Jun 2022 11:56:53 +0300
+Subject: [PATCH] security: ldap settings
+
+---
+ src/assets/styles/bmc/custom/_index.scss | 1 +
+ .../styles/bmc/custom/ibs/_security.scss | 9 +
+ src/views/SecurityAndAccess/Ldap/Ldap.vue | 348 +++++++++---------
+ 3 files changed, 185 insertions(+), 173 deletions(-)
+ create mode 100644 src/assets/styles/bmc/custom/ibs/_security.scss
+
+diff --git a/src/assets/styles/bmc/custom/_index.scss b/src/assets/styles/bmc/custom/_index.scss
+index 2be710cc..16170b72 100644
+--- a/src/assets/styles/bmc/custom/_index.scss
++++ b/src/assets/styles/bmc/custom/_index.scss
+@@ -20,3 +20,4 @@
+ @import "./ibs/firmware";
+ @import "./ibs/inventory";
+ @import "./ibs/power-operations";
++@import "./ibs/security";
+diff --git a/src/assets/styles/bmc/custom/ibs/_security.scss b/src/assets/styles/bmc/custom/ibs/_security.scss
+new file mode 100644
+index 00000000..45473a53
+--- /dev/null
++++ b/src/assets/styles/bmc/custom/ibs/_security.scss
+@@ -0,0 +1,9 @@
++
++//
++// Security and Access:
++//
++.ldap-settings .form-background {
++ padding: $spacer * 2 $spacer * 2 $spacer !important;
++ border-radius: $border-radius;
++ background-color: $surface-secondary !important;
++}
+diff --git a/src/views/SecurityAndAccess/Ldap/Ldap.vue b/src/views/SecurityAndAccess/Ldap/Ldap.vue
+index 1f2108de..b4eba281 100644
+--- a/src/views/SecurityAndAccess/Ldap/Ldap.vue
++++ b/src/views/SecurityAndAccess/Ldap/Ldap.vue
+@@ -20,192 +20,194 @@
+ </b-form-group>
+ </b-col>
+ </b-row>
+- <div class="form-background p-3">
+- <b-form-group
+- class="m-0"
+- :label="$t('pageLdap.ariaLabel.ldapSettings')"
+- label-class="sr-only"
+- :disabled="!form.ldapAuthenticationEnabled || loading"
+- >
+- <b-row>
+- <b-col md="3" lg="4" xl="3">
+- <b-form-group
+- class="mb-4"
+- :label="$t('pageLdap.form.secureLdapUsingSsl')"
+- >
+- <b-form-text id="enable-secure-help-block">
+- {{ $t('pageLdap.form.secureLdapHelper') }}
+- </b-form-text>
+- <b-form-checkbox
+- id="enable-secure-ldap"
+- v-model="form.secureLdapEnabled"
+- aria-describedby="enable-secure-help-block"
+- data-test-id="ldap-checkbox-secureLdapEnabled"
+- :disabled="
+- !caCertificateExpiration || !ldapCertificateExpiration
+- "
+- @change="$v.form.secureLdapEnabled.$touch()"
++ <div class="ldap-settings">
++ <div class="form-background p-3">
++ <b-form-group
++ class="m-0"
++ :label="$t('pageLdap.ariaLabel.ldapSettings')"
++ label-class="sr-only"
++ :disabled="!form.ldapAuthenticationEnabled || loading"
++ >
++ <b-row>
++ <b-col md="3" lg="4" xl="3">
++ <b-form-group
++ class="mb-4"
++ :label="$t('pageLdap.form.secureLdapUsingSsl')"
+ >
+- {{ $t('global.action.enable') }}
+- </b-form-checkbox>
+- </b-form-group>
+- <dl>
+- <dt>{{ $t('pageLdap.form.caCertificateValidUntil') }}</dt>
+- <dd v-if="caCertificateExpiration">
+- {{ caCertificateExpiration | formatDate }}
+- </dd>
+- <dd v-else>--</dd>
+- <dt>{{ $t('pageLdap.form.ldapCertificateValidUntil') }}</dt>
+- <dd v-if="ldapCertificateExpiration">
+- {{ ldapCertificateExpiration | formatDate }}
+- </dd>
+- <dd v-else>--</dd>
+- </dl>
+- <b-link
+- class="d-inline-block mb-4 m-md-0"
+- to="/security-and-access/certificates"
+- >
+- {{ $t('pageLdap.form.manageSslCertificates') }}
+- </b-link>
+- </b-col>
+- <b-col md="9" lg="8" xl="9">
+- <b-row>
+- <b-col>
+- <b-form-group :label="$t('pageLdap.form.serviceType')">
+- <b-form-radio
+- v-model="form.activeDirectoryEnabled"
+- data-test-id="ldap-radio-activeDirectoryEnabled"
+- :value="false"
+- @change="onChangeServiceType"
+- >
+- OpenLDAP
+- </b-form-radio>
+- <b-form-radio
+- v-model="form.activeDirectoryEnabled"
+- data-test-id="ldap-radio-activeDirectoryEnabled"
+- :value="true"
+- @change="onChangeServiceType"
++ <b-form-text id="enable-secure-help-block">
++ {{ $t('pageLdap.form.secureLdapHelper') }}
++ </b-form-text>
++ <b-form-checkbox
++ id="enable-secure-ldap"
++ v-model="form.secureLdapEnabled"
++ aria-describedby="enable-secure-help-block"
++ data-test-id="ldap-checkbox-secureLdapEnabled"
++ :disabled="
++ !caCertificateExpiration || !ldapCertificateExpiration
++ "
++ @change="$v.form.secureLdapEnabled.$touch()"
++ >
++ {{ $t('global.action.enable') }}
++ </b-form-checkbox>
++ </b-form-group>
++ <dl>
++ <dt>{{ $t('pageLdap.form.caCertificateValidUntil') }}</dt>
++ <dd v-if="caCertificateExpiration">
++ {{ caCertificateExpiration | formatDate }}
++ </dd>
++ <dd v-else>--</dd>
++ <dt>{{ $t('pageLdap.form.ldapCertificateValidUntil') }}</dt>
++ <dd v-if="ldapCertificateExpiration">
++ {{ ldapCertificateExpiration | formatDate }}
++ </dd>
++ <dd v-else>--</dd>
++ </dl>
++ <b-link
++ class="d-inline-block mb-4 m-md-0"
++ to="/security-and-access/certificates"
++ >
++ {{ $t('pageLdap.form.manageSslCertificates') }}
++ </b-link>
++ </b-col>
++ <b-col md="9" lg="8" xl="9">
++ <b-row>
++ <b-col>
++ <b-form-group :label="$t('pageLdap.form.serviceType')">
++ <b-form-radio
++ v-model="form.activeDirectoryEnabled"
++ data-test-id="ldap-radio-activeDirectoryEnabled"
++ :value="false"
++ @change="onChangeServiceType"
++ >
++ OpenLDAP
++ </b-form-radio>
++ <b-form-radio
++ v-model="form.activeDirectoryEnabled"
++ data-test-id="ldap-radio-activeDirectoryEnabled"
++ :value="true"
++ @change="onChangeServiceType"
++ >
++ Active Directory
++ </b-form-radio>
++ </b-form-group>
++ </b-col>
++ </b-row>
++ <b-row>
++ <b-col sm="6" xl="4">
++ <b-form-group label-for="server-uri">
++ <template #label>
++ {{ $t('pageLdap.form.serverUri') }}
++ <info-tooltip
++ :title="$t('pageLdap.form.serverUriTooltip')"
++ />
++ </template>
++ <b-input-group :prepend="ldapProtocol">
++ <b-form-input
++ id="server-uri"
++ v-model="form.serverUri"
++ data-test-id="ldap-input-serverUri"
++ :state="getValidationState($v.form.serverUri)"
++ @change="$v.form.serverUri.$touch()"
++ />
++ <b-form-invalid-feedback role="alert">
++ {{ $t('global.form.fieldRequired') }}
++ </b-form-invalid-feedback>
++ </b-input-group>
++ </b-form-group>
++ </b-col>
++ <b-col sm="6" xl="4">
++ <b-form-group
++ :label="$t('pageLdap.form.bindDn')"
++ label-for="bind-dn"
+ >
+- Active Directory
+- </b-form-radio>
+- </b-form-group>
+- </b-col>
+- </b-row>
+- <b-row>
+- <b-col sm="6" xl="4">
+- <b-form-group label-for="server-uri">
+- <template #label>
+- {{ $t('pageLdap.form.serverUri') }}
+- <info-tooltip
+- :title="$t('pageLdap.form.serverUriTooltip')"
+- />
+- </template>
+- <b-input-group :prepend="ldapProtocol">
+ <b-form-input
+- id="server-uri"
+- v-model="form.serverUri"
+- data-test-id="ldap-input-serverUri"
+- :state="getValidationState($v.form.serverUri)"
+- @change="$v.form.serverUri.$touch()"
++ id="bind-dn"
++ v-model="form.bindDn"
++ data-test-id="ldap-input-bindDn"
++ :state="getValidationState($v.form.bindDn)"
++ @change="$v.form.bindDn.$touch()"
+ />
+ <b-form-invalid-feedback role="alert">
+ {{ $t('global.form.fieldRequired') }}
+ </b-form-invalid-feedback>
+- </b-input-group>
+- </b-form-group>
+- </b-col>
+- <b-col sm="6" xl="4">
+- <b-form-group
+- :label="$t('pageLdap.form.bindDn')"
+- label-for="bind-dn"
+- >
+- <b-form-input
+- id="bind-dn"
+- v-model="form.bindDn"
+- data-test-id="ldap-input-bindDn"
+- :state="getValidationState($v.form.bindDn)"
+- @change="$v.form.bindDn.$touch()"
+- />
+- <b-form-invalid-feedback role="alert">
+- {{ $t('global.form.fieldRequired') }}
+- </b-form-invalid-feedback>
+- </b-form-group>
+- </b-col>
+- <b-col sm="6" xl="4">
+- <b-form-group
+- :label="$t('pageLdap.form.bindPassword')"
+- label-for="bind-password"
+- >
+- <input-password-toggle
+- data-test-id="ldap-input-togglePassword"
++ </b-form-group>
++ </b-col>
++ <b-col sm="6" xl="4">
++ <b-form-group
++ :label="$t('pageLdap.form.bindPassword')"
++ label-for="bind-password"
++ >
++ <input-password-toggle
++ data-test-id="ldap-input-togglePassword"
++ >
++ <b-form-input
++ id="bind-password"
++ v-model="form.bindPassword"
++ type="password"
++ :state="getValidationState($v.form.bindPassword)"
++ class="form-control-with-button"
++ @change="$v.form.bindPassword.$touch()"
++ />
++ <b-form-invalid-feedback role="alert">
++ {{ $t('global.form.fieldRequired') }}
++ </b-form-invalid-feedback>
++ </input-password-toggle>
++ </b-form-group>
++ </b-col>
++ <b-col sm="6" xl="4">
++ <b-form-group
++ :label="$t('pageLdap.form.baseDn')"
++ label-for="base-dn"
+ >
+ <b-form-input
+- id="bind-password"
+- v-model="form.bindPassword"
+- type="password"
+- :state="getValidationState($v.form.bindPassword)"
+- class="form-control-with-button"
+- @change="$v.form.bindPassword.$touch()"
++ id="base-dn"
++ v-model="form.baseDn"
++ data-test-id="ldap-input-baseDn"
++ :state="getValidationState($v.form.baseDn)"
++ @change="$v.form.baseDn.$touch()"
+ />
+ <b-form-invalid-feedback role="alert">
+ {{ $t('global.form.fieldRequired') }}
+ </b-form-invalid-feedback>
+- </input-password-toggle>
+- </b-form-group>
+- </b-col>
+- <b-col sm="6" xl="4">
+- <b-form-group
+- :label="$t('pageLdap.form.baseDn')"
+- label-for="base-dn"
+- >
+- <b-form-input
+- id="base-dn"
+- v-model="form.baseDn"
+- data-test-id="ldap-input-baseDn"
+- :state="getValidationState($v.form.baseDn)"
+- @change="$v.form.baseDn.$touch()"
+- />
+- <b-form-invalid-feedback role="alert">
+- {{ $t('global.form.fieldRequired') }}
+- </b-form-invalid-feedback>
+- </b-form-group>
+- </b-col>
+- <b-col sm="6" xl="4">
+- <b-form-group label-for="user-id-attribute">
+- <template #label>
+- {{ $t('pageLdap.form.userIdAttribute') }} -
+- <span class="form-text d-inline">
+- {{ $t('global.form.optional') }}
+- </span>
+- </template>
+- <b-form-input
+- id="user-id-attribute"
+- v-model="form.userIdAttribute"
+- data-test-id="ldap-input-userIdAttribute"
+- @change="$v.form.userIdAttribute.$touch()"
+- />
+- </b-form-group>
+- </b-col>
+- <b-col sm="6" xl="4">
+- <b-form-group label-for="group-id-attribute">
+- <template #label>
+- {{ $t('pageLdap.form.groupIdAttribute') }} -
+- <span class="form-text d-inline">
+- {{ $t('global.form.optional') }}
+- </span>
+- </template>
+- <b-form-input
+- id="group-id-attribute"
+- v-model="form.groupIdAttribute"
+- data-test-id="ldap-input-groupIdAttribute"
+- @change="$v.form.groupIdAttribute.$touch()"
+- />
+- </b-form-group>
+- </b-col>
+- </b-row>
+- </b-col>
+- </b-row>
+- </b-form-group>
++ </b-form-group>
++ </b-col>
++ <b-col sm="6" xl="4">
++ <b-form-group label-for="user-id-attribute">
++ <template #label>
++ {{ $t('pageLdap.form.userIdAttribute') }} -
++ <span class="form-text d-inline">
++ {{ $t('global.form.optional') }}
++ </span>
++ </template>
++ <b-form-input
++ id="user-id-attribute"
++ v-model="form.userIdAttribute"
++ data-test-id="ldap-input-userIdAttribute"
++ @change="$v.form.userIdAttribute.$touch()"
++ />
++ </b-form-group>
++ </b-col>
++ <b-col sm="6" xl="4">
++ <b-form-group label-for="group-id-attribute">
++ <template #label>
++ {{ $t('pageLdap.form.groupIdAttribute') }} -
++ <span class="form-text d-inline">
++ {{ $t('global.form.optional') }}
++ </span>
++ </template>
++ <b-form-input
++ id="group-id-attribute"
++ v-model="form.groupIdAttribute"
++ data-test-id="ldap-input-groupIdAttribute"
++ @change="$v.form.groupIdAttribute.$touch()"
++ />
++ </b-form-group>
++ </b-col>
++ </b-row>
++ </b-col>
++ </b-row>
++ </b-form-group>
++ </div>
+ </div>
+ <b-row class="mt-4 mb-5">
+ <b-col>
+--
+2.35.1
+