POLICY API REST API SERVICE API

TENANT API

K2HR3 REST APIのK2HR3クラスターローカルテナント(TENANT)に関連するAPI群です。

補足

K2HR3 システムのテナント(TENANT)は、連携するOpenStackのテナント(またはプロジェクト)、もしくは Kubernetes の Namespace を使います。
K2HR3 REST APIの設定(コンフィグレーション)で、K2HR3クラスターローカルテナント(TENANT)機能を有効(localtenants=true)とした場合、独自のテナント(TENANT)を作成・編集・削除することができます。
TENANT APIは、K2HR3クラスターローカルテナント(TENANT)を操作するAPIです。

POST(新規作成)

Unscoped User Tokenもしくは、Scoped User Tokenを指定して、K2HR3クラスターローカルテナント(TENANT)を新規作成します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant

Content-Type: application/json
x-auth-token: U=<Unscoped User Token> or <Scoped User Token>

Request Body

{
    tenant:    {
        name:     <tenant name>
        desc:     <description for tenant>
        display:  <display name for tenant>
        users:    [<user name>, ...]
    }
}

Response status

201、40x

Response Body(JSON)

{
    result:     <true/false>
    message:    <null or error message string>
}

PUT(新規作成)

Unscoped User Tokenもしくは、Scoped User Tokenを指定して、K2HR3クラスターローカルテナント(TENANT)を新規作成します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant?name=tenant name&…

Header

Content-Type: application/json
x-auth-token: U=<Unscoped User Token> or <Scoped User Token>

URL Arguments

Response status

201、40x

Response Body(JSON)

{
    result:     <true/false>
    message:    <null or error message string>
}

POST(更新)

Unscoped User Tokenもしくは、Scoped User Tokenを指定して、K2HR3クラスターローカルテナント(TENANT)を更新します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant/tenant name

Header

Content-Type: application/json
x-auth-token: U=<Unscoped User Token> or <Scoped User Token>

Request Body

{
    tenant:    {
        id:       <tenant id>
        desc:     <description for tenant>
        display:  <display name for tenant>
        users:    [<user name>, ...]
    }
}

Response status

201、40x

Response Body(JSON)

{
    result:     <true/false>
    message:    <null or error message string>
}

PUT(更新)

Unscoped User Tokenもしくは、Scoped User Tokenを指定して、K2HR3クラスターローカルテナント(TENANT)を更新します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant/tenant name?id=tenant id

Header

Content-Type: application/json
x-auth-token: U=<Unscoped User Token> or <Scoped User Token>

URL Arguments

Response status

201、40x

Response Body(JSON)

{
    result:     <true/false>
    message:    <null or error message string>
}

GET(リスト)

Unscoped User Tokenもしくは、Scoped User Tokenを指定して、K2HR3クラスターローカルテナント(TENANT)のリストを取得します。
取得するテナント(TENANT)のリストは、ユーザ(USER)が利用を許可されているテナント(TENANT)のみです。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant?expand=true or false

Header

Content-Type: application/json
x-auth-token: U=<Scoped User Token>

URL argument

Response status

200、40x

Response Body(JSON)

GET(テナント指定)

Unscoped User Tokenもしくは、Scoped User Tokenを指定し、K2HR3クラスターローカルテナント(TENANT)の情報を取得します。
ユーザ(USER)が利用を許可されていないテナント(TENANT)を指定した場合、失敗します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant/tenant name

Header

Content-Type: application/json
x-auth-token: U=<Scoped User Token>

Response status

200、40x

Response Body(JSON)

{
    result:        <true/false>
    message:       <null or error message string>
    tenant: {
        name:      <tenant name>,
        id:        <tenant id>,
        desc:      <description for tenant>,
        display:   <display name for tenant>,
        users:     [user, ...]
    }
}

Unscoped User Tokenもしくは、Scoped User Tokenを指定し、K2HR3クラスターローカルテナント(TENANT)の存在を確認します。
ユーザ(USER)が利用を許可されていないテナント(TENANT)を指定した場合、失敗します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant/tenant name

Header

Content-Type: application/json
x-auth-token: U=<Scoped User Token>

Response status

204、40x

Response Body(JSON)

なし

DELETE(テナント)

Unscoped User Tokenもしくは、Scoped User Tokenを指定し、ローカルテナント(TENANT)を完全に削除します。
ユーザ(USER)が利用を許可されていないテナント(TENANT)を指定した場合、失敗します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant?tenant=tenant name?id=tenant id

Header

Content-Type: application/json
x-auth-token: U=<Scoped User Token>

URL argument

Response status

204、40x

Response Body(JSON)

なし

DELETE(ユーザ)

Unscoped User Tokenもしくは、Scoped User Tokenを指定し、ユーザ(USER)を K2HR3クラスターローカルテナント(TENANT)の利用不可にします。
この処理を行った結果、K2HR3クラスターローカルテナント(TENANT)の利用できるユーザ(USER)がいなくなった場合、K2HR3クラスターローカルテナント(TENANT)は削除されます。
ユーザ(USER)が利用を許可されていないテナント(TENANT)を指定した場合、失敗します。

注意

すべてのTENANT APIには、Unscoped User Tokenもしくは、Scoped User Tokenが必要です。
Scoped User Tokenが指定された場合、そのトークンが示すテナントは無視され、Unscoped User Tokenと同様にユーザ情報のみを使用します。

Endpoint(URL)

http(s)://API SERVER:PORT/v1/tenant/tenant name?id=tenant id

Header

Content-Type: application/json
x-auth-token: U=<Scoped User Token>

URL argument

Response status

204、40x

Response Body(JSON)

なし

POLICY API REST API SERVICE API