이 가이드는 API 명세를 기반으로 AI가 자동 생성했습니다.
Classic/VPC 환경에서 이용 가능합니다.
Ncloud 표준 표현을 적용한 API입니다.
Application 정보를 수정합니다. 요청 본문에 포함하지 않은 필드는 값이 삭제되므로, 유지할 값도 함께 전달해야 합니다.
요청
요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.
| 메서드 | URI |
|---|---|
| PUT | /applications/{applicationId} |
요청 헤더
Ncloud Single Sign-On API에서 공통으로 사용하는 헤더에 대한 정보는 Ncloud Single Sign-On 요청 헤더를 참조해 주십시오.
요청 경로 파라미터
요청 경로 파라미터에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
applicationId |
String (uuid) | Required | Application 아이디
|
요청 바디
요청 바디에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
name |
String | Required | Application 이름. 이름 중복은 대소문자를 구분하여 검사합니다(예: App 과 app 은 다른 이름).
|
description |
String | null | Optional | Application 설명
|
applicationUrl |
String (uri) | null | Optional | Application URL
|
applicationType |
String | Optional | Application 유형
|
memberLoginPolicy |
String | Required | 메인 계정 로그인 허용 여부
|
clientAuthMethod |
String | Required | OAuth 클라이언트 인증 방식
|
redirectUris |
List<String (uri)> | Optional | Application 리디렉션 URI 목록
|
postLogoutRedirectUris |
List<String (uri)> | Optional | OIDC RP-Initiated Logout 시 허용할 post_logout_redirect_uri 화이트리스트
|
accessType |
String | Required | OAuth 클라이언트 접근 유형
|
grantTypes |
List<String> | Required | 권한 부여 방식
|
scopes |
List<String> | Optional | Application 접근 가능 정보 범위
|
accessTokenValiditySeconds |
Integer (int64) | null | Optional | Access Token 유효 기간(초)
|
refreshTokenValiditySeconds |
Integer (int64) | null | Optional | Refresh Token 유효 기간(초)
|
consentPage |
Object<ConsentPageV2> | Required | 개인 정보 제공 동의 페이지 정보 |
protocol |
String | Required | 프로토콜
|
ConsentPageV2
개인 정보 제공 동의 페이지 정보
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
applicationName |
Map<String> | Required | 제공받는 자 정보
|
applicationName.<키> |
String | - | 해당 언어의 제공받는 자
|
useLanguages |
List<String> | Required | 사용 언어 목록
|
defaultLanguage |
String | Required | 기본 언어
|
usePurposeDescription |
Map<String> | Required | 이용 목적 정보
|
usePurposeDescription.<키> |
String | - | 해당 언어의 이용 목적
|
usePeriodDescription |
Map<String> | Required | 보유 및 이용 기간 정보
|
usePeriodDescription.<키> |
String | - | 해당 언어의 보유 및 이용 기간
|
dataTransferredAbroad |
Boolean | Required | 개인정보 국외 이전 여부
|
dataTransferCountry |
Map<String> | Optional | 이전되는 국가 정보
|
dataTransferCountry.<키> |
String | - | 해당 언어의 이전되는 국가
|
dataRecipients |
Map<String> | Optional | 이전 받는 자 정보
|
dataRecipients.<키> |
String | - | 해당 언어의 이전 받는 법인 이름
|
dataRecipientsContact |
Map<String> | Optional | 이전 받는 자의 연락처 정보
|
dataRecipientsContact.<키> |
String | - | 해당 언어의 이전 받는 법인의 개인정보 관리자 연락처
|
요청 예시
요청 예시는 다음과 같습니다.
curl --location --request PUT 'https://sso.apigw.ntruss.com/api/v2/applications/6f708192-6666-4f01-9234-56789abcdef0' \
--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 '{
"name": "example-name",
"memberLoginPolicy": "ALLOW",
"clientAuthMethod": "client_secret_basic",
"accessType": "confidential",
"grantTypes": [
"authorization_code"
],
"consentPage": {
"applicationName": {},
"useLanguages": [
"ko"
],
"defaultLanguage": "ko",
"usePurposeDescription": {},
"usePeriodDescription": {},
"dataTransferredAbroad": true
},
"protocol": "OAUTH2"
}'
응답
응답 형식을 설명합니다.
응답 바디
응답 바디에 대한 설명은 다음과 같습니다.
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
applicationId |
String (uuid) | - | Application 아이디
|
name |
String | - | Application 이름
|
description |
String | - | Application 설명
|
applicationUrl |
String (uri) | - | Application 바로 가기 URL
|
applicationType |
String | - | Application 유형
|
memberLoginPolicy |
String | - | 메인 계정 로그인 허용 여부. Tenant 설정이 UNUSED인 경우 Application별 설정 값이 반환됩니다
|
createdDateTime |
String (date-time) | - | Application 생성 일시
|
updatedDateTime |
String (date-time) | - | Application 수정 일시
|
clientId |
String | - | Application Client 아이디
|
clientAuthMethod |
String | - | Application 인증 방식
|
redirectUris |
List<String (uri)> | - | Application 리디렉션 URI 목록
|
postLogoutRedirectUris |
List<String (uri)> | - | OIDC RP-Initiated Logout post_logout_redirect_uri 화이트리스트
|
accessType |
String | - | Application 접근 방식
|
grantTypes |
List<String> | - | 권한 부여 방식
|
scopes |
List<String> | - | Application 접근 가능 정보 범위
|
accessTokenValiditySeconds |
Integer (int64) | - | Access Token 유효 기간(초)
|
refreshTokenValiditySeconds |
Integer (int64) | - | Refresh Token 유효 기간(초)
|
consentPage |
Object<ConsentPageV2> | - | 개인 정보 제공 동의 페이지 정보 |
protocol |
String | - | Application 프로토콜
|
ConsentPageV2
개인 정보 제공 동의 페이지 정보
| 필드 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
applicationName |
Map<String> | - | 제공받는 자 정보
|
applicationName.<키> |
String | - | 해당 언어의 제공받는 자
|
useLanguages |
List<String> | - | 사용 언어 목록
|
defaultLanguage |
String | - | 기본 언어
|
usePurposeDescription |
Map<String> | - | 이용 목적 정보
|
usePurposeDescription.<키> |
String | - | 해당 언어의 이용 목적
|
usePeriodDescription |
Map<String> | - | 보유 및 이용 기간 정보
|
usePeriodDescription.<키> |
String | - | 해당 언어의 보유 및 이용 기간
|
dataTransferredAbroad |
Boolean | - | 개인정보 국외 이전 여부
|
dataTransferCountry |
Map<String> | - | 이전되는 국가 정보
|
dataTransferCountry.<키> |
String | - | 해당 언어의 이전되는 국가
|
dataRecipients |
Map<String> | - | 이전 받는 자 정보
|
dataRecipients.<키> |
String | - | 해당 언어의 이전 받는 법인 이름
|
dataRecipientsContact |
Map<String> | - | 이전 받는 자의 연락처 정보
|
dataRecipientsContact.<키> |
String | - | 해당 언어의 이전 받는 법인의 개인정보 관리자 연락처
|
응답 상태 코드
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가 없음, 존재하지 않는 자원 아이디 입력 |
| 404 | ApplicationNotFound | The specified application could not be found. | 존재하지 않는 Application 아이디 입력 |
| 409 | AlreadyExists | The resource with the name requested already exists. | 이미 사용 중인 이름·Tenant 별칭·로그인 아이디 입력, 이미 생성된 External IdP 또는 이미 등록된 IdP 인증서 |
응답 예시
응답 예시는 다음과 같습니다.
{
"applicationId": "6f708192-6666-4f01-9234-56789abcdef0",
"name": "example-name",
"description": "example description",
"applicationUrl": "https://sso.example.com",
"applicationType": "APP",
"memberLoginPolicy": "ALLOW",
"createdDateTime": "2025-01-02T09:00:00Z",
"updatedDateTime": "2025-01-02T09:00:00Z",
"clientId": "8d9e0f10-8888-4123-9456-789abcdef012",
"clientAuthMethod": "client_secret_basic",
"redirectUris": [
"https://example.com/callback"
],
"postLogoutRedirectUris": [
"https://example.com/logout"
],
"accessType": "public",
"grantTypes": [
"authorization_code"
],
"scopes": [
"openid"
],
"accessTokenValiditySeconds": 43200,
"refreshTokenValiditySeconds": 2592000,
"consentPage": {
"applicationName": {
"ko": "Ncloud Single Sign-On"
},
"useLanguages": [
"ko"
],
"defaultLanguage": "ko",
"usePurposeDescription": {
"ko": "서비스 제공 및 계정 관리"
},
"usePeriodDescription": {
"ko": "회원 탈퇴 시까지"
},
"dataTransferredAbroad": true,
"dataTransferCountry": {
"ko": "대한민국"
},
"dataRecipients": {
"ko": "네이버클라우드 주식회사"
},
"dataRecipientsContact": {
"ko": "privacy@example.com"
}
},
"protocol": "OAUTH2"
}