1. ユーザーの管理と認証・認可
管理コンソールまたはAPIでユーザと、ユーザーのグループを管理することができます。
また、アプリごとに使用できるグループを指定することができますので、例えば営業グループのユーザーのみが営業支援アプリを使用でき、サポートグループと営業グループに所属するユーザーがフィールドサポート支援アプリを使用できるといった制御を行うことができます。
ユーザーのロール(権限)を設定することができ、クライアントからユーザーの認証を行った時に、ユーザの名前などと一緒に取得できます。クライアントアプリを開発する際に、ロールに合わせて、機能をユーザーに使わせるかどうかの判定に使用することができます
2. アプリケーションの管理
アプリケーションの名前、ID、バージョンごとに以下を管理することができます。
- アプリケーションを使用できるユーザーグループの指定
- Pushの使用有無と、使用する場合は証明書などの管理
3. 外部のユーザー認証との連携
AppPotのユーザーDBを用いた認証に加えて、Microsoft社のActiveDirectory、LDAP、Google社のOAuth認証と連携することが可能です。
これにより、社内システムなどのユーザーとパスワードを一元管理することができます。
4. データ管理
アプリで使用するデータをAPIを経由して管理できます
- アプリのデータに合わせたデータベースの自動生成
- データの操作API(生成、更新、削除、さまざまな取得条件の指定)
- 参照範囲の制御。データを生成する際に、データの内容に合わせて参照範囲を「アプリを使用できるユーザー全体」、「ユーザーが所属するグループ」、「ユーザーのみのみ」から選択できます。
- データの更新は排他制御(楽観的ロック)が行われており、同じレコードに対する二重更新を防ぎます
RDBMSの採用
データベースは一般的なmBaaS製品で採用しているNoSQLではなく、RDBMSを使用しています。
そのため、業務システムでは必須である複数のデータの関連性を条件にデータを取得するような処理に向いています。
SDKを利用したアクセス
iOS、Android、JavascriptのSKDを利用した場合、端末内データベースと、サーバー側のデータベースの管理をSDKに任せることができます。 データの配置場所を「端末とサーバー」、「サーバーのみ」、「端末のみ」で選択できます。「端末とサーバー」を選択した場合、オフライン時にも端末内に有るデータを使用してアプリを使用することができます。また、定期的に端末にデータを同期しておくことも設定で可能です。例えば、ログインしているユーザーの所属する営業部のデータのみは端末にダウンロードしておくことができます。
5. ログ収集
次の行うための2つのログレベルのログ収集APIを用意しています。収集したログは管理画面で参照するか、CSVファイルに出力することができます。
6. Pushメッセージ
AppPot上のユーザーにPushメッセージを送信することができます。
グループ宛、全員宛への一斉送信にも対応しています。
APNS(Apple Push Notification Service)、FCM(Firebase 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に定義することができます。