10장. API에서 인증


API에서 다음 인증 방법을 사용할 수 있습니다.

자동화 컨트롤러는 조직이 즉시 제어할 수 있는 시각적 대시보드를 사용하여 자동화를 중앙 집중화하고 제어하는 동시에 보다 심층적인 수준에서 다른 툴과 통합할 수 있는 REST API를 제공하도록 설계되었습니다. 자동화 컨트롤러는 여러 인증 방법을 지원하여 기존 툴 및 프로세스에 자동화 컨트롤러를 쉽게 포함할 수 있습니다. 이렇게 하면 적절한 사용자가 자신의 리소스에 액세스할 수 있습니다.

10.1. 세션 인증 사용

자동화 컨트롤러의 API 또는 UI에 직접 로그인할 때 세션 인증을 사용하여 인벤토리, 프로젝트, 작업 템플릿과 같은 리소스를 수동으로 생성하고 브라우저에서 작업을 시작할 수 있습니다. 이 방법을 사용하면 해당 HTTP 요청뿐만 아니라 장기간 로그인 상태를 유지할 수 있습니다. 예를 들어 Chrome 또는 Mozilla Firefox와 같은 브라우저에서 API 또는 UI를 검색하는 경우입니다. 사용자가 로그인하면 세션 쿠키가 생성되면 자동화 컨트롤러 내에서 다른 페이지로 이동할 때 로그인 상태를 유지할 수 있습니다. 다음 이미지는 세션의 클라이언트와 서버 간에 발생하는 통신을 나타냅니다.

자동화 컨트롤러에 로그인할 때 발생하는 활동을 확인하려면 curl 툴을 사용합니다.

프로세스

  1. GET 을 사용하여 /api/login/ 엔드포인트로 이동하여 csrftoken 쿠키를 가져옵니다.

    curl -k -c - https://<controller-host>/api/login/
    
    localhost       FALSE   /       FALSE   0   csrftoken
    AswSFn5p1qQvaX4KoRZN6A5yer0Pq0VG2cXMTzZnzuhaY0L4tiidYqwf5PXZckuj
    Copy to Clipboard Toggle word wrap
  2. 사용자 이름, 암호, X-CSRFToken=<token-value > :을 사용하여 /api/login/ 끝점에 POST

    curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' \
    --referer https://<awx-host>/api/login/ \
    -H 'X-CSRFToken: K580zVVm0rWX8pmNylz5ygTPamgUJxifrdJY0UDtMMoOis5Q1UOxRmV9918BUBIN' \
    --data 'username=root&password=reverse' \
    --cookie 'csrftoken=K580zVVm0rWX8pmNylz5ygTPamgUJxifrdJY0UDtMMoOis5Q1UOxRmV9918BUBIN' \
    https://<awx-host>/api/login/ -k -D - -o /dev/null
    Copy to Clipboard Toggle word wrap

이 모든 작업은 브라우저에서 UI 또는 API에 로그인할 때 자동화 컨트롤러에서 수행하며 브라우저에서 인증할 때만 사용해야 합니다. 자동화 컨트롤러와 프로그래밍 방식의 통합은 OAuth2 토큰 인증을 참조하십시오.

다음은 일반적인 응답의 예입니다.

Server: nginx
Date: <current date>
Content-Type: text/html; charset=utf-8
Content-Length: 0
Connection: keep-alive
Location: /accounts/profile/
X-API-Session-Cookie-Name: awx_sessionid
Expires: <date>
Cache-Control: max-age=0, no-cache, no-store, must-revalidate, private
Vary: Cookie, Accept-Language, Origin
Session-Timeout: 1800
Content-Language: en
X-API-Total-Time: 0.377s
X-API-Request-Id: 700826696425433fb0c8807cd40c00a0
Access-Control-Expose-Headers: X-API-Request-Id
Set-Cookie: userLoggedIn=true; Path=/
Set-Cookie: current_user=<user cookie data>; Path=/
Set-Cookie: csrftoken=<csrftoken>; Path=/; SameSite=Lax
Set-Cookie: awx_sessionid=<your session id>; expires=<date>; HttpOnly; Max-Age=1800; Path=/; SameSite=Lax
Strict-Transport-Security: max-age=15768000
Copy to Clipboard Toggle word wrap

사용자가 이 방법으로 성공적으로 인증되면 서버는 세션 쿠키의 구성된 이름을 나타내는 X-API-Session-Cookie-Name 이라는 헤더로 응답합니다. 기본값은 awx_session_id 이며 나중에 Set-Cookie 헤더에서 볼 수 있습니다.

참고

SESSION_COOKIE_AGE 매개변수에 지정하여 세션 만료 시간을 변경할 수 있습니다. 자세한 내용은 세션 제한 작업을 참조하십시오.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat