라이브 데모(샘플 데이터)

Speedle Cloud는 개발자를 위한 접근 제어 서비스입니다. 서비스를 생성하고, SPDL로 접근 규칙을 작성하며, 인가 API를 호출하여 사용자가 리소스에 대해 작업을 수행할 수 있는지 확인할 수 있습니다.

Speedle Cloud 홈

샘플 인가 워크스페이스 둘러보기

로그인 없이 정책 관리 워크스페이스를 둘러보세요. 이 읽기 전용 데모는 내장된 샘플 데이터와 콘솔의 정책 목록, SPDL 표시 및 Playground 결과 구성 요소를 사용합니다. 브라우저에서 실행되며 API 호출을 수행하지 않고 실제 계정을 읽거나 수정할 수 없습니다.

샘플 서비스: books-demo · 읽기 전용 · 샘플 데이터 전용

정책

인가 정책 (2)

역할 정책 (1)

reader-access

grant role reader get /books

플레이그라운드

샘플 요청을 선택하여 사전 계산된 IsAllowed 결정을 확인하세요. 이는 고정된 예시이며 실시간 API 평가가 아닙니다.

샘플 인가 요청
{
  "subject": {
    "principals": [
      {
        "type": "user",
        "name": "alice"
      }
    ]
  },
  "serviceName": "books-demo",
  "resource": "/books",
  "action": "get"
}

허용되었습니다. 허용 정책이 적용되었습니다.

전체 결과(JSON)
{
  "allowed": true,
  "reason": 0
}

사유 코드: 0 = 허용, 1 = 거부, 3 = 일치하는 정책 없음.

모든 샘플 정책, 요청 및 결정(JavaScript 없이도 읽기 가능)

reader-access

grant role reader get /books

protect-books

deny user bob delete /books

alice-reader

grant user alice reader on /books

Alice가 도서 읽기 — reader 역할을 통해 허용됨

{
  "request": {
    "subject": {
      "principals": [
        {
          "type": "user",
          "name": "alice"
        }
      ]
    },
    "serviceName": "books-demo",
    "resource": "/books",
    "action": "get"
  },
  "response": {
    "allowed": true,
    "reason": 0
  }
}

Bob이 도서 삭제 — 명시적으로 거부됨

{
  "request": {
    "subject": {
      "principals": [
        {
          "type": "user",
          "name": "bob"
        }
      ]
    },
    "serviceName": "books-demo",
    "resource": "/books",
    "action": "delete"
  },
  "response": {
    "allowed": false,
    "reason": 1
  }
}

Carol이 도서 읽기 — 일치하는 허용 정책 없음

{
  "request": {
    "subject": {
      "principals": [
        {
          "type": "user",
          "name": "carol"
        }
      ]
    },
    "serviceName": "books-demo",
    "resource": "/books",
    "action": "get"
  },
  "response": {
    "allowed": false,
    "reason": 3
  }
}