3. 制限値・スレショルド・文字制約¶
ここではモバイルバックエンド基盤の制限値(リミット)やスレショルド、文字制約について説明します。
特に断りがないかぎり、文字列のエンコーディングにはすべて UTF-8 を使用するものとします。
注意
サーバに設定されているライセンスに指定された制限によって、 一部の値が制限されている場合があります。
3.1. テナント¶
3.1.2. テナント名¶
- 使用できる文字: 1バイト英数字、アンダースコア、ピリオド、ハイフン
- 先頭文字: 英数字のみ
- 文字列長制限(UTF-8バイト数): 1~無制限
- 上記制限とは別に、24文字の16進文字列(0~9, a~f, A~F)は使用禁止
3.4. ユーザ管理¶
3.4.1. ユーザ名¶
- 使用できる文字: ASCII文字 (0x20~0x7e)
- 文字列長制限(UTF-8バイト数): 1~100
3.4.2. E-mail アドレス¶
- 右の正規表現にマッチすること:
[\w.-]+@(?:[\w-]+\.)+[\w-]+
- 文字列長制限(UTF-8バイト数): 1~100
3.4.3. ユーザパスワード¶
デフォルト設定は以下の通り。
- 使用できる文字: ASCII文字 (0x20~0x7e)
- 文字列長制限(UTF-8バイト数): 8~100
なお、デベロッパーコンソールにて、使用可能文字種・長さ制限を追加指定できます。
3.5. グループ管理¶
3.5.1. グループ名¶
- 使用できる文字:
/
を除く任意の Unicode文字。但し先頭が_EXT-
で開始する名称は予約のため REST API からの作成・変更・削除は不可 - 文字列長制限(UTF-16コード単位): 1~100
v6 より、グループ名には日本語を含む Unicode 文字が使用できるようになりました。
3.6. JSONオブジェクトストレージ¶
JSONオブジェクトストレージはほぼ MongoDB の制限値に制約されます。
MongoDB の制限値については MongoDB Limits and Thresholds を参照ください。
具体的には以下のような値が制限を受けます。
- JSONオブジェクトサイズ・ネスト段数 (BSON Documents)
- JSONオブジェクトのフィールド名
- バケット名 (Collection Name)
- インデックス・シャードキー
注意
ライセンス制限により、JSONオブジェクトサイズに追加で上限制限されている場合があります。
3.7. ファイルストレージ¶
3.7.1. ファイル名¶
- ファイル名のエンコーディングは UTF-8
- 右の制御文字は使用禁止: ASCIIコード 0x00-0x1f, 0x7f
- 右の10文字は使用禁止:
/ \ : * ? " < > | '
- 以下の文字列を含む名称は使用不可
~~~
- 文字列長制限(UTF-8バイト数): 1~900
3.7.2. ファイルサイズ¶
使用するストレージのシュルによって異なります。
- MongoDB(GridFS) : 100MB
- S3/S3互換ストレージ: S3/S3互換オブジェクトストレージの制限による
注意
ライセンス制限により、ファイルサイズに追加で上限制限されている場合があります。
3.9. デベロッパーコンソール¶
3.9.1. デベロッパーパスワード¶
- 使用できる文字: ASCII文字(0x20-0x7e)
- 文字列長制限(UTF-8バイト数): 8~100
3.9.2. オブジェクトストレージインデックス名¶
- 使用できる文字: 1バイト英数字、アンダースコア
- 文字列長制限(UTF-8バイト数): 8~100
3.10. API Gateway¶
3.10.1. API名¶
- 正規表現
\w[\w-]*
に合致すること - 文字列長制限(UTF-8バイト数): 1~900
3.10.2. basePath¶
- 先頭は必ず
/
。パスの最終要素は API 名と一致していること。 - 文字列長制限(UTF-8バイト数): 1~無制限
3.10.3. サブパス¶
- 右の正規表現にマッチすること:
(/|(/(\{\w[\w.-]*\}|\w[\w.-]*))+)
- 上記正規表現は以下の意味:
/
で区切られた1以上のパス要素の連結。先頭は必ず/
、末尾に/
は付けない。- パス要素は
name
または{name}
形式(後者はパステンプレート)。 - name は1バイト英数字とアンダースコア。2文字目移行はピリオド、ハイフンを使用可能。
- 例外的に
/
1文字は許可。
- 文字列長制限(UTF-8バイト数): 1~無制限
3.11. Cloud Functions¶
3.11.1. operationId¶
- 使用できる文字: 制限なし (実際にはファンクション名の影響を受ける)
- 文字列長制限(UTF-8バイト数): 1~900 (実際にはファンクション名の影響を受ける)
3.11.2. ハンドラ名¶
- 使用できる文字: 制限なし、ただし使用する言語仕様による
- 文字列長制限(UTF-8バイト数): 1~無制限
3.11.3. ファンクション名¶
- 使用できる文字: 1バイト英数字、アンダースコア
- 文字列長制限(UTF-8バイト数): 1~900
3.11.4. コードファイル名¶
- 使用できる文字: ファイルストレージのファイル名制限と同じ
- 文字列長制限(UTF-8バイト数): ファイルストレージのファイル名制限と同じ