Creating a Datastore Entry results in encrypted properties when viewing with the browser
<p>I manage to create or modify a datastore entity fine with google.cloud.datastore in python, but when I log in into my Cloud Platform project in the browser and check the entry, it looks like all of its properties are encrypted (They look like <code>"Rm9vIEJhcg=="</code> and such - If I create it from the browser I can see the normally).</p>

<p>I am authenticating with a service account identity's json file:</p>

<pre><code>self.client = datastore.Client()
self.client = self.client.from_service_account_json(cert_file.json)
</code></pre>

<p>The service account has "editor" permissions on the whole project. Changing it to "Owner", which is the one set for the gmail account I use to log in, doesn't fix the issues.</p>

<p>I create the entity like this:</p>

<pre><code>with self.datastore.client.transaction():
    entity = Entity(Key("key", project="project"))
    entity["property"] = "data"
    self.datastore.client.put(entity)
</code></pre>

<p>Any way to make it so the entry I modify with the python library are readable from the browser site?</p>

<p>The value is not really encrypted, rather encoded with Base64. The reason for this is the value is stored as a Blob (raw bytes), instead of Text/Character String. The Console displays Blob  fields in Base64 format. The value, Rm9vIEJhcg==, when decoded with Base64, is Foo Bar. </p>

<p>I don't have much knowledge in Python, but take a look at the Note from the official <a href="https://googlecloudplatform.github.io/google-cloud-python/stable/datastore-entities.html" rel="nofollow">documentation</a>: </p>

<blockquote>
  <p>When saving an entity to the backend, values which are âtextâ (unicode
  in Python2, str in Python3) will be saved using the âtext_valueâ
  field, after being encoded to UTF-8. When retrieved from the back-end,
  such values will be decoded to âtextâ again. Values which are âbytesâ
  (str in Python2, bytes in Python3), will be saved using the
  âblob_valueâ field, without any decoding / encoding step.</p>
</blockquote>

<p>Depending on the version of Python you are using, adjust the data type for your data and the issue should be resolved. </p>

python google-cloud-datastore google-cloud-python gcloud-python