Add some missing authentication specifiers

This commit is contained in:
Ravi Khadiwala
2026-07-09 15:15:54 -05:00
committed by Jon Chambers
parent 0cd0716eb5
commit b539df8e48
8 changed files with 25 additions and 1 deletions
@@ -11,6 +11,8 @@ import "org/signal/chat/tag.proto";
// Provides methods for working with Signal accounts.
service Accounts {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Returns basic identifiers for the authenticated account.
rpc GetAccountIdentity(GetAccountIdentityRequest) returns (GetAccountIdentityResponse) {}
@@ -68,6 +70,8 @@ service Accounts {
// Provides methods for looking up Signal accounts. Callers must not provide
// identifying credentials when calling methods in this service.
service AccountsAnonymous {
option (require.auth) = AUTH_ONLY_ANONYMOUS;
// Checks whether an account with the given service identifier exists.
rpc CheckAccountExistence(CheckAccountExistenceRequest) returns (CheckAccountExistenceResponse) {}
@@ -9,8 +9,11 @@ option java_multiple_files = true;
package org.signal.chat.calling.quality;
import "org/signal/chat/require.proto";
// Provides methods for submitting call quality surveys
service CallQuality {
option (require.auth) = AUTH_ONLY_ANONYMOUS;
// Submits a call quality survey response.
rpc SubmitCallQualitySurvey(SubmitCallQualitySurveyRequest) returns (SubmitCallQualitySurveyResponse) {}
@@ -9,9 +9,12 @@ option java_multiple_files = true;
package org.signal.chat.calling;
import "org/signal/chat/require.proto";
// Provides methods for getting credentials and relay options for one-on-one
// calls.
service Calling {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Retrieves TURN credentials and relay options for one-on-one calls.
rpc GetCallingRelays(GetCallingRelaysRequest) returns (GetCallingRelaysResponse) {}
@@ -15,6 +15,7 @@ package org.signal.chat.credentials;
// authenticated user to authenticate in another service or context without
// revealing their identity.
service Credentials {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Generates and returns an external service credentials for the caller.
rpc GetExternalServiceCredentials(GetExternalServiceCredentialsRequest)
@@ -40,6 +41,7 @@ service Credentials {
// revealing an association between the credentials and the caller's identity to
// the server.
service CredentialsAnonymous {
option (require.auth) = AUTH_ONLY_ANONYMOUS;
// Given a list of secure value recovery (SVR) service credentials and a phone
// number, checks and returns which of the provided credentials were generated
@@ -18,6 +18,8 @@ import "org/signal/chat/tag.proto";
// Provides methods for working with devices attached to a Signal account.
service Devices {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Returns a list of devices associated with the caller's account.
rpc GetDevices(GetDevicesRequest) returns (GetDevicesResponse) {}
@@ -18,6 +18,7 @@ import "org/signal/chat/tag.proto";
// Provides methods for working with pre-keys.
service Keys {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Retrieves an approximate count of the number of the various kinds of
// pre-keys stored for the authenticated device.
@@ -57,6 +58,7 @@ service Keys {
// Provides methods for working with pre-keys using "unidentified access"
// credentials.
service KeysAnonymous {
option (require.auth) = AUTH_ONLY_ANONYMOUS;
// Retrieves a set of pre-keys for establishing a session with the targeted
// device or devices. Callers must not submit any self-identifying credentials
@@ -9,9 +9,13 @@ option java_multiple_files = true;
package org.signal.chat.payments;
import "org/signal/chat/require.proto";
// Provides methods for working with payments.
service Payments {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
rpc GetCurrencyConversions(GetCurrencyConversionsRequest) returns (GetCurrencyConversionsResponse) {}
}
@@ -18,6 +18,8 @@ import "org/signal/chat/tag.proto";
// Provides methods for working with profiles and profile-related data.
service Profile {
option (require.auth) = AUTH_ONLY_AUTHENTICATED;
// Sets profile data and, if needed, returns credentials used by clients to upload a v1 avatar.
rpc SetProfile(SetProfileRequest) returns (SetProfileResponse) {}
@@ -42,6 +44,8 @@ service Profile {
// without an unidentified access key should use the equivalent, authenticated
// methods in `Profile` instead.
service ProfileAnonymous {
option (require.auth) = AUTH_ONLY_ANONYMOUS;
// Retrieves versioned profile data.
rpc GetVersionedProfile(GetVersionedProfileAnonymousRequest) returns (GetVersionedProfileAnonymousResponse) {}
// Retrieves unversioned profile data.