private FirebaseAuth CreateFirebaseAuth(HttpMessageHandler handler = null) { var args = FirebaseTokenVerifierArgs.ForSessionCookies( "test-project", KeySource, Clock); var tokenVerifier = new FirebaseTokenVerifier(args); FirebaseUserManager userManager = null; if (handler != null) { userManager = new FirebaseUserManager(new FirebaseUserManager.Args { Credential = GoogleCredential.FromAccessToken("test-token"), ProjectId = "test-project", ClientFactory = new MockHttpClientFactory(handler), RetryOptions = RetryOptions.NoBackOff, }); } return(new FirebaseAuth(new FirebaseAuth.FirebaseAuthArgs() { SessionCookieVerifier = new Lazy <FirebaseTokenVerifier>(tokenVerifier), UserManager = new Lazy <FirebaseUserManager>(userManager), IdTokenVerifier = new Lazy <FirebaseTokenVerifier>(), TokenFactory = new Lazy <FirebaseTokenFactory>(), })); }
public void NoProjectId() { var app = FirebaseApp.Create(new AppOptions() { Credential = MockCredential, }); Assert.Throws <ArgumentException>(() => FirebaseTokenVerifier.CreateIDTokenVerifier(app)); }
public void ProjectId() { var args = FullyPopulatedArgs(); var verifier = new FirebaseTokenVerifier(args); Assert.Equal("test-project", verifier.ProjectId); Assert.Null(verifier.TenantId); }
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); }
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); }
private FirebaseTokenVerifier CreateIdTokenVerifier() { var args = FirebaseTokenVerifier.CreateIdTokenVerifierArgs(); args.ProjectId = this.ProjectId; args.PublicKeySource = this.KeySource; args.Clock = this.Clock; args.TenantId = this.TenantId; args.IsEmulatorMode = !string.IsNullOrWhiteSpace(this.EmulatorHost); return(new FirebaseTokenVerifier(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); } finally { Environment.SetEnvironmentVariable("GOOGLE_CLOUD_PROJECT", ""); } }
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)); }
private FirebaseAuth CreateFirebaseAuth(HttpMessageHandler handler = null) { var args = FirebaseTokenVerifierArgs.ForIdTokens("test-project", KeySource, Clock); var tokenVerifier = new FirebaseTokenVerifier(args); FirebaseUserManager userManager = null; if (handler != null) { userManager = new FirebaseUserManager(new FirebaseUserManager.Args { Credential = MockCredential, ProjectId = "test-project", ClientFactory = new MockHttpClientFactory(handler), RetryOptions = RetryOptions.NoBackOff, }); } var authArgs = FirebaseAuth.Args.CreateDefault(); authArgs.IdTokenVerifier = new Lazy <FirebaseTokenVerifier>(tokenVerifier); authArgs.UserManager = new Lazy <FirebaseUserManager>(userManager); return(new FirebaseAuth(authArgs)); }
private FirebaseTokenVerifier CreateSessionCookieVerifier() { return(FirebaseTokenVerifier.CreateSessionCookieVerifier( this.ProjectId, this.KeySource, this.Clock)); }
private FirebaseTokenVerifier CreateIdTokenVerifier() { return(FirebaseTokenVerifier.CreateIdTokenVerifier( this.ProjectId, this.KeySource, this.Clock, this.TenantId)); }