1. ユーザーの管理と認証・認可

管理コンソールまたはAPIでユーザと、ユーザーのグループを管理することができます。
また、アプリごとに使用できるグループを指定することができますので、例えば営業グループのユーザーのみが営業支援アプリを使用でき、サポートグループと営業グループに所属するユーザーがフィールドサポート支援アプリを使用できるといった制御を行うことができます。

ユーザーのロール(権限)を設定することができ、クライアントからユーザーの認証を行った時に、ユーザの名前などと一緒に取得できます。クライアントアプリを開発する際に、ロールに合わせて、機能をユーザーに使わせるかどうかの判定に使用することができます

2. アプリケーションの管理

アプリケーションの名前、ID、バージョンごとに以下を管理することができます。

  • アプリケーションを使用できるユーザーグループの指定
  • Pushの使用有無と、使用する場合は証明書などの管理

3. 外部のユーザー認証との連携

AppPotのユーザーDBを用いた認証に加えて、Microsoft社のActiveDirectory、LDAP、Google社のOAuth認証と連携することが可能です。
これにより、社内システムなどのユーザーとパスワードを一元管理することができます。

4. データ管理

アプリで使用するデータをAPIを経由して管理できます

  • アプリのデータに合わせたデータベースの自動生成
  • データの操作API(生成、更新、削除、さまざまな取得条件の指定)
  • 参照範囲の制御。データを生成する際に、データの内容に合わせて参照範囲を「アプリを使用できるユーザー全体」、「ユーザーが所属するグループ」、「ユーザーのみのみ」から選択できます。
  • データの更新は排他制御(楽観的ロック)が行われており、同じレコードに対する二重更新を防ぎます

RDBMSの採用

データベースは一般的なmBaaS製品で採用しているNoSQLではなく、RDBMSを使用しています。
そのため、業務システムでは必須である複数のデータの関連性を条件にデータを取得するような処理に向いています。

SDKを利用したアクセス

iOS、AndroidのSKD(Javascript SDKは開発中)を利用した場合、端末内データベースと、サーバー側のデータベースの管理をSDKに任せることができます。 データの配置場所を「端末とサーバー」、「サーバーのみ」で選択できます。「端末とサーバー」を選択した場合、オフライン時にも端末内に有るデータを使用してアプリを使用することができます。また、定期的に端末にデータを同期しておくことも設定で可能です。例えば、ログインしているユーザーの所属する営業部のデータのみは端末にダウンロードしておくことができます。

5. ログ収集

次の行うための2つのログレベルのログ収集APIを用意しています。収集したログは管理画面で参照するか、CSVファイルに出力することができます。

  • エラーログ
    ユーザーサポートを迅速に、楽に行うためには、端末内で発生した何らかのエラーを管理者が検知、調査する必要があります。

  • 利用ログ
    ユーザーがどのような操作を行っているのか、記録することができます。

6. Pushメッセージ

AppPot上のユーザーにPushメッセージを送信することができます。
グループ宛、全員宛への一斉送信にも対応しています。
APNS(Apple Push Notification Service)、GCM(Google Cloud Messaging)に対応しています。

例えば、部下が営業日報を登録すると、マネージャにPushメッセージを送信するといった使い方が可能です。

7. eメール送信

任意のeメールアドレスにeメールを送信することができます。
現在、メール送信プラットフォームとして、Amazon Simple Email ServiceとSMTPサーバーに対応しています。

8. ファイル管理

画像、PDFなどのバイナリファイルの保存、取得、削除が行えます。
ファイルの保存先はAmazaon S3とサーバーのローカルディレクトが選択できます。

営業日報に写真を添付して保存したり、作業指示書のPDFファイルを保存して、モバイルアプリから参照することができます。

9. 他システム連携

Oracle Database、MySQL、SQL Serverなど他システムのデータベースや
REST、SOAPのようなWebサービスと設定ベースで連携することができます。

AppPotはクライアントのリクエストに対して、ユーザーの認証、ロギング、複数ある接続先のうち適切な接続先へのルーティング、メッセージ変換(JSONからSQLなど)、プロトコル変換(HTTPからRDBMSなど)を行います。

他データベースへのデータ生成、更新、削除、取得をWebサービスで行うことができます。
シンプルな処理であれば、接続設定のみですぐに使用を始めることができます。

データベース、Webサービスともメッセージの変換が必要はXMLに定義することができます。