Ncloud Single Sign-On 개요

Prev Next

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

Ncloud Single Sign-On은 하나의 계정으로 다양한 애플리케이션에 접속할 수 있는 시스템을 구축하는 네이버 클라우드 플랫폼의 서비스입니다. Ncloud Single Sign-On 서비스에서는 Application, Tenant, External IdP, SSO User, 그룹, Permission Set, Assignment, IP ACL 기능에 대한 API를 RESTful 형태로 제공합니다.

Ncloud Single Sign-On 공통 설정

Ncloud Single Sign-On API에서 공통으로 사용하는 요청 형식과 응답 형식을 설명합니다.

요청

공통 요청 형식을 설명합니다.

API URL

요청 API URL은 다음과 같습니다.

https://sso.apigw.gov-ntruss.com/api/v1

요청 헤더

요청 헤더에 대한 설명은 다음과 같습니다.

필드 필수 여부 설명
x-ncp-apigw-timestamp Required 1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간(밀리초)
  • API Gateway 서버와 5분 이상 시간차 발생 시 유효하지 않은 요청으로 간주
x-ncp-iam-access-key Required 네이버 클라우드 플랫폼에서 발급받은 Access Key
x-ncp-apigw-signature-v2 Required 네이버 클라우드 플랫폼에서 발급받은 Access Key에 맵핑되는 Secret Key 및 HMAC 암호화 알고리즘(HmacSHA256)으로 요청 정보를 암호화한 후 Base64로 인코딩한 서명
Content-type Optional 요청 데이터의 형식
  • application/json
  • application/xml
Accept Optional 응답 데이터의 형식
  • application/json

응답

공통 응답 형식을 설명합니다.

응답 데이터 타입

공통 응답 데이터 타입을 설명합니다.

ProcessResult

ProcessResult는 API 처리 결과를 정의합니다. ProcessResult에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
success Boolean Required API 처리 결과
  • true | false
    • true: 성공
    • false: 실패
id String Optional 생성/수정 결과 아이디
  • 생성, 다중 추가/삭제 API에서 사용
message String Optional API 처리 결과 메시지

ProcessResult의 구문과 응답 예시는 다음과 같습니다.

  • 구문
    ProcessResult {
        Boolean success;
        String id;
        String message;
    }
    
  • 예시
    {
        "id": "",
        "success": true
    }
    

ErrorResponse

ErrorResponse는 API 호출 실패 시 실패에 대한 내용을 정의합니다. ErrorResponse에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
errorCode Integer Required Required
message String Required String

ErrorResponse의 구문과 예시는 다음과 같습니다.

  • 구문
    ErrorResponse {
      int errorCode;
      String message;
    }
    
  • 예시
    {
        "errorCode": 9060,
        "message": "그룹 이름이 이미 있습니다."
    }
    

응답 상태 코드

응답 상태 코드에 대한 설명은 다음과 같습니다.

HTTP 상태 코드 코드 메시지 설명
400 400 사용자가 이 그룹에 속해 있지 않습니다. 그룹에 속하지 않은 사용자 입력
400 400 Permission Set이 존재하지 않습니다. Permission Set이 존재하지 않음
400 400 이미 존재하는 Application 이름입니다. 이미 존재하는 Application 이름 입력
400 400 Tenant already exists 이미 Tenant가 존재
400 400 이미 사용중인 Login ID입니다 이미 사용 중인 로그인 아이디 입력
400 500 Policy가 존재하지 않습니다. 존재하지 않는 정책 이름 입력
400 9016 존재하지 않는 Application 입니다. 존재하지 않는 Application 아이디 입력
400 9020 There is a registered identity provider. External IdP가 이미 존재
400 9021 This identify provider doesn't exist. External IdP가 존재하지 않음
400 9023 Organization이 연동된 상태에서는 Identity Provider를 삭제할 수 없습니다. Organization이 연동된 상태에서는 Identity Provider 삭제 불가
400 9024 Invalid metadata format. 메타데이터 형식 오류
400 9025 There is no certificate information for signing in the metadata. 메타데이터에 서명용 인증서 정보가 없음
400 9026 There are two or more certificates for signing in the metadata. 메타데이터에 2개 이상의 서명용 인증서가 존재함
400 9027 There is no SingleSignOnService binding in the metadata. 메타데이터에 프로토콜 바인딩 정보가 없음
400 9028 There is no SingleSignOnService location in the metadata. 메타데이터에 바인딩 프로토콜에 매핑되는 SAML 로그인 URL 정보가 없음
400 9029 There is no entityId in the metadata. 메타데이터에 entityID 정보가 없음
400 9030 There is no IdPSSODescriptor in the metadata. 메타데이터에 IDPSSODescriptor 정보가 없음
400 9031 메타데이터에 SingleSignOnService가 없습니다. 메타데이터에 SingleSignOnService 정보가 없음
400 9032 There is no SingleSignOnService POST binding or Redirect binding in the metadata. 메타데이터에 HTTP-POST 또는 HTTP-Redirect 정보가 없음
400 9033 idpSigninUrl 값이 URL 형식이 아닙니다. idpSigninUrl 값 형식 오류
400 9034 There is no KeyInfo in the metadata. 메타데이터에 KeyInfo 정보가 없음
400 9035 Organization의 마스터 계정이 아닙니다. 마스터 계정이 아닌 계정으로 Organization 연동 요청
400 9036 Organization이 존재하지 않습니다. 마스터 계정에 Organization이 존재하지 않음
400 9046 Invalid certificate format. 메타데이터 서명용 인증서 형식 오류
400 9050 This user doesn't exist. 존재하지 않는 SSO User 아이디 입력
400 9060 그룹 이름이 이미 있습니다. 이미 사용 중인 그룹 이름 입력
400 9061 This group doesn't exist. 존재하지 않는 그룹 아이디 입력
400 9070 Permission Set 이름이 이미 있습니다. 이미 사용 중인 Permission Set 이름 입력
400 9071 적어도 하나의 Policy가 선택되어야 합니다. 정책 아이디가 입력되지 않음
400 9072 존재하지 않는 관리형 정책입니다. 존재하지 않는 관리형 정책(System Managed) 아이디 입력
400 9073 PermissionSet이 존재하지 않습니다. 존재하지 않는 Permission Set 아이디 입력
400 9080 Assignment does not exist. 존재하지 않는 Assignment 아이디 입력
400 9081 Assignment Target이 일치하지 않음 일치하지 않는 Assignment Target 입력
400 9083 Assignment Target이 존재하지 않음 존재하지 않는 Assignment Target 입력
400 9084 An assignment created with the specified account and permission set already exists. 동일한 정보로 생성된 Assignment가 이미 존재
400 9085 The assigned account is invalid. 존재하지 않는 계정 번호 입력
400 9086 A target already exists in the assignment. 이미 추가된 타깃 정보 입력
400 9087 The Assignment name already exists. 이미 사용 중인 Assignment 이름 입력
400 9100 The IP ACL does not exist. 존재하지 않는 IP ACL 아이디 입력
400 9101 IP ACL destination cannot be empty. Assignment 아이디 누락
400 9102 A target already exists in the assignment. 이미 추가한 Assignment 아이디 입력
400 9103 Assignment - remaining IP ACL mapping exists. IP ACL에 Assignment가 추가되어 있어 삭제 불가
400 9104 IP ACL destination does not match. 존재하지 않는 Assignment - IP ACL 매핑 정보 입력
400 9105 Assignment - IP ACL mapping does not exist. 이미 존재하는 Assignment - IP ACL 매핑 정보 입력
400 9106 Invalid access restriction setting for Assignment. Assignment 접근 제한 여부가 false
400 9110 이미 MFA Device가 존재합니다. SSO User에 MFA Device가 이미 존재함
400 9111 잘못된 OTP 입니다. 유효하지 않은 OTP 정보 입력
400 9112 존재하지 않는 MFA Device입니다. SSO User에 MFA Device가 존재하지 않음
400 9113 2차 인증이 미적용 상태입니다. 2차 인증이 적용되지 않음
참고

네이버 클라우드 플랫폼에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Ncloud API 응답 상태 코드를 참조해 주십시오.

Ncloud Single Sign-On API

Ncloud Single Sign-On 서비스에서 제공하는 API에 대한 설명은 다음과 같습니다.

Application

Application 관련 API에 대한 설명은 다음과 같습니다.

API 설명
Application 목록 조회 Application 목록 조회
Application 조회 Application 단건 상세 조회
Application 생성 Application 생성
Application 수정 Application 정보 수정
Application 삭제 Application 삭제
OAuth 2.0 Client Secret 재발급 OAuth 2.0 Client Secret 재발급

Tenant

Tenant 관련 API에 대한 설명은 다음과 같습니다.

API 설명
Tenant 조회 Tenant 조회
Tenant 생성 Tenant 생성
Tenant 수정 Tenant 정보 수정
Tenant 삭제 Tenant 삭제

External IdP

External IdP 관련 API에 대한 설명은 다음과 같습니다.

API 설명
External IdP 조회 External IdP 조회
External IdP 생성 External IdP 생성
External IdP 수정 External IdP 정보 수정
External IdP 삭제 External IdP 삭제
Attribute Mapper 조회 Attribute Mapper 조회
Attribute Mapper 수정 Attribute Mapper 수정
External IdP 메타데이터 파싱 External IdP 메타데이터 파싱
Ncloud Single Sign-On 메타데이터 조회 Ncloud Single Sign-On 메타데이터 조회
Ncloud Single Sign-On URL 데이터 조회 Ncloud Single Sign-On URL 데이터 조회
External IdP 로그인 설정 External IdP 로그인 정보 설정
Organization 연동 설정 Organization 연동

SSO User

SSO User 관련 API에 대한 설명은 다음과 같습니다.

API 설명
SSO User 목록 조회 SSO User 목록 조회
SSO User 조회 SSO User 단건 상세 조회
SSO User 생성 SSO User 단건 생성
SSO User 일괄 생성 1개 이상의 User 일괄 생성
SSO User 수정 SSO User 정보 수정
SSO User 일괄 삭제 1개 이상의 User 일괄 삭제
SSO User 삭제 SSO User 삭제
SSO User 로그인 아이디 체크 SSO User 로그인 아이디 유효성 및 중복 여부 확인
SSO User 접근 규칙 조회 SSO User 접근 규칙 조회
SSO User 접근 규칙 수정 SSO User 접근 규칙 수정
SSO User Profile 조회 SSO User Profile 조회
SSO User 그룹 목록 조회 그룹 목록 조회
SSO User 그룹 조회 그룹 단건 상세 조회
SSO User 그룹 추가 SSO User를 그룹에 추가
SSO User 그룹 삭제 SSO User를 그룹에서 삭제
SSO User 상태 설정 SSO User 활성화 또는 비활성화 설정
SSO User 세션 조회 SSO User 세션 조회
SSO User 세션 만료 SSO User 세션 만료
SSO User Assignment 목록 조회 SSO User가 속한 Assignment 목록 조회
SSO User Assignment 삭제 SSO User를 Assignment에서 삭제
SSO User MFA Device 목록 조회 SSO User가 소유한 MFA Device 조회
SSO User MFA Device 추가 SSO User에 MFA Device 추가
SSO User MFA Device 삭제 SSO User가 소유한 MFA Device 삭제

Group

Group 관련 API에 대한 설명은 다음과 같습니다.

API 설명
그룹 목록 조회 그룹 목록 조회
그룹 조회 그룹 단건 상세 조회
그룹 생성 그룹 생성
그룹 수정 그룹 정보 수정
그룹 목록 삭제 1개 이상의 그룹 일괄 삭제
그룹 삭제 그룹 삭제
그룹 이름 체크 그룹 이름 유효성 및 중복 여부 확인
그룹의 SSO User 목록 조회 그룹에 속한 SSO User 목록 조회
그룹에 SSO User 추가 그룹을 SSO User에 추가
그룹의 SSO User 삭제 그룹을 SSO User에서 삭제
그룹 Assignment 목록 조회 그룹이 속한 Assignment 목록 조회
그룹 Assignment 삭제 그룹을 Assignment에서 삭제

Permission Set

Permission Set 관련 API에 대한 설명은 다음과 같습니다.

API 설명
Permission Set 목록 조회 Permission Set 목록 조회
Permission Set 조회 Permission Set 단건 상세 조회
Permission Set 생성 Permission Set 생성
Permission Set 수정 Permission Set 정보 수정
Permission Set 목록 삭제 1개 이상의 Permission Set 일괄 삭제
Permission Set 삭제 Permission Set 삭제
Permission Set 이름 체크 Permission Set 이름 유효성 및 중복 여부 확인
Permission Set 정책 삭제 Permission Set에 할당된 정책 삭제
관리형 정책 목록 조회 Permission Set에 할당할 수 있는 관리형 정책(System Managed) 목록 조회
사용자 정의 정책 존재 여부 확인 Permission Set 내 사용자 정의 정책(User Created) 존재 여부 확인

Assignment

Assignment 관련 API에 대한 설명은 다음과 같습니다.

API 설명
Assignment 목록 조회 Assignment 목록 조회
Assignment 조회 Assignment 단건 상세 조회
Assignment 생성 Assignment 생성
Assignment 수정 Assignment 정보 수정
Assignment 삭제 Assignment 삭제
Assignment 상태 설정 Assignment 활성화 또는 비활성화 설정
Assignment 타깃 목록 조회 Assignment에 추가된 타깃(SSO User, 그룹) 목록 조회
Assignment 타깃 추가 Assignment에 타깃(SSO User, 그룹) 추가
Assignment 타깃 삭제 Assignment에서 타깃(SSO User, 그룹) 삭제
Assignment IP ACL 목록 조회 Assignment에 추가된 IP ACL 목록 조회
Assignment IP ACL 추가 Assignment에 IP ACL 추가
Assignment IP ACL 삭제 Assignment에 추가된 IP ACL 삭제
Assignment 계정 목록 조회 Organization 추가 계정 목록 조회
사용자 정의 정책 존재 여부 확인 대상 계정 내 사용자 정의 정책(User Created) 존재 여부 확인

IP ACL

IP ACL 관련 API에 대한 설명은 다음과 같습니다.

API 설명
IP ACL 목록 조회 IP ACL 목록 조회
IP ACL 조회 IP ACL 단건 상세 조회
IP ACL 생성 IP ACL 생성
IP ACL 수정 IP ACL 정보 수정
IP ACL 목록 삭제 1개 이상의 IP ACL 일괄 삭제
IP ACL 삭제 IP ACL 삭제
IP ACL 이름 체크 IP ACL 이름 유효성 및 중복 여부 확인
IP ACL의 Asssignment 목록 조회 IP ACL에 추가된 Assignment 목록 조회
IP ACL에 Assignment 추가 IP ACL에 Assignment 추가
IP ACL의 Assignment 삭제 IP ACL에서 Assignment 삭제

Ncloud Single Sign-On 연관 리소스

Ncloud Single Sign-On API에 대한 사용자의 이해를 돕기 위해 다양한 연관 리소스를 제공하고 있습니다.