[Fortify] SSC Token 생성&삭제 스크립트 (윈도우 배치)

@ECHO OFF
REM #######################################################
REM #
REM # Fortify SSC에서 토큰을 생성 또는 삭제한다.
REM # 생성된 토큰은 "$TOKEN_DIR/토큰명"으로 저장된다.
REM #
REM #######################################################
REM CODEPAGE를 UTF-8로 변경
CHCP 65001

SET "FORTIFY_CLIENT=fortifyclient"
SET "SSC_URL=http://10.10.10.31:8083/ssc"
SET "SSC_USER=admin"
SET "SSC_PW=MyPasswd12"
SET "TOKEN_DIR=D:\ssc_tokens"
SET "TMP_FILE1=ssc_token.tmp"

REM #######################################################
REM # main
REM #######################################################
CALL :MAKE_DIR %TOKEN_DIR%
CALL :FUNC_REMOVETOKEN %SSC_USER%
CALL :FUNC_GETTOKEN "AnalysisUploadToken" 90
CALL :FUNC_GETTOKEN "ScanCentralCtrlToken" 90
CALL :READ_TEST "AnalysisUploadToken"
CALL :READ_TEST "ScanCentralCtrlToken"

EXIT /B %ERRORLEVEL%

REM #######################################################
REM # 함수: 발급받은 토큰에 대한 읽기 테스트
REM # ex) CALL :READ_TEST "AnalysisUploadToken"
REM #######################################################
:READ_TEST
SET /P TEST_STR=< %TOKEN_DIR%\%1
ECHO Read Test: %FORTIFY_CLIENT% token -gettoken "%TEST_STR%" -daysToLive 90
EXIT /B /0

REM #######################################################
REM # 함수: 디렉토리를 만든다.
REM # ex) CALL :MAKE_DIR %TOKEN_DIR%
REM #######################################################
:MAKE_DIR
IF NOT EXIST %1 MKDIR %1
EXIT /B /0

REM #######################################################
REM # 함수: 토큰을 삭제한다.
REM # ex) CALL :FUNC_REMOVETOKEN %SSC_USER%
REM #######################################################
:FUNC_REMOVETOKEN
CALL %FORTIFY_CLIENT% -url %SSC_URL% -user %SSC_USER% -password %SSC_PW% invalidatetoken -invalidateForUser %1
EXIT /B /0

REM #######################################################
REM # 함수: 토큰을 얻어 온다.
REM # ex) CALL :FUNC_GETTOKEN "AnalysisUploadToken" 90
REM #######################################################
:FUNC_GETTOKEN
CALL %FORTIFY_CLIENT% -url %SSC_URL% -user %SSC_USER% -password %SSC_PW% token -gettoken %1 -daysToLive %2 | FINDSTR "Authorization Token: " 1> %TMP_FILE1%
FOR /F "DELIMS=" %%X IN (%TMP_FILE1%) DO SET TOKEN_STR=%%X
ECHO %TOKEN_STR%
SET TOKEN_STR=%TOKEN_STR:~21,36%
ECHO %TOKEN_STR%>%TOKEN_DIR%\%1
DEL /F /Q %TMP_FILE1%
EXIT /B /0
위로 스크롤