1. 程式人生 > 實用技巧 >網路穿透/雲端組網/視訊流轉推服務EasyNTS上雲網關訪問介面登入鑑權的優化

網路穿透/雲端組網/視訊流轉推服務EasyNTS上雲網關訪問介面登入鑑權的優化

任何一個平臺都需要對自己的平臺資訊進行保護,因此TISNGSEE青犀視訊雲邊端架構智慧分析平臺開發了登入鑑權的功能。在進行平臺登入或者介面呼叫的時候,登入鑑權都對平臺的資訊起到了保護作用。

在新開發的EasyNTS上雲網關管理平臺內,使用者可以在不登入的情況下直接訪問遠端裝置管理器的介面。正常來說,如果訪問介面的話是需要驗證許可權,但是在直接訪問遠端裝置管理器的相關介面的時候,就算沒有登入也能訪問的介面資料。

經過我們的分析排查,得知是因為在訪問代理介面的時候沒有加上登入驗證的許可權,導致別人不用登入都可以實現介面的訪問。因此這個問題需要儘快進行修復。

我們可以增加一層登入鑑權,在給實現反向代理之前再進行一次登入許可權的驗證,這樣可以攔截未登入的請求。參考程式碼如下:

// 判斷使用者必須登入
func needLogin() gin.HandlerFunc {
   return func(c *gin.Context) {
      config := dao.SYSConfig()

      if config.APIAuthed {
         _, err := userIsLogin(c)
         if err == nil {
            c.Next()
            return
         } else {
            AbortWithCodeJson(c, http.StatusUnauthorized, http.StatusUnauthorized, err.Error())
            return
         }
      }
      c.Next()
   }
}

修復後登入效果如下,提示重新登入:

EasyNTS更新之後,實現了一機兩用,具備視訊拉轉推功能,將RTSP、RTMP、HTTP、HLS等各種網路流先拉取到本地,進行轉換,再以標準RTMP協議的方式推流到RTMP流媒體伺服器等;同時也可以進行網路穿透,網頁對域名進行新增對映時,新增成功後會生成一個外網訪問地址,在瀏覽器中輸入外網訪問地址,即可檢視內網應用。

如果大家對EasyNTS上雲網關智慧管理平臺感興趣,歡迎聯絡我們瞭解。