2016-09-16 95 views
3

我想讓我的頭纏上grpc authentication。從示例的外觀看,它看起來像grpc支持SSL/TLS和谷歌令牌...如何在grpc中使用JWT?

我也看過json web tokens作爲身份驗證的手段。

我不確定這是否是對此的正確思考方式,但我將如何結合使用JWT與grpc?

JWT是否與oauth2示例一起使用的「標記」?

它與正在打開的'roots.pem'文件有關嗎?

我覺得我對認證/令牌知之甚少。我試過尋找涉及grpc和JWT的python示例,而且這一直是一個無果而終的搜索。

我在想這個錯誤的方式嗎?

回答

2

正常的JWT方法使用環境在衆所周知的位置提供的服務帳戶憑證。這就是示例中的「Google Default Credentials」。這些是迄今爲止最容易工作的,並且具有最好的安全性和性能特徵。

通過使用OAuth令牌,還支持OAuth2。這對於三腳OAuth或者直接集成到使用令牌的預先存在的應用程序非常有用。

roots.pem是不同的。這是針對使用自定義證書頒發機構的基於TLS的身份驗證。

也就是說,Python中目前沒有JWT示例。請按照the open issue。今天的示例使用服務帳戶憑據,但隨後將其轉換爲正常的OAuth令牌。

+0

請問您能介紹一下嗎?我正在查看谷歌網站上的服務帳戶文檔,我對此有點困惑。我需要用谷歌註冊這個項目嗎? – Zack

+0

「衆所周知的位置」......這是一個位置服務器端,客戶端,都? – Zack

+0

另外,是否有與python的C++示例「MetadataCredentialsPlugin」的對應點?它是AuthMetadataPlugin嗎? – Zack