01
요청에는 대상과 행동이 함께 있어야 합니다.
“자료를 처리해 주세요”라는 요청만으로는 어떤 효과를 허용해야 하는지 알기 어렵습니다. 자료를 읽는 것인지, 다른 곳으로 보내는 것인지, 원본을 수정하는 것인지에 따라 필요한 권한과 확인할 조건이 달라집니다. 누가 어떤 대상에 무엇을 요청하는지 먼저 분명해야 합니다.
RAIFFA는 요청, 권한, 승인 범위, 실행 조건을 구분합니다. 자료를 받을 수 있는 권한과 바꿀 수 있는 권한을 같은 것으로 다루지 않습니다. 외부 시스템과 연결하는 경우에는 해당 시스템에서 가능한 행동과 그 권한을 별도로 확인해야 합니다.
02
허용은 정해진 범위에만 적용됩니다.
어떤 요청을 허용했다는 기록에는 그 요청의 대상과 조건이 붙습니다. 일부 파일의 전달을 허용했다고 같은 폴더의 모든 파일 전달이 허용되는 것은 아닙니다. 허용 범위를 읽을 수 있어야 이후 작업이 그 범위를 따랐는지 확인할 수 있습니다.
사람의 업무 판단, 조직의 승인, 시스템에서 작업할 수 있는 권한도 분리해야 합니다. 조직에서 승인한 일이더라도 필요한 시스템 권한이나 입력이 없으면 실제 작업은 완료되지 않을 수 있습니다. RAIFFA가 다루는 통제는 이런 상태 차이를 보존하는 데서 출발합니다.
03
수행 사실과 결과는 따로 확인합니다.
작업을 시작했다는 기록과 의도한 결과를 얻었다는 기록은 다릅니다. 전달 요청을 보냈는지, 대상 시스템이 받아들였는지, 필요한 파일이 실제로 도착했는지에 따라 확인 수준이 달라집니다. 결과가 불분명하면 그 상태를 완료로 바꾸어 적지 않습니다.
RAIFFA의 작업 통제는 허용된 행동, 실제 수행된 행동, 확인된 결과를 구분합니다. 특정 외부 시스템에서 이를 어떻게 통제하고 확인하는지는 실제 구현과 배포 구성에 달려 있습니다. 다른 플랫폼의 분석 없이도 권한과 작업 범위를 다루는 목적에서 독립적으로 검토할 수 있습니다.