

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 透過 EMQX 儀表板為使用者新增授權規則
<a name="add-rules-emqx-broker"></a>

您可以使用 EMQX 儀表板或 AWS IoT SiteWise EMQX CLI 工具新增或更新授權規則。 AWS IoT SiteWise EMQX CLI 工具會使用 EMQX 的內建資料庫管理授權。

**注意**  
新增授權規則是進階組態步驟，需要了解 MQTT 主題模式和存取控制。如需使用 EMQX 內建資料庫建立授權規則的詳細資訊，請參閱 *EMQX 文件*中的[使用內建資料庫](https://docs.emqx.com/en/emqx/latest/access-control/authz/mnesia.html)。

**注意**  
提供的 EMQX 相關指示僅供參考。由於 EMQX 文件和功能可能會隨著時間而變更，而且我們不會維護其文件，我們建議您參閱 [EMQX 的官方文件](https://docs.emqx.com/en/emqx/latest/)以取得最新資訊。

------
#### [ EMQX dashboard ]

此程序說明如何在 EMQX 儀表板上新增授權規則。

EMQX 儀表板只能從閘道主機內存取。如果您嘗試從閘道主機外部連線，則無法存取儀表板。

**使用 EMQX 儀表板新增授權規則**

1. 確定您位於閘道主機中。

1. 開啟瀏覽器視窗並造訪 [http://localhost:18083/](http://localhost:18083/)。

1. 登入 EMQX 儀表板。此程序假設您已將預設登入憑證變更為您選擇的登入資料。如需初始設定的詳細資訊，請參閱 [啟用使用者名稱和密碼身分驗證](configure-emqx-broker.md#emqx-broker-username-password-auth)。

1. 從下拉式選單中選擇遮罩圖示，然後選擇**授權**。

1. 選擇**內建資料庫**列上的**許可**按鈕。

1. 在內建資料庫授權區段中，為您的業務需求新增或更新使用者授權規則。如需建立規則的更多指引，請參閱 *EMQX 文件*中的[使用內建資料庫](https://docs.emqx.com/en/emqx/latest/access-control/authz/mnesia.html)一節。

------
#### [ AWS IoT SiteWise CLI tool using Linux ]

**若要在 Linux 中使用 AWS IoT SiteWise EMQX CLI 工具管理授權規則：**
+ 使用下列格式為使用者新增授權規則：

  ```
  /greengrass/v2/bin/swe-emqx-cli auth add your-username your-action your-permission your-topic [your-action-permission-topic]
  ```

**Example 新增使用者的授權規則**  
此範例說明如何為名為 的使用者新增規則`system1`：  

```
/greengrass/v2/bin/swe-emqx-cli auth add system1 \
    publish allow "sensors/#" \
    subscribe allow "control/#" \
    all deny "#"
```

**Example ：檢視使用者的授權規則**  
若要檢視`system1`使用者的授權規則，請執行下列命令：  

```
/greengrass/v2/bin/swe-emqx-cli auth list system1
```

**Example ：檢視所有現有的授權規則**  
若要檢視您目前擁有的所有授權規則，請執行下列命令：  

```
/greengrass/v2/bin/swe-emqx-cli auth list
```

**Example ：刪除使用者的所有授權規則**  
若要刪除套用至特定使用者的所有授權規則，請執行下列命令：  

```
/greengrass/v2/bin/swe-emqx-cli auth delete system1
```
系統會提示您確認刪除。

------
#### [ AWS IoT SiteWise CLI tool using Windows ]

**若要使用 中的 AWS IoT SiteWise EMQX CLI 工具管理授權規則Windows PowerShell：**
+ 使用下列格式為使用者新增授權規則：

  ```
  C:\greengrass\v2\bin\swe-emqx-cli.ps1 auth add your-username your-action your-permission your-topic [your-action-permission-topic]
  ```

**Example ：新增使用者的授權規則**  
此範例說明如何為名為 的使用者新增規則`system1`：  

```
C:\greengrass\v2\bin\swe-emqx-cli.ps1 auth add system1 `
    publish allow "sensors/#" `
    subscribe allow "control/#" `
    all deny "#"
```

**Example ：檢視使用者的授權規則**  
若要檢視`system1`使用者的授權規則，請執行下列命令：  

```
C:\greengrass\v2\bin\swe-emqx-cli.ps1 auth list system1
```

**Example ：檢視所有現有的授權規則**  
若要檢視您目前擁有的所有授權規則，請執行下列命令：  

```
C:\greengrass\v2\bin\swe-emqx-cli.ps1 auth list
```

**Example ：刪除使用者的所有授權規則**  
若要刪除套用至特定使用者的所有授權規則，請執行下列命令：  

```
C:\greengrass\v2\bin\swe-emqx-cli.ps1 auth delete system1
```
系統會提示您確認刪除。

------