RAM より、Alibaba Cloud アカウント下の RAM ユーザーに権限を付与することができます。
Alibaba Cloud アカウントより、RAM ユーザーが Log Service にアクセスし、操作できるよう権限を付与します。 RAM ユーザーには、システムポリシーおよびカスタムポリシーを付与することができます。
注意事項
- Log Service のセキュリティを確保するには、最小権限の原則 (PoLP) に従うことを推奨します。RAM ユーザーには、必要以上に権限を与えないようにします。
- 一般的に、プロジェクトリストのリソースを確認する RAM ユーザーには、プロジェクトリストに対する読み取り権限で十分です。
log:ListProject
で、プロジェクトリストを表示する権限を付与します。- 本権限を有する RAM ユーザーはプロジェクト一覧を表示できますが、表示するプロジェクトを指定することはできません。
- 本権限を有さない RAM ユーザーは一切のプロジェクトを表示することもできません。
本ドキュメントでは、次のよくあるカスタムポリシーとその詳細を説明します。
コンソールよりプロジェクトリスト、プロジェクトを読み取る権限を付与
Alibaba Cloud アカウントより RAM ユーザーに次の権限を付与します。
- Alibaba Cloud アカウント下のプロジェクトリストを表示する権限
- Alibaba Cloud アカウントの指定するプロジェクトを読み取る権限
RAM ユーザーに両方の権限を付与するポリシーは、次のとおりです。
{
"Version": "1",
"Statement": [
{
"Action": ["log:ListProject"],
"Resource": ["acs:log:*:*:project/*"],
"Effect": "Alow"
},
{
"Action": [
"log:Get*",
"log:List*"
],
"Resource": "acs:log:*:*:project/<プロジェクト名>/*",
"Effect": "Allow"
}
]
}
コンソールより Logstore を読み取り、クイック照会を作成/利用する権限を付与
Alibaba Cloud アカウントより RAM ユーザーに次の権限を付与します。
- Alibaba Cloud アカウント下のプロジェクトを一覧表示する権限
- 特定の Logstore に対する読み取り権限、および、クイック照会を作成/利用する権限
RAM ユーザーに両方の権限を付与するポリシーは、次のとおりです。
{
"Version": "1",
"Statement": [
{
"Action": [
"log:ListProject"
],
"Resource": "acs:log:*:*:project/*",
"Effect": "Allow"
},
{
"Action": [
"log:List*"
],
"Resource": "acs:log:*:*:project/<プロジェクト名>/logstore/*",
"Effect": "Allow"
},
{
"Action": [
"log:Get*",
"log:List*"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/logstore/<Logstore 名>"
],
"Effect": "Allow"
},
{
"Action": [
"log:List*"
],
"Resource": [
"acs:log:*:*:project/<指定するプロジェクトの名前>/dashboard",
"acs:log:*:*:project/<指定するプロジェクトの名前>/dashboard/*"
],
"Effect": "Allow"
},
{
"Action": [
"log:Get*",
"log:List*",
"log:Create*"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/savedsearch",
"acs:log:*:*:project/<プロジェクト名>/savedsearch/*"
],
"Effect": "Allow"
}
]
}
コンソールよりプロジェクト内のすべてのクイック照会/ダッシュボード/Logstore を読み取る権限を付与
Alibaba Cloud アカウントより RAM ユーザーに次の権限を付与します。
- Alibaba Cloud アカウント下のプロジェクト一覧を表示する権限
- 特定の Logstore、すべてのクイック照会とダッシュボードを表示する権限
注 RAM ユーザーに、特定の Logstore に対する読み取り権限を付与する場合は、併せてすべてのクイック照会およびダッシュボードを表示する権限も付与する必要があります。
RAM ユーザーに両方の権限を付与するポリシーは次のとおりです。
{
"Version": "1",
"Statement": [
{
"Action": [
"log:ListProject"
],
"Resource": "acs:log:*:*:project/*",
"Effect": "Allow"
},
{
"Action": [
"log:List*"
],
"Resource": "acs:log:*:*:project/<プロジェクト名>/logstore/*",
"Effect": "Allow"
},
{
"Action": [
"log:Get*",
"log:List*"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/logstore/<Logstore 名>"
],
"Effect": "Allow"
},
{
"Action": [
"log:Get*",
"log:List*"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/dashboard",
"acs:log:*:*:project/<プロジェクト名>/dashboard/*"
],
"Effect": "Allow"
},
{
"Action": [
"log:Get*",
"log:List*"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/savedsearch",
"acs:log:*:*:project/<プロジェクト名>/savedsearch/*"
],
"Effect": "Allow"
}
]
}
API 呼び出しでプロジェクトにデータを書き込む権限を付与
RAM ユーザーに、特定のプロジェクトに対する書き込み権限を付与します。
{
"Version": "1",
"Statement": [
{
"Action": [
"log:Post*"
],
"Resource": "acs:log:*:*:project/<プロジェクト名>/*",
"Effect": "Allow"
}
]
}
API よりプロジェクトを読み取る権限を付与
RAM ユーザーに、特定のプロジェクトに対する読み取り権限を付与します。
{
"Version": "1",
"Statement": [
{
"Action": [
"log:ListShards",
"log:GetCursorOrData",
"log:GetConsumerGroupCheckPoint",
"log:UpdateConsumerGroup",
"log:ConsumerGroupHeartBeat",
"log:ConsumerGroupUpdateCheckPoint",
"log:ListConsumerGroup",
"log:CreateConsumerGroup"
],
"Resource": "acs:log:*:*:project/<プロジェクト名>/*",
"Effect": "Allow"
}
]
}
API より Logstore を読み取る権限を付与
RAM ユーザーに、特定のプロジェクトに対する読み取り権限を付与します。{
"Version": "1",
"Statement": [
{
"Action": [
"log:GetCursorOrData",
"log:GetConsumerGroupCheckPoint",
"log:UpdateConsumerGroup",
"log:ConsumerGroupHeartBeat",
"log:ConsumerGroupUpdateCheckPoint",
"log:ListConsumerGroup",
"log:CreateConsumerGroup"
],
"Resource": [
"acs:log:*:*:project/<プロジェクト名>/logstore/<Logstore 名>",
"acs:log:*:*:project/<プロジェクト名>/logstore/<Logstore 名>/*"
],
"Effect": "Allow"
}
]
}