updateProfileMapping

Prev Next

이 가이드는 API 명세를 기반으로 AI가 자동 생성했습니다.

Classic/VPC 환경에서 이용 가능합니다.

Ncloud 표준 표현을 적용한 API입니다.

Attribute Mapper를 수정합니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
PUT /tenant/saml-idps/{providerId}/profile-mapping

요청 헤더

Ncloud Single Sign-On API에서 공통으로 사용하는 헤더에 대한 정보는 Ncloud Single Sign-On 요청 헤더를 참조해 주십시오.

요청 경로 파라미터

요청 경로 파라미터에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
providerId String (uuid) Required External IdP 아이디
  • <예시> 8192a3b4-8888-4123-9456-789abcdef012

요청 바디

요청 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
firstName Object<ProfileMappingV2> Required 이름 속성 매핑
lastName Object<ProfileMappingV2> Required 성 속성 매핑
email Object<ProfileMappingV2> Required 이메일 속성 매핑
emailVerified Object<ProfileMappingV2> Required 이메일 인증 여부 속성 매핑
employeeNo Object<ProfileMappingV2> Required 사원번호 속성 매핑
phoneNo Object<ProfileMappingV2> Required 전화번호 속성 매핑
phoneNoVerified Object<ProfileMappingV2> Required 전화번호 인증 여부 속성 매핑
phoneCountryCode Object<ProfileMappingV2> Required 전화번호 국가 코드 속성 매핑
departmentName Object<ProfileMappingV2> Required 부서명 속성 매핑

ProfileMappingV2

사용자 Profile 속성 매핑 항목

필드 타입 필수 여부 설명
syncMode String Required 속성 정보 업데이트 정책
  • NONE | IMPORT | FORCE
    • NONE: 업데이트 안 함
    • IMPORT: 최초 로그인 시에만 업데이트
    • FORCE: 로그인할 때마다 업데이트
  • <예시> NONE
idpValue String Required 네이버 클라우드 플랫폼의 Single Sign-On 서비스로 전달할 속성(AttributeName)
  • 길이: ~ 200
  • <예시> email

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request PUT 'https://sso.apigw.ntruss.com/api/v2/tenant/saml-idps/8192a3b4-8888-4123-9456-789abcdef012/profile-mapping' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
  "firstName": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "lastName": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "email": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "emailVerified": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "employeeNo": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "phoneNo": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "phoneNoVerified": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "phoneCountryCode": {
    "syncMode": "NONE",
    "idpValue": "email"
  },
  "departmentName": {
    "syncMode": "NONE",
    "idpValue": "email"
  }
}'

응답

응답 형식을 설명합니다.

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
firstName Object<ProfileMappingResponseV2> - 이름 속성 매핑 정보
lastName Object<ProfileMappingResponseV2> - 성 속성 매핑 정보
email Object<ProfileMappingResponseV2> - 이메일 속성 매핑 정보
emailVerified Object<ProfileMappingResponseV2> - 이메일 인증 여부 속성 매핑 정보
employeeNo Object<ProfileMappingResponseV2> - 사원번호 속성 매핑 정보
phoneNo Object<ProfileMappingResponseV2> - 전화번호 속성 매핑 정보
phoneNoVerified Object<ProfileMappingResponseV2> - 전화번호 인증 여부 속성 매핑 정보
phoneCountryCode Object<ProfileMappingResponseV2> - 전화번호 국가 코드 속성 매핑 정보
departmentName Object<ProfileMappingResponseV2> - 부서명 속성 매핑 정보

ProfileMappingResponseV2

사용자 Profile 속성 매핑 정보

필드 타입 필수 여부 설명
displayName String - 네이버 클라우드 플랫폼 콘솔의 Ncloud Single Sign-On > Tenant 메뉴 내 사용자 Profile 관리 화면에 표시되는 사용자 Profile 이름
  • <예시> example-display
syncMode String - 속성 정보 업데이트 정책
  • NONE | IMPORT | FORCE
    • NONE: 업데이트 안 함
    • IMPORT: 최초 로그인 시에만 업데이트
    • FORCE: 로그인할 때마다 업데이트
  • <예시> NONE
idpValue String - 네이버 클라우드 플랫폼의 Single Sign-On 서비스로 전달할 속성(AttributeName)
  • <예시> ${user:email}

응답 상태 코드

Ncloud Single Sign-On API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Ncloud Single Sign-On 응답 상태 코드를 참조해 주십시오.

이 API에만 해당하는 응답 상태 코드는 다음과 같습니다.

HTTP 상태 코드 코드 메시지 설명
200 - - 요청 처리 성공
404 NotFound One or more of the resources in the request does not exist in the system. 잘못된 URL 요청, 마스터 계정에 Organization이 존재하지 않음, 존재하지 않는 관리형 정책(System Managed) 아이디 입력, SSO User에 MFA Device가 존재하지 않음
404 ResourceNotFound The specified resource could not be found. 생성된 Tenant가 없음, 존재하지 않는 자원 아이디 입력

응답 예시

응답 예시는 다음과 같습니다.

{
  "firstName": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "lastName": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "email": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "emailVerified": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "employeeNo": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "phoneNo": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "phoneNoVerified": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "phoneCountryCode": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  },
  "departmentName": {
    "displayName": "example-display",
    "syncMode": "NONE",
    "idpValue": "${user:email}"
  }
}