
セキュリティと認証
JWT、OAuth2、セッション管理、RBAC、crypto/rand と math/rand、TLS 設定、セキュアコーディング、セキュリティのベストプラクティス
24 面接問題·
Senior
1JWT トークンと従来のサーバーセッションの主な違いは何ですか?
1
JWT トークンと従来のサーバーセッションの主な違いは何ですか?
回答
JWT トークンはステートレス(サーバー側に状態を持たない)であり、必要なすべての情報がトークン自体にエンコードされて含まれています。データをメモリやデータベースのサーバー側に保存し、クライアント側には session ID のみを保持する従来のセッションとは異なり、JWT は保存の責任をクライアントに移します。サーバー間で共有状態が不要になるため、水平スケーリングが容易になります。
2ドットで区切られた JWT トークンの 3 つの部分は何ですか?
2
ドットで区切られた JWT トークンの 3 つの部分は何ですか?
回答
JWT は Base64URL でエンコードされ、ドットで区切られた 3 つの部分で構成されます。Header(アルゴリズムとタイプ)、Payload(claims/データ)、Signature(整合性の検証)です。構造は header.payload.signature です。header は署名アルゴリズム(HS256、RS256)を示し、payload は claims(iss、sub、exp)を含み、signature はトークンが改ざんされていないことを保証します。
3トークンの有効期限のタイムスタンプを定義する標準の JWT claim はどれですか?
3
トークンの有効期限のタイムスタンプを定義する標準の JWT claim はどれですか?
回答
'exp'(expiration time)claim は、それ以降トークンを受け入れてはならない Unix タイムスタンプを定義します。標準の claims には 'iss'(issuer)、'sub'(subject)、'aud'(audience)、'iat'(issued at)、'nbf'(not before)も含まれます。exp claim の検証は、トークンの有効期間を制限し、盗まれたトークンの影響を軽減するために極めて重要です。
4
JWT に署名する際の HS256 と RS256 の主な違いは何ですか?
5
JWT を自然な有効期限が切れる前に失効させるにはどうすればよいですか?
+21 面接問題
その他のGo面接トピック
Goの基礎
Junior
25問Goのデータ構造
Junior
20問Go のインターフェース
Junior
18問エラー処理
Junior
20問Goroutine の基礎
Junior
20問Channels
Junior
22問Go Modules
Mid-Level
18問HTTP サーバー
Mid-Level
24問HTTPクライアント
Mid-Level
18問JSON エンコーディング
Mid-Level
20問Database/SQL
Mid-Level
22問context パッケージ
Mid-Level
20問Testing
Mid-Level
22問並行処理パターン
Mid-Level
24問同期プリミティブ
Mid-Level
22問Go Web フレームワーク
Mid-Level
20問REST API 設計
Mid-Level
20問gRPC
Mid-Level
22問Reflection
Senior
20問メモリ管理
Senior
24問パフォーマンス最適化
Senior
22問Generics
Senior
20問Go Design Patterns
Senior
24問Microservices
Senior
24問Docker & Containerization
Senior
20問Kubernetes Basics
Senior
22問高度な Go
Senior
20問CLI開発
Senior
20問