11) セキュリティ文書の権限確認
SCIサーバーのユーザーIDに基づくセキュリティ文書権限確認
API
| Method | URL |
|---|---|
| POST | /api/internal/authCheck |
Request Header
| Name | Required | Description |
|---|---|---|
| Authorization | required | ユーザー認証手段、JWT値 Authorization: Bearer {JWT}参考 : JWT値は認証/認可サービスを通じて発行されます。 |
Request Body
| Name | Required | Type | Description |
|---|---|---|---|
| srcFilePath | required | string | 暗号化文書のパス |
| companyId | required | string | 権限確認時の会社ID(会社別キーデータ取得時に使用) |
| userId | required | string | 権限確認時の対象ユーザーID |
Response
| Name | Type | Description |
|---|---|---|
| code | int | 成功の有無 (0:成功) |
| userId | string | 対象ユーザーID |
| read | int | 読み取り権限 (1:権限あり / 0:権限なし) |
| edit | int | 書き込み権限 (1:権限あり / 0:権限なし) |
| decrypt | int | 復号化権限 (1:権限あり / 0:権限なし) |
Examples
Request Body
- Body
{
"srcFilePath": "E:\\test\\orgin\\test.xlsx",
"companyId": "7FDKQsEK-QVGKyXA2-fx1LxIzy-SNIre0s9",
"userId" : "huiju.lee"
}
Response
- 成功
Status code : 200 OK
{
"code": 0,
"userId": "huiju.lee",
"read": 1,
"edit": 0,
"decrypt": 0
}
- 失敗
Status code : 400 Bad Request
{
"code": 40101,
"message": "Invalid token",
"detail": "invalid_token"
}
セキュリティ文書権限判断ルール
ユーザーIDとセキュリティ文書ヘッダー情報に基づいて、Key Vaultに連携されたSCIサーバーの権限を返します。
[DAC] : セキュリティ文書属性のアクセス対象者情報権限として判断
(1) キーボルトでユーザーIDを使用してグループパス情報を取得
(2) ヘッダー情報からDACオブジェクトのDAC_TYPE_IDリストを収集(DAC_TYPEが0のユーザーリスト、1の部門リスト)
(3) ユーザーリストにマッチするIDがある場合、DAC_READ、DAC_EDIT、DAC_DECRYPT権限を返します。
(4) 1番で取得したグループパスの最初のグループIDからマッチするIDがあれば、DAC_READ、DAC_EDIT、DAC_DECRYPT権限を返します。
(5) 3~4の過程でマッチする DAC_TYPE_ID がない場合、DAC_READ、DAC_EDIT、DAC_DECRYPT 権限なしを返す
[MAC] : SCIサーバーのカテゴリオンライン権限で判断
(1) キーボルトでユーザーIDから分類IDを取得 (2) ヘッダー情報からMACオブジェクトのMAC_CATEGORYを取得 (3) 2番と1番で取得した情報(MAC_CATEGORY-ユーザー分類ID)を基にキーボルトで該当カテゴリのオンライン権限(onlinegradeauth)を取得 (4) 3番で取得したオンライン権限文字列の最初の3桁(読み取り、編集、解除)の権限を返す
[GRADE] : SCIサーバーのグレードオンライン権限で判断
(1) キーボルトでユーザーIDから分類IDを取得
(2) ヘッダー情報からDACオブジェクトのDAC_TYPEリストを取得
(3) DAC_TYPEが2のDAC_TYPE_IDとDAC_GRADE_ACCESS_CLASS_IDを取得
(4) DAC_TYPE_ID(keyid)でキーボルトからonlinegradeauthを取得
(5) 1番で取得した分類IDがDAC_GRADE_ACCESS_CLASS_IDに含まれているか確認
(6) 含まれている場合は、オンライン権限文字列の最初の3文字(読み取り、編集、解除)権限を返します。