アクセス許可
Azure Cosmos DB は、ドキュメント、グラフ、キー値のデータ モデルをサポートするグローバル分散マルチモデル データベースです。 このセクションの内容は、REST 経由で SQL API を使用してアクセス許可リソースを管理するための内容です。
アクセス許可は、特定のリソースへの認証済みアクセスのためにユーザーに関連付けられている認証トークンです。 特定のユーザーのコレクション、ドキュメント、添付ファイル、ストアド プロシージャ、トリガー、ユーザー定義関数へのアクセスの管理に使用されます。
ユーザーの特定のリソースには権限を 1 つだけ関連付けることができます。 たとえば、ID "permision2" を持つ MarketingCollection は、ユーザー JanetSmith@contoso.comに対する 1 つのアクセス許可にのみ関連付けることができます。 Janet の MarketingCollection に別のアクセス許可を追加しようとすると、エラー (409 競合) が発生します。
[ すべて ] と [ 読み取り ] の 2 つのアクセス許可モードしかありません。 [すべて] モードでは、リソースへの読み取り、書き込み、および削除アクセスが提供されます。
読み取りモードでは、リソースへの読み取り専用アクセスが提供されます。 GET、PUT、POST をアクセス許可で実行するたびにリソース トークンが作成されます。 既定では、リソース トークンの有効期間は 1 時間であり、ヘッダー設定で目的の値 x-ms-documentdb-expiry-seconds
を指定することで最大 5 時間まで延長できます。 このヘッダーを設定する方法については、 アクセス許可の作成 に関する記事のヘッダーセクションを参照してください。 有効期間は、最大で 5 時間までオーバーライドできます。 次の例は、アクセス許可の JSON 構造を示しています。
{
"id":"permision2",
"permissionMode":"All",
"resource":"dbs/ruJjAA==/colls/ruJjAM9UnAA=/",
"_rid":"ruJjAFjqQABUp3QAAAAAAA==",
"_ts":1408237846,
"_self":"dbs/ruJjAA==/users/ruJjAFjqQAA=/permissions/ruJjAFjqQABUp3QAAAAAAA==/",
"_etag":"00004900-0000-0000-0000-53f001160000",
"_token":"type=resource&ver=1&sig=m32/00W65F8ADb3psljJ0g==;v0kQGihedau1pVGGQmuPgzlEcfsYDWSdfn2kyjDc1qF1aZfPHXzIS/BFMcuZQRUr6C5c5PgiyCSwhiAgZMJne2DorfMbE/GUHmxBLjOnykLARqwn3zpZpz9b2axWtL8+qQFX81nocdEDvBVzFuobyul6QimbmeZ7D6D1K4qJT9feuJkIBfczeAp/sKaSupXEgB3qyih0rej5N6Wv14Gufohh1QTlCRIzK3FqQv4xjcY=;"
}
プロパティ | 説明 |
---|---|
id | 必須。 これはユーザー設定可能なプロパティです。 アクセス許可を識別する一意の名前です。つまり、2 つのアクセス許可がユーザー内で同じ ID を共有することはありません。 ID は 255 文字以内にする必要があります。 |
permissionMode | 必須。 ユーザーのリソースのアクセス モード: [すべて] または [ 読み取り] です。 すべて によって、リソースへの読み取り、書き込み、および削除アクセスが提供されます。 Read は、リソースに対する読み取りアクセス権のみにユーザーを制限します。 |
resource | 必須。 アクセス許可に関連付けられたリソースのアクセス可能な完全パス。 例: dbs/ruJjAA==/colls/ruJjAM9UnAA=/ |
_解消 | これは、システムによって生成されるプロパティです。 リソース ID (_rid) は、リソース モデル上のリソース スタックごとに階層化された一意識別子です。 アクセス許可リソースの配置およびナビゲーションのために内部的に使用されます。 |
_Ts | これは、システムによって生成されるプロパティです。 リソースの最終更新タイムスタンプを示します。 値は、タイムスタンプです。 |
_自己 | これは、システムによって生成されるプロパティです。 リソースの一意のアドレス指定が可能な URI です。 |
_Etag | これは、オプティミスティック コンカレンシー制御に必要なリソース etag を指定するシステム生成プロパティです。 |
_トークン | これは、特定のリソースとユーザーに対してシステムによって生成されるリソース トークンです。 |
タスク
アクセス許可を使用して、次のタスクを実行できます。