[pve-devel] [PATCH manager 2/6] ui: dc: add AuthEditOpenId panel
Dominik Csapak
d.csapak at proxmox.com
Thu Jul 1 14:25:02 CEST 2021
for adding and editing openid realms, does not support tfa
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
www/manager6/Makefile | 1 +
www/manager6/Utils.js | 6 +++
www/manager6/dc/AuthEditOpenId.js | 77 +++++++++++++++++++++++++++++++
3 files changed, 84 insertions(+)
create mode 100644 www/manager6/dc/AuthEditOpenId.js
diff --git a/www/manager6/Makefile b/www/manager6/Makefile
index 3e3fb6eb..ecd6657e 100644
--- a/www/manager6/Makefile
+++ b/www/manager6/Makefile
@@ -120,6 +120,7 @@ JSSRC= \
dc/AuthEditBase.js \
dc/AuthEditAD.js \
dc/AuthEditLDAP.js \
+ dc/AuthEditOpenId.js \
dc/AuthView.js \
dc/Backup.js \
dc/Cluster.js \
diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js
index d728c4be..e642e283 100644
--- a/www/manager6/Utils.js
+++ b/www/manager6/Utils.js
@@ -742,6 +742,12 @@ Ext.define('PVE.Utils', {
add: true,
tfa: true,
},
+ openid: {
+ name: gettext('OpenID Server'),
+ ipanel: 'pveAuthOpenIDPanel',
+ add: true,
+ tfa: false,
+ },
pam: {
name: 'Linux PAM',
ipanel: 'pveAuthBasePanel',
diff --git a/www/manager6/dc/AuthEditOpenId.js b/www/manager6/dc/AuthEditOpenId.js
new file mode 100644
index 00000000..f82122e2
--- /dev/null
+++ b/www/manager6/dc/AuthEditOpenId.js
@@ -0,0 +1,77 @@
+Ext.define('PVE.panel.OpenIDInputPanel', {
+ extend: 'PVE.panel.AuthBase',
+ xtype: 'pveAuthOpenIDPanel',
+
+ initComponent: function() {
+ let me = this;
+
+ if (me.type !== 'openid') {
+ throw 'invalid type';
+ }
+
+ me.columnT = [
+ {
+ xtype: 'textfield',
+ name: 'issuer-url',
+ fieldLabel: gettext('Issuer URL'),
+ allowBlank: false,
+ },
+ ];
+
+ me.column1 = [
+ {
+ xtype: 'proxmoxtextfield',
+ fieldLabel: gettext('Client ID'),
+ name: 'client-id',
+ allowBlank: false,
+ },
+ {
+ xtype: 'proxmoxtextfield',
+ fieldLabel: gettext('Client Key'),
+ deleteEmpty: !me.isCreate,
+ name: 'client-key',
+ },
+ ];
+
+ me.column2 = [
+ {
+ xtype: 'proxmoxcheckbox',
+ fieldLabel: gettext('Autocreate Users'),
+ name: 'autocreate',
+ value: 0,
+ deleteEmpty: !me.isCreate,
+ },
+ ];
+
+ if (me.isCreate) {
+ me.column2.push({
+ xtype: 'proxmoxKVComboBox',
+ name: 'username-claim',
+ value: '__default__',
+ deleteEmpty: !me.isCreate,
+ fieldLabel: gettext('Username Claim'),
+ comboItems: [
+ ['__default__', Proxmox.Utils.defaultText],
+ ['subject', 'subject'],
+ ['username', 'username'],
+ ['email', 'email'],
+ ],
+ });
+ }
+
+ me.callParent();
+ },
+ onGetValues: function(values) {
+ let me = this;
+
+ if (!values.verify) {
+ if (!me.isCreate) {
+ Proxmox.Utils.assemble_field_data(values, { 'delete': 'verify' });
+ }
+ delete values.verify;
+ }
+
+ return me.callParent([values]);
+ },
+});
+
--
2.30.2
More information about the pve-devel
mailing list