Admin SDK 移行ガイド

Admin SDK の次のバージョンでは、数は少ないですが、重要な変更が行われています。

  • Java SDK 6.0.0
  • Go SDK 3.0.0

特に影響の範囲が大きい変更は Java Task インターフェースの削除で、ApiFuture インターフェースに置き換えられていることです。

また、以下の機能に変更が加えられています。

  • Java SDK の承認認証情報の指定
  • Realtime Database のログレベルの構成
  • Go におけるカスタム トークンの作成と ID トークンの検証

Admin Java SDK(6.0.0)

そのためには、Task ではなく ApiFuture を使用します。

非推奨の Task インターフェースが削除されました。アプリがこのインターフェースを使用している場合は、代わりに ApiFutures インターフェースを使用するようにアプリを更新してください。例:

変更前

Task<String> customToken = FirebaseAuth.getInstance()
    .createCustomToken("uid");

変更後

String customToken = FirebaseAuth.getInstance()
    .createCustomToken("uid");

// Or

ApiFuture<String> customToken = FirebaseAuth.getInstance()
    .createCustomTokenAsync("uid");

高度なユースケースを用いたこの変更点の詳細な説明については、Admin Java SDK を使用した非同期オペレーションをご覧ください。

FirebaseCredentialsGoogleCredentials に移行する

FirebaseCredentialFirebaseCredentials は使用できなくなりました。SDK 用の認証情報を指定するには、代わりに GoogleCredentials を使用します。例:

変更前

FirebaseCredential credential = FirebaseCredentials.fromCertificate(stream);
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredential(credential)
    .build();

FirebaseCredential credential = FirebaseCredentials.applicationDefault();
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredential(credential)
    .build();

変更後

GoogleCredentials credentials = GoogleCredentials.fromStream(stream);
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredentials(credentials)
    .build();

GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredentials(credentials)
    .build();

SLF4J を使用してロギングを構成する

FirebaseDatabase.setLogLevel() API はご利用いただけなくなりました。SLF4J を直接使用して、SDK 全体のロギングを構成します。

この変更は、コードを変更せずにロギングを構成できるようになったことを意味します。詳しくは、Firebase および Google Cloud の Java ライブラリでのロギングをご覧ください。

変更前

FirebaseDatabase.getInstance()
 .setLogLevel(Logger.Level.DEBUG);

変更後

  • slf4j-simple.jar をプロジェクト クラスパスに追加します。
  • JVM の -Dorg.slf4j.simpleLogger.defaultLogLevel=debug システム プロパティを設定します。
  • Log4J や java.util.logging などの他のロギング フレームワークの使用について詳細は、SLF4J のドキュメントをご覧ください。

Admin Go SDK 3.0.0

Go の auth.Client の変更点

CustomToken メソッドと CustomTokeWithClaims メソッドは、既存のほとんどの Go API のように、コンテキスト引数を取るようになりました。

変更前

token, err := CustomToken("uid")

token, err := CustomToken("uid", claimsMap)

result, err := VerifyIDToken(idToken)

修正後

token, err := CustomToken(context.Background(), "uid")

token, err := CustomTokenWithClaims(context.Background(), "uid", claimsMap)

result, err := VerifyIDToken(context.Background(), idToken)