4 files added and 12 files updated
This commit is contained in:
parent
4da8b84d63
commit
3f1f07b632
18
bundles.yml
18
bundles.yml
|
@ -1,12 +1,12 @@
|
||||||
schemaVersion: "1.0"
|
schemaVersion: "1.0"
|
||||||
bundles:
|
bundles:
|
||||||
- "nevisadmin-plugin-oauth:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-authcloud:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-nevisidm:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-mobile-auth:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-fido2:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-nevisdp:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-nevisauth:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-nevisproxy:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-nevisdetect:8.2405.2.0"
|
|
||||||
- "nevisadmin-plugin-base-generation:8.2405.2.0"
|
- "nevisadmin-plugin-base-generation:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-oauth:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-nevisdetect:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-nevisauth:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-nevisdp:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-nevisproxy:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-mobile-auth:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-nevisidm:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-fido2:8.2405.2.0"
|
||||||
|
- "nevisadmin-plugin-authcloud:8.2405.2.0"
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -13,22 +13,17 @@ try {
|
||||||
|
|
||||||
response.setSessionAttribute('operationsExtId', notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserExtId'])
|
response.setSessionAttribute('operationsExtId', notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserExtId'])
|
||||||
|
|
||||||
if (! notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserProfileExtId'].contains('${var.operations-unitExtId}') )
|
// we take the first one, if there is no profile in the operations unit
|
||||||
|
def unitAndProfileExtidPar = notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserProfileExtId']
|
||||||
|
.split(',').find{pairstr -> pairstr.split("\\\\")[1] == "${var.operations-unitExtId}" }
|
||||||
|
?: notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserProfileExtId'].split(',')[0]
|
||||||
|
|
||||||
|
if (! unitAndProfileExtidPar.contains('${var.operations-unitExtId}') )
|
||||||
{
|
{
|
||||||
LOG.warn("[OPACCESS] User ${notes['saml.assertion.subject']} with opaccount ${notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserExtId']} has not operations profile")
|
LOG.info("[OPACCESS] User ${notes['saml.assertion.subject']} with opaccount ${notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserExtId']} has no operations profile, we use the first one")
|
||||||
response.setResult('error');
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
notes['saml.attributes.http://schemas.agov.ch/ws/2023/05/identity/claims/operationsUserProfileExtId'].split(',').eachWithIndex { pairstr, i ->
|
|
||||||
pair = pairstr.split("\\\\")
|
|
||||||
if (pair[1] == "${var.operations-unitExtId}") {
|
|
||||||
response.setSessionAttribute('operationsProfileExtId', pair[0])
|
|
||||||
LOG.warn(pair[0] + " userprofileExtid has the wanted unitExtId " + pair[1])
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
response.setSessionAttribute('operationsProfileExtId', unitAndProfileExtidPar.split("\\\\")[0])
|
||||||
response.setResult('ok');
|
response.setResult('ok');
|
||||||
|
|
||||||
} catch(Exception ex) {
|
} catch(Exception ex) {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
# -- base admin roles (AGOV specific role definition)
|
# -- base admin roles (AGOV specific role definition)
|
||||||
# ------------------------------------------------------
|
# ------------------------------------------------------
|
||||||
|
|
||||||
## user administrator (reduced rightd; CLIENT, UNIT)
|
## user administrator (reduced rightd; CLIENT, UNIT and only URL ticket creation allowed)
|
||||||
nevisIdm.UserAdmin=ApplicationView,AuthorizationSearch,AuthorizationApplView,AuthorizationClientView,AuthorizationUnitView,AuthorizationView,ClientSearch,ClientView,CredentialChangeState,CredentialCreate,CredentialSearch,CredentialView,EntityAttributeAccessOverride,ProfileCreate,ProfileModify,ProfileSearch,ProfileView,PropertyAllowedValueSearch,PropertyAllowedValueView,PropertySearch,PropertyValueCreate,PropertyValueDelete,PropertyValueModify,PropertyValueSearch,PropertyValueView,PropertyView,RoleSearch,RoleView,UnitSearch,UnitView,UserCreate,UserModify,UserSearch,UserView,PropertyAttributeAccessOverride,CollectionView,GenerateReport,SearchResultsExport,EnterpriseAuthorizationSearch,EnterpriseAuthorizationView,EnterpriseRoleMemberSearch,EnterpriseRoleView,AuthorizationEnterpriseRoleSearch,AuthorizationEnterpriseRoleView
|
nevisIdm.UserAdmin=ApplicationView,AuthorizationSearch,AuthorizationApplView,AuthorizationClientView,AuthorizationUnitView,AuthorizationView,ClientSearch,ClientView,CredentialChangeState.14,CredentialCreate.14,CredentialSearch,CredentialView,EntityAttributeAccessOverride,ProfileCreate,ProfileModify,ProfileSearch,ProfileView,PropertyAllowedValueSearch,PropertyAllowedValueView,PropertySearch,PropertyValueCreate,PropertyValueDelete,PropertyValueModify,PropertyValueSearch,PropertyValueView,PropertyView,RoleSearch,RoleView,UnitSearch,UnitView,UserCreate,UserModify,UserSearch,UserView,PropertyAttributeAccessOverride,CollectionView,GenerateReport,SearchResultsExport,EnterpriseAuthorizationSearch,EnterpriseAuthorizationView,EnterpriseRoleMemberSearch,EnterpriseRoleView,AuthorizationEnterpriseRoleSearch,AuthorizationEnterpriseRoleView
|
||||||
|
|
||||||
## user and unit administrator (same as above + unit mgmt; CLIENT, UNIT)
|
## user and unit administrator (same as above + unit mgmt; CLIENT, UNIT)
|
||||||
nevisIdm.UserAndUnitAdmin=ApplicationView,AuthorizationSearch,AuthorizationApplView,AuthorizationClientView,AuthorizationUnitView,AuthorizationView,ClientSearch,ClientView,CredentialChangeState,CredentialCreate,CredentialSearch,CredentialView,EntityAttributeAccessOverride,ProfileCreate,ProfileModify,ProfileSearch,ProfileView,PropertyAllowedValueSearch,PropertyAllowedValueView,PropertySearch,PropertyValueCreate,PropertyValueDelete,PropertyValueModify,PropertyValueSearch,PropertyValueView,PropertyView,RoleSearch,RoleView,UnitCreate,UnitDelete,UnitModify,UnitSearch,UnitView,UserCreate,UserModify,UserSearch,UserView,PropertyAttributeAccessOverride,CollectionView,GenerateReport,SearchResultsExport,EnterpriseAuthorizationSearch,EnterpriseAuthorizationView,EnterpriseRoleMemberSearch,EnterpriseRoleView,AuthorizationEnterpriseRoleSearch,AuthorizationEnterpriseRoleView
|
nevisIdm.UserAndUnitAdmin=ApplicationView,AuthorizationSearch,AuthorizationApplView,AuthorizationClientView,AuthorizationUnitView,AuthorizationView,ClientSearch,ClientView,CredentialChangeState,CredentialCreate,CredentialSearch,CredentialView,EntityAttributeAccessOverride,ProfileCreate,ProfileModify,ProfileSearch,ProfileView,PropertyAllowedValueSearch,PropertyAllowedValueView,PropertySearch,PropertyValueCreate,PropertyValueDelete,PropertyValueModify,PropertyValueSearch,PropertyValueView,PropertyView,RoleSearch,RoleView,UnitCreate,UnitDelete,UnitModify,UnitSearch,UnitView,UserCreate,UserModify,UserSearch,UserView,PropertyAttributeAccessOverride,CollectionView,GenerateReport,SearchResultsExport,EnterpriseAuthorizationSearch,EnterpriseAuthorizationView,EnterpriseRoleMemberSearch,EnterpriseRoleView,AuthorizationEnterpriseRoleSearch,AuthorizationEnterpriseRoleView
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,9 @@
|
||||||
|
schemaVersion: "1.0"
|
||||||
|
pattern:
|
||||||
|
id: "f86835f0958316e9fd505e0a"
|
||||||
|
className: "ch.nevis.admin.v4.plugin.nevisproxy.patterns.GenericIngressSettings"
|
||||||
|
name: "ExternalIngressSettings"
|
||||||
|
label: "Operations"
|
||||||
|
properties:
|
||||||
|
annotations: "var://externalingresssettings-annotations"
|
||||||
|
ingressClassName: "var://externalingresssettings-class-name"
|
|
@ -0,0 +1,9 @@
|
||||||
|
schemaVersion: "1.0"
|
||||||
|
pattern:
|
||||||
|
id: "627ae22025e4d3bd7654239e"
|
||||||
|
className: "ch.nevis.admin.v4.plugin.nevisproxy.patterns.GenericIngressSettings"
|
||||||
|
name: "InternalIngressSettings"
|
||||||
|
label: "Admin"
|
||||||
|
properties:
|
||||||
|
annotations: "var://internalingresssettings-annotations"
|
||||||
|
ingressClassName: "var://internalingresssettings-class-name"
|
|
@ -0,0 +1,16 @@
|
||||||
|
schemaVersion: "1.0"
|
||||||
|
pattern:
|
||||||
|
id: "3ccfece140b4bb464b3b7f51"
|
||||||
|
className: "ch.nevis.admin.v4.plugin.nevisauth.patterns2.AuthorizationPolicy"
|
||||||
|
name: "NevisIdmRoleRequiredPolicy"
|
||||||
|
properties:
|
||||||
|
requiredRoles:
|
||||||
|
- "nevisIdm.Helpdesk"
|
||||||
|
- "nevisIdm.TemplateAdmin"
|
||||||
|
- "nevisIdm.UserAndUnitAdmin"
|
||||||
|
- "nevisIdm.AppAdmin"
|
||||||
|
- "nevisIdm.UserAdmin"
|
||||||
|
- "nevisIdm.AppOwner"
|
||||||
|
- "nevisIdm.EnterpriseRoleAdmin"
|
||||||
|
- "nevisIdm.ClientRoot"
|
||||||
|
forbiddenRoles: "nevisIdm.Root"
|
|
@ -0,0 +1,7 @@
|
||||||
|
schemaVersion: "1.0"
|
||||||
|
pattern:
|
||||||
|
id: "9c6ad44795320a7adec1ccde"
|
||||||
|
className: "ch.nevis.admin.v4.plugin.nevisproxy.patterns.SecurityResponseHeaders"
|
||||||
|
name: "Security Response Headers"
|
||||||
|
properties:
|
||||||
|
responseHeaders: "var://security-response-headers-response-headers"
|
|
@ -10,6 +10,8 @@ pattern:
|
||||||
addresses: "var://virtual_host_idmadmin-frontend-addresses"
|
addresses: "var://virtual_host_idmadmin-frontend-addresses"
|
||||||
defaultEntry: "/nevisidm/admin/"
|
defaultEntry: "/nevisidm/admin/"
|
||||||
resources: "res://1200a58c76686d520c21edb0#resources"
|
resources: "res://1200a58c76686d520c21edb0#resources"
|
||||||
|
securityHeaders: "custom"
|
||||||
addons:
|
addons:
|
||||||
- "pattern://58ece0328f5bf4d78e1a82d2"
|
- "pattern://58ece0328f5bf4d78e1a82d2"
|
||||||
- "pattern://076ce5c5440843a23150b386"
|
- "pattern://076ce5c5440843a23150b386"
|
||||||
|
- "pattern://9c6ad44795320a7adec1ccde"
|
||||||
|
|
|
@ -11,7 +11,9 @@ pattern:
|
||||||
defaultEntry: "/nevisidm/admin/"
|
defaultEntry: "/nevisidm/admin/"
|
||||||
resources: "res://39ecde9a0d101628fed3e3be#resources"
|
resources: "res://39ecde9a0d101628fed3e3be#resources"
|
||||||
requireClientCert: "disabled"
|
requireClientCert: "disabled"
|
||||||
|
securityHeaders: "custom"
|
||||||
addons:
|
addons:
|
||||||
- "pattern://58ece0328f5bf4d78e1a82d2"
|
- "pattern://58ece0328f5bf4d78e1a82d2"
|
||||||
- "pattern://076ce5c5440843a23150b386"
|
- "pattern://076ce5c5440843a23150b386"
|
||||||
- "pattern://d9c194064d834ad41843ff4e"
|
- "pattern://d9c194064d834ad41843ff4e"
|
||||||
|
- "pattern://9c6ad44795320a7adec1ccde"
|
||||||
|
|
|
@ -15,3 +15,5 @@ pattern:
|
||||||
- "pattern://271d024334021208b71ac80a"
|
- "pattern://271d024334021208b71ac80a"
|
||||||
selfAdmin: "disabled"
|
selfAdmin: "disabled"
|
||||||
apiAccess: "disabled"
|
apiAccess: "disabled"
|
||||||
|
addons:
|
||||||
|
- "pattern://3ccfece140b4bb464b3b7f51"
|
||||||
|
|
|
@ -10,3 +10,4 @@ pattern:
|
||||||
- "pattern://1200a58c76686d520c21edb0"
|
- "pattern://1200a58c76686d520c21edb0"
|
||||||
addons:
|
addons:
|
||||||
- "pattern://31ae68f6cc8ade7258adce8d"
|
- "pattern://31ae68f6cc8ade7258adce8d"
|
||||||
|
- "pattern://627ae22025e4d3bd7654239e"
|
||||||
|
|
|
@ -10,3 +10,4 @@ pattern:
|
||||||
- "pattern://39ecde9a0d101628fed3e3be"
|
- "pattern://39ecde9a0d101628fed3e3be"
|
||||||
addons:
|
addons:
|
||||||
- "pattern://31ae68f6cc8ade7258adce8d"
|
- "pattern://31ae68f6cc8ade7258adce8d"
|
||||||
|
- "pattern://f86835f0958316e9fd505e0a"
|
||||||
|
|
|
@ -50,13 +50,6 @@ variables:
|
||||||
secretPreserving: true
|
secretPreserving: true
|
||||||
value: null
|
value: null
|
||||||
requireOverloading: true
|
requireOverloading: true
|
||||||
cert-login-root-ca:
|
|
||||||
className: "ch.nevis.admin.v4.plugin.base.generation.property.TextProperty"
|
|
||||||
parameters:
|
|
||||||
required: false
|
|
||||||
syntax: "YAML"
|
|
||||||
value: null
|
|
||||||
requireOverloading: true
|
|
||||||
cert-login-template-parameters:
|
cert-login-template-parameters:
|
||||||
className: "ch.nevis.admin.v4.plugin.base.generation.property.TextProperty"
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.TextProperty"
|
||||||
parameters:
|
parameters:
|
||||||
|
@ -64,6 +57,21 @@ variables:
|
||||||
syntax: "YAML"
|
syntax: "YAML"
|
||||||
value: "caFile.pem"
|
value: "caFile.pem"
|
||||||
requireOverloading: true
|
requireOverloading: true
|
||||||
|
externalingresssettings-annotations:
|
||||||
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.KeyValueProperty"
|
||||||
|
parameters:
|
||||||
|
separators:
|
||||||
|
- ":"
|
||||||
|
switchedSeparators: []
|
||||||
|
value: null
|
||||||
|
requireOverloading: true
|
||||||
|
externalingresssettings-class-name:
|
||||||
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.SimpleTextProperty"
|
||||||
|
parameters:
|
||||||
|
minRequired: 0
|
||||||
|
maxAllowed: 1
|
||||||
|
value: "nginx"
|
||||||
|
requireOverloading: true
|
||||||
greenmail-backend-addresses:
|
greenmail-backend-addresses:
|
||||||
className: "ch.nevis.admin.v4.plugin.base.generation.property.URLProperty"
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.URLProperty"
|
||||||
parameters:
|
parameters:
|
||||||
|
@ -307,6 +315,21 @@ variables:
|
||||||
maxAllowed: 1
|
maxAllowed: 1
|
||||||
value: "nginx"
|
value: "nginx"
|
||||||
requireOverloading: true
|
requireOverloading: true
|
||||||
|
internalingresssettings-annotations:
|
||||||
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.KeyValueProperty"
|
||||||
|
parameters:
|
||||||
|
separators:
|
||||||
|
- ":"
|
||||||
|
switchedSeparators: []
|
||||||
|
value: null
|
||||||
|
requireOverloading: true
|
||||||
|
internalingresssettings-class-name:
|
||||||
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.SimpleTextProperty"
|
||||||
|
parameters:
|
||||||
|
minRequired: 0
|
||||||
|
maxAllowed: 1
|
||||||
|
value: "nginx"
|
||||||
|
requireOverloading: true
|
||||||
nevisauth-log-settings-log-levels:
|
nevisauth-log-settings-log-levels:
|
||||||
className: "ch.nevis.admin.v4.plugin.base.generation.property.KeyValueProperty"
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.KeyValueProperty"
|
||||||
parameters:
|
parameters:
|
||||||
|
@ -724,6 +747,16 @@ variables:
|
||||||
format: "^[^\\s,]*$"
|
format: "^[^\\s,]*$"
|
||||||
value: "https://op.agov-d.azure.adnovum.net/SAML2/ACS/"
|
value: "https://op.agov-d.azure.adnovum.net/SAML2/ACS/"
|
||||||
requireOverloading: true
|
requireOverloading: true
|
||||||
|
security-response-headers-response-headers:
|
||||||
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.KeyValueProperty"
|
||||||
|
parameters:
|
||||||
|
minRequired: 1
|
||||||
|
separators:
|
||||||
|
- ":"
|
||||||
|
switchedSeparators: []
|
||||||
|
value:
|
||||||
|
- X-Content-Type-Options: "nosniff"
|
||||||
|
requireOverloading: true
|
||||||
technical_trust_store-additional-trusted-certificates:
|
technical_trust_store-additional-trusted-certificates:
|
||||||
className: "ch.nevis.admin.v4.plugin.base.generation.property.AttachmentProperty"
|
className: "ch.nevis.admin.v4.plugin.base.generation.property.AttachmentProperty"
|
||||||
parameters:
|
parameters:
|
||||||
|
|
Loading…
Reference in New Issue