2016-10-26 28 views
4

Linuxサーバー上でリモートで実行されているRealmオブジェクトサーバーを使用するSwiftアプリケーションがあります。リアルタイム同期を含むすべてが機能しています。SwiftのRealmアプリケーションの暗号化キーを取得する場所

iOSシミュレータで使用されているローカルのレルムファイルの内容を検査して、デバッグができることがあります。

~/.../CoreSimulator/.../Documents/realm-object-server/<unique id>/ 

を...と私は、このファイルを開こう:私はここでブラウズすると私はとプロンプトが表示されますrealm%3A%2F%2F104%2E236%2E129%2E235%3A9080%2F%7E%2Fmyapp.realm

を:このレルムファイルの有効な暗号化キーを入力してください。 enter image description here この暗号化キーはどこで入手できますか?私は、サーバーから管理トークンを使用してみましたが、動作していないようです。

また、どこからでも暗号化をオフにすることはできますか?または、Realm Object Serverを使用するすべてのアプリで必須ですか?

答えて

5

ブラウザを使用して、同期されたレルムファイルのローカルバージョンを開くことはできません。これは内部的に異なる履歴の種類が原因です(ただし、ここでは取り上げません)。レルムファイルの内容を調べるには、前に定義したsyncURLを使用してレルムファイルを開く必要があります。ブラウザがファイルをダウンロードし、内容を表示します。

このトピックに関するいくつかのリンク:あなたが見ることができる

0
byte[] key = new byte[64]; 
new SecureRandom().nextBytes(key); 
String encryptionKey = byteArrayToHexString(key); 
//encryptionKey is what you want byteArrayToHexString see 
Log.d("test", "encryptionKey:"+encryptionKey); 

byteArrayToHexString()メソッド:How to convert a byte array to a hex string in Java?

+0

こんにちは、少し拡大していただけますか?たとえば、ソースがありますか? –

+0

バイト[]キー=新しいバイト[64]。 新しいSecureRandom()。nextBytes(キー); 文字列encryptionKey = byteArrayToHexString(key); Log.d( "test"、 "encryptionKey:" + encryptionKey); // encryptionKeyは必要なものです byteArrayToHexString参照http://stackoverflow.com/questions/9655181/how-to-convert-a-byte-配列から文字列への文字列 –

+0

[OK]をあなたの答えを編集し、そこに追加してください。コメントは書式設定をサポートしていないため、コードを追加するのに最適な場所ではなく、サイトのルールに従っていつでも削除することができます。ありがとうございました! –

1

あなたは、古いバージョンを使用することができますRealm Browser、please uそれをpdateして、結果を再度確認してください。

関連する問題