public void NoProjectId()
        {
            var app = FirebaseApp.Create(new AppOptions()
            {
                Credential = MockCredential,
            });

            Assert.Throws <ArgumentException>(() => FirebaseTokenVerifier.CreateIdTokenVerifier(app));
            Assert.Throws <ArgumentException>(() => FirebaseTokenVerifier.CreateSessionCookieVerifier(app));
        }
        public void ProjectIdFromServiceAccount()
        {
            var app = FirebaseApp.Create(new AppOptions()
            {
                Credential = GoogleCredential.FromFile("./resources/service_account.json"),
            });
            var verifier = FirebaseTokenVerifier.CreateIdTokenVerifier(app);

            Assert.Equal("test-project", verifier.ProjectId);

            verifier = FirebaseTokenVerifier.CreateSessionCookieVerifier(app);
            Assert.Equal("test-project", verifier.ProjectId);
        }
        public void ProjectIdFromOptions()
        {
            var app = FirebaseApp.Create(new AppOptions()
            {
                Credential = MockCredential,
                ProjectId  = "explicit-project-id",
            });
            var verifier = FirebaseTokenVerifier.CreateIdTokenVerifier(app);

            Assert.Equal("explicit-project-id", verifier.ProjectId);

            verifier = FirebaseTokenVerifier.CreateSessionCookieVerifier(app);
            Assert.Equal("explicit-project-id", verifier.ProjectId);
        }
        internal static TenantAwareFirebaseAuth Create(FirebaseApp app, string tenantId)
        {
            var args = new Args
            {
                TenantId     = tenantId,
                TokenFactory = new Lazy <FirebaseTokenFactory>(
                    () => FirebaseTokenFactory.Create(app, tenantId), true),
                IdTokenVerifier = new Lazy <FirebaseTokenVerifier>(
                    () => FirebaseTokenVerifier.CreateIdTokenVerifier(app, tenantId), true),
                UserManager = new Lazy <FirebaseUserManager>(
                    () => FirebaseUserManager.Create(app, tenantId), true),
                ProviderConfigManager = new Lazy <ProviderConfigManager>(
                    () => Providers.ProviderConfigManager.Create(app, tenantId), true),
            };

            return(new TenantAwareFirebaseAuth(args));
        }
        public void ProjectIdFromEnvironment()
        {
            Environment.SetEnvironmentVariable("GOOGLE_CLOUD_PROJECT", "env-project-id");
            try
            {
                var app = FirebaseApp.Create(new AppOptions()
                {
                    Credential = MockCredential,
                });
                var verifier = FirebaseTokenVerifier.CreateIdTokenVerifier(app);
                Assert.Equal("env-project-id", verifier.ProjectId);

                verifier = FirebaseTokenVerifier.CreateSessionCookieVerifier(app);
                Assert.Equal("env-project-id", verifier.ProjectId);
            }
            finally
            {
                Environment.SetEnvironmentVariable("GOOGLE_CLOUD_PROJECT", string.Empty);
            }
        }
Exemple #6
0
 private FirebaseTokenVerifier CreateIdTokenVerifier()
 {
     return(FirebaseTokenVerifier.CreateIdTokenVerifier(
                this.ProjectId, this.KeySource, this.Clock, this.TenantId));
 }