본문 바로가기
WIKI 기술 지식 베이스

Patch Users API

원문 보기 위키 갱신

출처: 문서

본문

Patch Users API

1.0에서 도입 {: .label .label-purple }

내부 사용자를 교체하지 않고 업데이트해요. 사용자 이름을 지정하면 한 사용자의 개별 속성을 업데이트하고, 사용자 이름을 생략하면 한 번의 호출로 여러 사용자를 생성, 업데이트, 삭제할 수 있어요.

엔드포인트

PATCH /_plugins/_security/api/internalusers
PATCH /_plugins/_security/api/internalusers/{username}

경로 파라미터

사용할 수 있는 경로 파라미터는 다음 표와 같아요.

파라미터 데이터 타입 필수 설명
username String 아니요 업데이트할 사용자의 이름이에요. 생략하면 요청 하나로 여러 사용자를 수정할 수 있어요.

요청 본문 필드

요청 본문은 필수예요. JSON 객체의 배열이에요. 각 객체에는 다음 필드가 들어 있어요.

필드 데이터 타입 설명 필수
op String 수행할 작업이에요. 유효한 값은 add, remove, replace, move, copy, test예요. 예
path String 수정할 경로예요. 사용자 이름을 지정하면 경로는 해당 사용자 기준의 상대 경로가 돼요(예: /backend_roles). 사용자 이름을 생략하면 경로가 사용자를 가리켜요(예: /spock). 예
value Object 새 값이에요. add, replace, test 작업에서는 필수예요. 아니요

요청 예제

다음 요청은 kirk 사용자의 백엔드 역할을 업데이트해요:

PATCH _plugins/_security/api/internalusers/kirk
[
  {
    "op": "replace",
    "path": "/backend_roles",
    "value": [
      "commander"
    ]
  }
]

{% include copy-curl.html security=true %}

다음 요청은 spock과 worf 사용자를 추가하고 riker 사용자를 제거해요:

PATCH _plugins/_security/api/internalusers
[
  {
    "op": "add",
    "path": "/spock",
    "value": {
      "password": "Str0ngPassw0rd_7741!",
      "backend_roles": [
        "science"
      ]
    }
  },
  {
    "op": "add",
    "path": "/worf",
    "value": {
      "password": "Str0ngPassw0rd_3390!",
      "backend_roles": [
        "security"
      ]
    }
  },
  {
    "op": "remove",
    "path": "/riker"
  }
]

{% include copy-curl.html security=true %}

응답 예제

사용자 한 명을 업데이트하면 응답에 사용자 이름이 담겨요:

{
  "status": "OK",
  "message": "'kirk' updated."
}

여러 사용자를 업데이트하면 응답은 다음과 같아요:

{
  "status": "OK",
  "message": "Resource updated."
}

더 알아보기 (Learn more)