How do we authenticate the app to the Firestore? (not using service account), because when service account have conflicts when security rules which needs authenticate. When I'm switching to production mode and perform a query I got this message
This is the rules that is set in the production mode
match /{document=**} {
allow read, write: if request.auth!=null;
}
match /projects/{document=**} {
allow read, write;
}
If you are using https://github.com/kreait/firebase-php/, the documentation shows how to initialize Firebase Authentication, and then sign-in with one of the many supported providers.
Once you're signed in, the authentication information is securely passed with your requests to the database and you can then access it asrequest.auth
in your security rules as shown here.
You need to authenticate your PHP app first to the Firebase in order your App to make a request.
To do that, follow this quick solution which I recently discovered.
First You must create your own authentication email and password in your Firebase Authenticate Console.
Install this package on your App:
composer require kreait/firebase-php
use Kreait\Firebase\Factory;
use Kreait\Firebase\Auth;
use Kreait\Firebase\Auth\SignInResult;
$key = ""
$factory = (new Factory)
->withServiceAccount($key)
->withDatabaseUri('Your Firebase Database URi');
$auth = $factory->createAuth();
$email = "Your Email";
$password = "Your Password";
$signInResult = $auth->signInWithEmailAndPassword($email, $password);
note: Remember, this is only static and you have to make the entire function to make this more dynamic.
Now you can make a request to the firebase without getting block by the security rules.
Our community is visited by hundreds of web development professionals every day. Ask your question and get a quick answer for free.
Find the answer in similar questions on our website.
Do you know the answer to this question? Write a quick response to it. With your help, we will make our community stronger.
PHP (from the English Hypertext Preprocessor - hypertext preprocessor) is a scripting programming language for developing web applications. Supported by most hosting providers, it is one of the most popular tools for creating dynamic websites.
The PHP scripting language has gained wide popularity due to its processing speed, simplicity, cross-platform, functionality and distribution of source codes under its own license.
https://www.php.net/
Welcome to the Q&A site for web developers. Here you can ask a question about the problem you are facing and get answers from other experts. We have created a user-friendly interface so that you can quickly and free of charge ask a question about a web programming problem. We also invite other experts to join our community and help other members who ask questions. In addition, you can use our search for questions with a solution.
Ask about the real problem you are facing. Describe in detail what you are doing and what you want to achieve.
Our goal is to create a strong community in which everyone will support each other. If you find a question and know the answer to it, help others with your knowledge.