FireBaseは、専用のバックエンドなしでアプリケーションを実行するためのバックエンドレスプラットフォームです。ただし、既存のバックエンドのAPIと通信する必要がある場合もあれば、Firebaseインフラストラクチャを使用してもできない操作を実行するために専用のバックエンドが必要な場合があります。
このSpring Boot Starterは、 Spring Securityを使用してFirebaseの認証メンチズムを拡張して保護されたREST APIをシームレスに作成および使用する場合に、このような状況に最適です。
次の環境変数をグローバルに追加するか、特定の実行構成環境変数をプロジェクトGOOGLE_APPLICATION_CREDENTIALS=path_to_firebase_server_config.json
スターターは、クライアントサイド / Strictly Server側またはその両方としてFireBaseセッションを使用するように構成できます。
HTTYのみ /セキュア対応セッションCookieは、開発ホストで予想どおりに機能しない場合があります(LocalHost、120.0.0.1)。逆プロキシホストを使用して自己署名されたSSL証明書を追加することは、完全に正常に機能します。この記事を読む=>開発アプリケーションのSSLを使用してローカルドメイン名
次のアプリケーションプロパティは、ニーズに合わせてカスタマイズするために編集できます。 sample @ application.yaml
SecurityRoleServiceを通じて追加するか、スーパー管理者によって手動で管理されることができますsecurity.super-adminsを通じて定義されます@Secured, @RolesAllowed, @PreAuthorize, @PostAuthorizedなどのような注釈が完全に正常に機能します。@IsSuper, @IsSellerような単純さのために@issuperのような役割の注釈を定義するのが好きです。 @GetMapping("data")
@isSeller
public String getProtectedData() {
return "You have accessed seller only data from spring boot";
}
roles, hasRole, isSuper, isSeller _プロパティなどのユーティリティプロパティがあり、特定のUIコンポーネントへのアクセスを許可または制限するためにアプリケーションを露出しています。役割管理のファイアーベースとスプリングブートベースの役割管理と承認に関する詳細な説明については、この投稿をThePro.ioでお読みください私がFirebaseのソーシャル認証をテストする問題を解決するために使用した方法は意見であり、誰にでも適していない可能性があります。簡単に言えば、FireBaseカスタムトークンを介して特定の静的テストユーザーセットを認証するトググレージテストユーザー機能を作成します。これにより、サードパーティの裏付けられた認証フローのテストに関連する多くの問題が解決します。詳細については、この投稿を詳細について読む説明終了端までのエンドテストファイヤーベース認証、Spring Boot、およびNextjs
| ログアウトしました | ログインしました |
|---|---|
?グラディウス
このプロジェクトがあなたを助けたなら、♥を与えてください!
このプロジェクトはMITライセンスに基づいてライセンスされています - 詳細については、license.mdファイルを参照してください