Index: services/authentication/authentication.mojom |
diff --git a/services/authentication/authentication.mojom b/services/authentication/authentication.mojom |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a69e7de1a6853fd4063327b18ceca504710ba8cd |
--- /dev/null |
+++ b/services/authentication/authentication.mojom |
@@ -0,0 +1,27 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+[JavaPackage="org.chromium.mojo.authentication"] |
+module authentication; |
+ |
+// Interface to handle user identity and authentication tokens. |
+// TODO(qsr): This API only handles google accounts at this time. It will need |
+// to be extended to allow generic account manager on the platform. |
+interface AuthenticationService { |
+ // Requests a Google account to use. In case of success, error will be null. |
+ // In case of error, username will be null and error will contain a |
+ // description of the error. |
+ SelectAccount() => (string? username, string? error); |
+ |
+ // Requests an oauth2 token for the given Google account with the given |
+ // scopes. In case of error, username will be null and error will contain a |
+ // description of the error. |
+ GetOAuth2Token(string username, array<string> scopes) => |
+ (string? token, string? error); |
+ |
+ // Requests to clear a previously acquired token. This should be called when a |
+ // token is refused by a server component before requesting a new token to |
+ // clear the token from any cache. |
+ ClearOAuth2Token(string token); |
+}; |