領事ACLアクセス制御

事前に準備する

環境:Linuxシステム
バージョン:V1.6.2
ダウンロード:https://www.consul.io/downloads.html
構成ファイル:config-acl.json

{
    "datacenter":"tencent-datacenter",
    "data_dir":"/usr/local/consul-1.6.2/data",
    "log_file":"/usr/local/consul-1.6.2/log/",
    "log_level":"INFO",
    "bind_addr":"0.0.0.0",
    "client_addr":"0.0.0.0",
    "node_name":"tencent-node",
    "ui":true,
    "bootstrap_expect":1,
    "server":true,
    "acl":{
        "enabled":true,
        "default_policy":"deny",
        "enable_token_persistence":true,
        "enable_key_list_policy":true
    }
}
  • acl.enabled:aclを有効にします
  • acl.default_policy:ポリシー、デフォルトで拒否-拒否;デフォルトで許可-許可
  • acl.enable_token_persistence:永続トークンを許可する
  • acl。enable_key_list_policy:KVの再帰的操作を許可する

領事を開始します。./consul agent -config-file=config-acl.json

ACLの使用シナリオ

  • エージェントのアクセス制御
  • サービス登録/ディスカバリーアクセス制御
  • KVアクセス制御

ACLの使用手順

1つは、領事ACLを初期化する

bash:consul acl bootstrap
生成される情報は次のとおりです(情報を保存します):

AccessorID:       xxxx-xxxx-xxxx-xxxx-xxxx
SecretID:         xxxx-xxxx-xxxx-xxxx-xxxx
Description:      Bootstrap Token (Global Management)
Local:            false
Create Time:      2019-12-23 12:06:53.799083966 +0800 CST
Policies:
   00000000-0000-0000-0000-000000000001 - global-management

このコマンドの実行によって生成されたAccessorIDとSecretIDは、最高の権限を持っています。

2、構成ルール

ブラウザアクセス:localhost:8500上記の[ACL]タブにSecretIDを入力すると、次のページが表示されます。
ここに画像の説明を挿入
デフォルトのポリシー:グローバル管理。これは、スーパー管理者と同等の最高の権限を持つSecretIDです。

AccessorID:アクセスID。トークンは1つだけです。入力するレコードをクリックすると、
スコープ:
役割とポリシー:権限またはポリシーがあります。AccessorIDは、さまざまな役割とポリシーを関連付けることでアクセス権限を制御します。

ここにいくつかのポリシーケースがあります:
1)サービスポリシー

service_prefix "" {
    
    
  policy = "write"
}

上記の戦略は、すべてのサービスを記述できることを意味します。
具体的な戦略リファレンス:サービスルール

2)KV戦略

key_prefix "" {
    
    
 policy = "list"
}
key_prefix "" {
    
    
 policy = "write"
}
key_prefix "config/" {
    
    
 policy = "read"
}

最初のもの:すべてのKVが再帰的なリスト操作を実行できることを示します。このオプション"enable_key_list_policy":trueは、構成ファイルが指定された後にのみ有効になります
2つ目:すべてのKVが書き込み操作を実行できます。
3番目:config /で始まるキーを読み取ることができます。

特定の戦略リファレンス:Key-Value-rules

おすすめ

転載: blog.csdn.net/fomeiherz/article/details/103643021