本記事では、obshellを使用してテナントにユーザーを作成する方法について説明します。
説明
このAPIはobshell V4.2.6からサポートされています。
呼び出しの説明
インターフェース制約
obshell ServerはこのAPIに対してセキュリティ検証を実施します。詳細については、APIハイブリッド暗号化を参照してください。
リクエストパス
POST /api/v1/tenant/{name}/user
リクエストパラメータ
パラメータ |
型 |
必須 |
サンプル値 |
説明 |
|---|---|---|---|---|
| user_name | string | はい | proxyro | 作成するユーザー名です。 |
| password | string | はい | ***** | 作成するユーザーのパスワードです。 |
| root_password | string | いいえ | ***** | テナントのrootユーザーパスワードです。システムテナントのユーザーを作成する場合は、このパラメータを指定する必要はありません。 |
| global_privileges | []string | いいえ | ["SELECT", "DELETE"] | すべてのデータベースに対する権限を指定します。 |
| db_privileges | []DbPrivilegeParam | いいえ | { "db_name": "oceanbase", "privileges": [ "DROP" ] } |
特定のデータベースに対する権限を指定します。詳細については、後述のDbPrivilegeParam情報のデータ構造を参照してください。 |
| host_name | string | いいえ | % | アクセスホワイトリストを設定します。 |
DbPrivilegeParam情報のデータ構造は以下のとおりです:
パラメータ |
型 |
必須 |
サンプル値 |
説明 |
|---|---|---|---|---|
| db_name | string | はい | oceanbase | 指定するデータベース名です。 |
| privileges | []string | はい | ["SELECT","DELETE"] | ユーザーが持つことができる権限です。 |
戻り値
パラメータ |
型 |
説明 |
|---|---|---|
| successful | bool | リクエストが成功したかどうかを示します。 |
| timestamp | time.Time | サーバーがリクエストを完了したタイムスタンプです。 |
| duration | int | サーバーがリクエストを処理した時間(ミリ秒)です。 |
| status | int | HTTPステータスコードに準拠したエンコードです。 |
| traceId | string | リクエストのTrace IDです。 |
| error | ApiError | リクエストで発生したErrorで、以下の情報が含まれます:
|
例
リクエスト例
POST 10.10.10.1:2886/api/v1/tenant/sys/user
{
"user_name": "proxyro",
"password": "*****",
"global_privileges": [
"CREATE",
"DELETE"
],
"db_privileges": [
{
"db_name": "oceanbase",
"privileges": [
"DROP"
]
}
],
"host_name": "%"
}
戻り値例
{
"successful": true,
"timestamp": "2025-03-26T10:30:06.045600725+08:00",
"duration": 76,
"status": 200,
"traceId": "cdb313dd77a2f56a"
}
関連ドキュメント
コマンドラインでAPIを呼び出すほかに、SDKメソッドを通じてAPIを呼び出すこともできます。obshell-sdk-pythonを使用したAPIメソッドのリクエスト方法については、ユーザーの作成を参照してください。