Oracle Cloud Infrastructure
TMA-OCI-1.8
Ensure user API keys rotate within 90 days
설명
API keys are used by administrators, developers, services and scripts for accessing OCI APIs directly or via SDKs/OCI CLI to search, create, update or delete OCI resources. The API key is an RSA key pair. It is important to secure and rotate an API key every 90 days or less as it provides the same level of access that a user it is associated with has. No ACTIVE user may hold a API key created more than 90 days ago (users of the Default identity domain, as listed by oci iam user list). Read-only OCI CLI calls; credentials and home region come from the CLI's normal configuration (~/.oci/config, OCI_CLI_PROFILE, OCI_CLI_AUTH). The tenancy OCID is taken from OCI_TENANCY or the first tenancy= line of the config file. A missing CLI or credential fails the check.
점검 방법
감사 방식: 셸 명령
t=${OCI_TENANCY:-$(sed -n 's/^[[:space:]]*tenancy[[:space:]]*=[[:space:]]*//p' "${OCI_CLI_CONFIG_FILE:-$HOME/.oci/config}" 2>/dev/null | head -n 1 | tr -d '\r[:space:]')}
[ -n "$t" ] || exit 1
bad=0
cutoff=$(date -u -d '90 days ago' +%Y-%m-%dT%H:%M:%S 2>/dev/null || date -u -v-90d +%Y-%m-%dT%H:%M:%S 2>/dev/null) || exit 1
us=$(oci iam user list --compartment-id "$t" --all --query 'data[?"lifecycle-state"==`"ACTIVE"`].id' --raw-output 2>/dev/null) || exit 1
for u in $(printf '%s\n' "$us" | grep -o 'ocid1\.user\.[^"]*'); do
ks=$(oci iam user api-key list --user-id "$u" --query 'data[?"lifecycle-state"==`"ACTIVE"`]."time-created"' --raw-output 2>/dev/null) || exit 1
old=$(printf '%s\n' "$ks" | grep -o '"[0-9][^"]*"' | tr -d '"' | awk -v c="$cutoff" '$1 < c')
[ -z "$old" ] || { echo "API key older than 90 days: $u"; bad=1; }
done
[ "$bad" -eq 0 ] && echo compliant- 예상 출력
compliant
조치 방법
조치 방식: 가이드 또는 인프라 패치
Upload a new API key for each listed user (oci iam user api-key upload), move clients to it, then oci iam user api-key delete --user-id <ocid> --fingerprint <old>.
속성
- 운영 체제
- 모두
- 태그
- ociiam
- 참고 자료
- CIS Oracle Cloud Infrastructure Foundations Benchmark v3.1.1 - 1.8 Ensure user API keys rotate within 90 days
이 호스트 점검하기
감사 권한이 있는 시스템에서 실행하세요. 스캔은 읽기 전용입니다.
tmaegis scan --target oci