125 resource realm rfs check modification
This commit is contained in:
@@ -160,25 +160,7 @@
|
||||
</cfquery>
|
||||
</cffunction>
|
||||
|
||||
<!---
|
||||
-- полезный селект, не выбрасывать
|
||||
<cfquery name="qSvcOperationCfsParam">
|
||||
select sop.svc_operation_cfs_param_id
|
||||
,iop.instance_operation_cfs_param_uid::text as instance_operation_cfs_param_uid /*pgjdbc issue fix*/
|
||||
,iop.param_value
|
||||
,sop.svc_operation_cfs_param
|
||||
,sop.data_type
|
||||
,sop.is_required
|
||||
,sop.maxlength,sop.minlength,sop.regex,sop.unique_scope
|
||||
from instance_operation io
|
||||
join instance e on (io.instance_uid=e.instance_uid)
|
||||
join svc_operation so on (e.service_id=so.svc_id AND io.operation=so.operation)
|
||||
join svc_operation_cfs_param sop on (so.svc_operation_id=sop.svc_operation_id)
|
||||
left outer join instance_operation_cfs_param iop
|
||||
on (sop.svc_operation_cfs_param_id=iop.svc_operation_cfs_param_id AND io.instance_operation_uid=iop.instance_operation_uid)
|
||||
where iop.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value=#arguments.instanceOperationUid# null=#!isValid("guid",arguments.instanceOperationUid)#/>)
|
||||
</cfquery>
|
||||
--->
|
||||
|
||||
|
||||
<cffunction name="submitJob">
|
||||
<cfargument name="instanceOperationUid" type="string" required=true hint="type:guid"/>
|
||||
@@ -423,7 +405,8 @@
|
||||
where io.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value="#arguments.instanceOperationUid#" null=#!isValid("guid",arguments.instanceOperationUid)#/>
|
||||
AND LOWER(iop.param)=LOWER('resourceRealm')
|
||||
</cfquery> --->
|
||||
<cfquery name="local.qParam">
|
||||
|
||||
<!--- <cfquery name="local.qParam">
|
||||
select sop.svc_operation_param
|
||||
from instance_operation io
|
||||
join instance e on (io.instance_uid=e.instance_uid)
|
||||
@@ -431,18 +414,29 @@
|
||||
join svc_operation_param sop on (so.svc_operation_id=sop.svc_operation_id)
|
||||
where io.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value="#arguments.instanceOperationUid#" null=#!isValid("guid",arguments.instanceOperationUid)#/>
|
||||
AND LOWER(sop.svc_operation_param)=LOWER('resourceRealm')
|
||||
</cfquery><!--- Проверка на LOWER: возможная атака, поэтому трактуем расширенно --->
|
||||
</cfquery>
|
||||
|
||||
<cfif local.qParam.recordCount EQ 0>
|
||||
<cfreturn/><!--- параметр операции сервиса не найден, нечего проверять --->
|
||||
</cfif>
|
||||
<!--- *** Особенность: если параметр resourceRealm определен у операции сервиса, он ведет себя как обязательный - его отсутствие у инстанса вызовет ошибку при проверке --->
|
||||
<cfreturn/>
|
||||
</cfif> --->
|
||||
<!--- на всякий случай будем проверять параметр, даже если он не определен у сервиса --->
|
||||
|
||||
<cfquery name="local.qOperation">
|
||||
<!--- *** Особенность: если параметр resourceRealm определен у операции сервиса, он ведет себя как обязательный независимо от флага обязательности - его отсутствие у инстанса вызовет ошибку при проверке --->
|
||||
|
||||
<!--- <cfquery name="local.qOperation">
|
||||
select io.operation
|
||||
from instance_operation io
|
||||
where io.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value="#arguments.instanceOperationUid#" null=#!isValid("guid",arguments.instanceOperationUid)#/>
|
||||
</cfquery> --->
|
||||
<cfquery name="local.qParamRRExists">
|
||||
select count(*) as cnt
|
||||
from instance_operation_param iop
|
||||
where iop.param='resourceRealm' AND
|
||||
iop.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value="#arguments.instanceOperationUid#" null=#!isValid("guid",arguments.instanceOperationUid)#/>
|
||||
</cfquery>
|
||||
<cfif local.qParamRRExists.cnt EQ 0>
|
||||
<cfreturn/>
|
||||
</cfif>
|
||||
|
||||
<cfquery name="local.qContract">
|
||||
select c.contract_id
|
||||
@@ -473,4 +467,24 @@
|
||||
</cfif>
|
||||
</cffunction>
|
||||
|
||||
</cfcomponent>
|
||||
</cfcomponent>
|
||||
|
||||
<!---
|
||||
-- полезный селект, не выбрасывать
|
||||
<cfquery name="qSvcOperationCfsParam">
|
||||
select sop.svc_operation_cfs_param_id
|
||||
,iop.instance_operation_cfs_param_uid::text as instance_operation_cfs_param_uid /*pgjdbc issue fix*/
|
||||
,iop.param_value
|
||||
,sop.svc_operation_cfs_param
|
||||
,sop.data_type
|
||||
,sop.is_required
|
||||
,sop.maxlength,sop.minlength,sop.regex,sop.unique_scope
|
||||
from instance_operation io
|
||||
join instance e on (io.instance_uid=e.instance_uid)
|
||||
join svc_operation so on (e.service_id=so.svc_id AND io.operation=so.operation)
|
||||
join svc_operation_cfs_param sop on (so.svc_operation_id=sop.svc_operation_id)
|
||||
left outer join instance_operation_cfs_param iop
|
||||
on (sop.svc_operation_cfs_param_id=iop.svc_operation_cfs_param_id AND io.instance_operation_uid=iop.instance_operation_uid)
|
||||
where iop.instance_operation_uid=<cfqueryparam cfsqltype="cf_sql_other" value=#arguments.instanceOperationUid# null=#!isValid("guid",arguments.instanceOperationUid)#/>)
|
||||
</cfquery>
|
||||
--->
|
||||
Reference in New Issue
Block a user