Using "CALL TRANSACTION" statements without an authority check is security sensitive. Its access should be restricted to specific users.
This rule raises when a CALL TRANSACTION has no explicit authorization check, i.e. when:
  -  the CALL TRANSACTIONstatement is not followed byWITH AUTHORITY-CHECK.
-  the CALL TRANSACTIONstatement is not following anAUTHORITY-CHECKstatement.
-  the CALL TRANSACTIONstatement is not following a call to theAUTHORITY_CHECK_TCODEfunction.
Ask Yourself Whether
  -  the CALL TRANSACTIONstatement is restricted to the right users.
There is a risk if you answered no to this question.
Recommended Secure Coding Practices
Check current user’s authorization before every CALL TRANSACTION statement. Since ABAP 7.4 this should be done by appending WITH
AUTHORITY-CHECK to CALL TRANSACTION statements. In earlier versions the AUTHORITY-CHECK statement or a call to the
AUTHORITY_CHECK_TCODE function can be used.
Note that since ABAP 7.4 any CALL TRANSACTION statement not followed by WITH AUTHORITY-CHECK or WITHOUT
AUTHORITY-CHECK is obsolete.
Sensitive Code Example
CALL TRANSACTION 'MY_DIALOG'.  " Sensitive as there is no apparent authorization check. It is also obsolete since ABAP 7.4.
Compliant Solution
AUTHORITY-CHECK OBJECT 'S_DIAGID'
                  ID 'ACTVT' FIELD '03'.
IF sy-subrc <> 0.
  " show an error message...
ENDIF.
CALL TRANSACTION 'MY_DIALOG'. " Ok but obsolete since ABAP 7.4.
or
CALL FUNCTION 'AUTHORITY_CHECK_TCODE'
  exporting
    tcode  = up_fdta
  exceptions
    ok     = 0
    others = 4.
IF sy-subrc <> 0.
  " show an error message...
ENDIF.
CALL TRANSACTION up_fdta USING up_bdc mode 'E'. " Ok but obsolete since ABAP 7.4.
or
CALL TRANSACTION 'MY_DIALOG' WITH AUTHORITY-CHECK. " Recommended way since ABAP 7.4.
Exceptions
No issue will be raised when CALL TRANSACTION is followed by WITHOUT AUTHORITY-CHECK as it explicitly says that the
TRANSACTION does not require an authorization check.
See