firebase-tools 9.19.0 → 9.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -3
- package/lib/api.js +3 -0
- package/lib/apiv2.js +7 -4
- package/lib/commands/crashlytics-symbols-upload.js +146 -0
- package/lib/commands/deploy.js +9 -1
- package/lib/commands/ext-configure.js +3 -1
- package/lib/commands/ext-dev-deprecate.js +63 -0
- package/lib/commands/ext-dev-undeprecate.js +56 -0
- package/lib/commands/ext-dev-unpublish.js +10 -3
- package/lib/commands/ext-export.js +44 -0
- package/lib/commands/ext-install.js +24 -3
- package/lib/commands/ext-uninstall.js +6 -0
- package/lib/commands/ext-update.js +10 -3
- package/lib/commands/functions-config-export.js +115 -0
- package/lib/commands/functions-delete.js +47 -25
- package/lib/commands/functions-list.js +12 -12
- package/lib/commands/index.js +9 -0
- package/lib/commands/init.js +3 -0
- package/lib/config.js +3 -2
- package/lib/deploy/extensions/args.js +2 -0
- package/lib/deploy/extensions/deploy.js +49 -0
- package/lib/deploy/extensions/deploymentSummary.js +52 -0
- package/lib/deploy/extensions/errors.js +31 -0
- package/lib/deploy/extensions/index.js +8 -0
- package/lib/deploy/extensions/params.js +39 -0
- package/lib/deploy/extensions/planner.js +94 -0
- package/lib/deploy/extensions/prepare.js +111 -0
- package/lib/deploy/extensions/release.js +43 -0
- package/lib/deploy/extensions/secrets.js +150 -0
- package/lib/deploy/extensions/tasks.js +98 -0
- package/lib/deploy/extensions/validate.js +17 -0
- package/lib/deploy/functions/backend.js +93 -115
- package/lib/deploy/functions/checkIam.js +8 -8
- package/lib/deploy/functions/containerCleaner.js +71 -14
- package/lib/deploy/functions/deploy.js +4 -10
- package/lib/deploy/functions/functionsDeployHelper.js +3 -68
- package/lib/deploy/functions/prepare.js +63 -27
- package/lib/deploy/functions/pricing.js +17 -17
- package/lib/deploy/functions/prompts.js +22 -21
- package/lib/deploy/functions/release/executor.js +39 -0
- package/lib/deploy/functions/release/fabricator.js +422 -0
- package/lib/deploy/functions/release/index.js +73 -0
- package/lib/deploy/functions/release/planner.js +162 -0
- package/lib/deploy/functions/release/reporter.js +165 -0
- package/lib/deploy/functions/release/sourceTokenScraper.js +28 -0
- package/lib/deploy/functions/release/timer.js +14 -0
- package/lib/deploy/functions/runtimes/discovery/v1alpha1.js +129 -126
- package/lib/deploy/functions/runtimes/node/parseTriggers.js +41 -45
- package/lib/deploy/functions/triggerRegionHelper.js +40 -0
- package/lib/deploy/functions/validate.js +1 -24
- package/lib/deploy/index.js +10 -1
- package/lib/downloadUtils.js +37 -0
- package/lib/emulator/auth/apiSpec.js +549 -6
- package/lib/emulator/auth/handlers.js +4 -3
- package/lib/emulator/auth/operations.js +154 -14
- package/lib/emulator/auth/server.js +26 -15
- package/lib/emulator/auth/state.js +151 -13
- package/lib/emulator/download.js +2 -31
- package/lib/emulator/downloadableEmulators.js +7 -7
- package/lib/emulator/functionsEmulator.js +18 -4
- package/lib/emulator/functionsEmulatorRuntime.js +29 -7
- package/lib/emulator/storage/cloudFunctions.js +37 -7
- package/lib/extensions/askUserForConsent.js +14 -1
- package/lib/extensions/askUserForParam.js +81 -4
- package/lib/extensions/checkProjectBilling.js +7 -7
- package/lib/extensions/export.js +107 -0
- package/lib/extensions/extensionsApi.js +104 -21
- package/lib/extensions/extensionsHelper.js +6 -2
- package/lib/extensions/listExtensions.js +16 -11
- package/lib/extensions/paramHelper.js +9 -6
- package/lib/extensions/provisioningHelper.js +16 -3
- package/lib/extensions/refs.js +9 -1
- package/lib/extensions/secretsUtils.js +59 -0
- package/lib/extensions/updateHelper.js +12 -2
- package/lib/extensions/versionHelper.js +14 -0
- package/lib/extensions/warnings.js +33 -1
- package/lib/functional.js +8 -1
- package/lib/functions/env.js +10 -4
- package/lib/functions/runtimeConfigExport.js +137 -0
- package/lib/gcp/artifactregistry.js +16 -0
- package/lib/gcp/cloudfunctions.js +20 -74
- package/lib/gcp/cloudfunctionsv2.js +12 -90
- package/lib/gcp/cloudscheduler.js +22 -16
- package/lib/gcp/cloudtasks.js +143 -0
- package/lib/gcp/docker.js +7 -1
- package/lib/gcp/proto.js +2 -2
- package/lib/gcp/pubsub.js +1 -9
- package/lib/gcp/secretManager.js +132 -0
- package/lib/gcp/storage.js +16 -0
- package/lib/projectUtils.js +10 -1
- package/lib/requireInteractive.js +12 -0
- package/lib/utils.js +30 -1
- package/package.json +5 -4
- package/schema/firebase-config.json +9 -0
- package/lib/deploy/functions/deploymentPlanner.js +0 -113
- package/lib/deploy/functions/deploymentTimer.js +0 -23
- package/lib/deploy/functions/errorHandler.js +0 -75
- package/lib/deploy/functions/release.js +0 -116
- package/lib/deploy/functions/tasks.js +0 -324
- package/lib/functions/listFunctions.js +0 -10
- package/lib/functionsDelete.js +0 -60
|
@@ -2055,6 +2055,74 @@ exports.default = {
|
|
|
2055
2055
|
{ $ref: "#/components/parameters/upload_protocol" },
|
|
2056
2056
|
],
|
|
2057
2057
|
},
|
|
2058
|
+
"/v2/projects/{targetProjectId}/config": {
|
|
2059
|
+
get: {
|
|
2060
|
+
description: "Retrieve an Identity Toolkit project configuration.",
|
|
2061
|
+
operationId: "identitytoolkit.projects.getConfig",
|
|
2062
|
+
responses: {
|
|
2063
|
+
200: {
|
|
2064
|
+
description: "Successful response",
|
|
2065
|
+
content: {
|
|
2066
|
+
"*/*": {
|
|
2067
|
+
schema: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Config" },
|
|
2068
|
+
},
|
|
2069
|
+
},
|
|
2070
|
+
},
|
|
2071
|
+
},
|
|
2072
|
+
parameters: [
|
|
2073
|
+
{ name: "targetProjectId", in: "path", required: true, schema: { type: "string" } },
|
|
2074
|
+
],
|
|
2075
|
+
security: [{ Oauth2: ["https://www.googleapis.com/auth/cloud-platform"] }, { apiKey: [] }],
|
|
2076
|
+
tags: ["projects"],
|
|
2077
|
+
},
|
|
2078
|
+
patch: {
|
|
2079
|
+
description: "Update an Identity Toolkit project configuration.",
|
|
2080
|
+
operationId: "identitytoolkit.projects.updateConfig",
|
|
2081
|
+
responses: {
|
|
2082
|
+
200: {
|
|
2083
|
+
description: "Successful response",
|
|
2084
|
+
content: {
|
|
2085
|
+
"*/*": {
|
|
2086
|
+
schema: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Config" },
|
|
2087
|
+
},
|
|
2088
|
+
},
|
|
2089
|
+
},
|
|
2090
|
+
},
|
|
2091
|
+
parameters: [
|
|
2092
|
+
{ name: "targetProjectId", in: "path", required: true, schema: { type: "string" } },
|
|
2093
|
+
{
|
|
2094
|
+
name: "updateMask",
|
|
2095
|
+
in: "query",
|
|
2096
|
+
description: "The update mask applies to the resource. Fields set in the config but not included in this update mask will be ignored. For the `FieldMask` definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
|
|
2097
|
+
schema: { type: "string" },
|
|
2098
|
+
},
|
|
2099
|
+
],
|
|
2100
|
+
requestBody: {
|
|
2101
|
+
content: {
|
|
2102
|
+
"application/json": {
|
|
2103
|
+
schema: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Config" },
|
|
2104
|
+
},
|
|
2105
|
+
},
|
|
2106
|
+
},
|
|
2107
|
+
security: [
|
|
2108
|
+
{ Oauth2: ["https://www.googleapis.com/auth/cloud-platform"] },
|
|
2109
|
+
{ Oauth2: ["https://www.googleapis.com/auth/firebase"] },
|
|
2110
|
+
{ apiKey: [] },
|
|
2111
|
+
],
|
|
2112
|
+
tags: ["projects"],
|
|
2113
|
+
},
|
|
2114
|
+
parameters: [
|
|
2115
|
+
{ $ref: "#/components/parameters/access_token" },
|
|
2116
|
+
{ $ref: "#/components/parameters/alt" },
|
|
2117
|
+
{ $ref: "#/components/parameters/callback" },
|
|
2118
|
+
{ $ref: "#/components/parameters/fields" },
|
|
2119
|
+
{ $ref: "#/components/parameters/oauth_token" },
|
|
2120
|
+
{ $ref: "#/components/parameters/prettyPrint" },
|
|
2121
|
+
{ $ref: "#/components/parameters/quotaUser" },
|
|
2122
|
+
{ $ref: "#/components/parameters/uploadType" },
|
|
2123
|
+
{ $ref: "#/components/parameters/upload_protocol" },
|
|
2124
|
+
],
|
|
2125
|
+
},
|
|
2058
2126
|
"/v2/projects/{targetProjectId}/defaultSupportedIdpConfigs": {
|
|
2059
2127
|
post: {
|
|
2060
2128
|
description: "Create a default supported Idp configuration for an Identity Toolkit project.",
|
|
@@ -3512,6 +3580,37 @@ exports.default = {
|
|
|
3512
3580
|
tags: ["emulator"],
|
|
3513
3581
|
},
|
|
3514
3582
|
},
|
|
3583
|
+
"/emulator/v1/projects/{targetProjectId}/tenants/{tenantId}/accounts": {
|
|
3584
|
+
parameters: [
|
|
3585
|
+
{
|
|
3586
|
+
name: "targetProjectId",
|
|
3587
|
+
in: "path",
|
|
3588
|
+
description: "The ID of the Google Cloud project that the accounts belong to.",
|
|
3589
|
+
required: true,
|
|
3590
|
+
schema: { type: "string" },
|
|
3591
|
+
},
|
|
3592
|
+
{
|
|
3593
|
+
name: "tenantId",
|
|
3594
|
+
in: "path",
|
|
3595
|
+
description: "The ID of the Identity Platform tenant the accounts belongs to. If not specified, accounts on the Identity Platform project are returned.",
|
|
3596
|
+
required: true,
|
|
3597
|
+
schema: { type: "string" },
|
|
3598
|
+
},
|
|
3599
|
+
],
|
|
3600
|
+
servers: [{ url: "" }],
|
|
3601
|
+
delete: {
|
|
3602
|
+
description: "Remove all accounts in the project, regardless of state.",
|
|
3603
|
+
operationId: "emulator.projects.accounts.delete",
|
|
3604
|
+
responses: {
|
|
3605
|
+
200: {
|
|
3606
|
+
description: "Successful response",
|
|
3607
|
+
content: { "application/json": { schema: { type: "object" } } },
|
|
3608
|
+
},
|
|
3609
|
+
},
|
|
3610
|
+
security: [],
|
|
3611
|
+
tags: ["emulator"],
|
|
3612
|
+
},
|
|
3613
|
+
},
|
|
3515
3614
|
"/emulator/v1/projects/{targetProjectId}/config": {
|
|
3516
3615
|
parameters: [
|
|
3517
3616
|
{
|
|
@@ -3591,6 +3690,41 @@ exports.default = {
|
|
|
3591
3690
|
tags: ["emulator"],
|
|
3592
3691
|
},
|
|
3593
3692
|
},
|
|
3693
|
+
"/emulator/v1/projects/{targetProjectId}/tenants/{tenantId}/oobCodes": {
|
|
3694
|
+
parameters: [
|
|
3695
|
+
{
|
|
3696
|
+
name: "targetProjectId",
|
|
3697
|
+
in: "path",
|
|
3698
|
+
description: "The ID of the Google Cloud project that the confirmation codes belongs to.",
|
|
3699
|
+
required: true,
|
|
3700
|
+
schema: { type: "string" },
|
|
3701
|
+
},
|
|
3702
|
+
{
|
|
3703
|
+
name: "tenantId",
|
|
3704
|
+
in: "path",
|
|
3705
|
+
description: "The ID of the Identity Platform tenant the accounts belongs to. If not specified, accounts on the Identity Platform project are returned.",
|
|
3706
|
+
required: true,
|
|
3707
|
+
schema: { type: "string" },
|
|
3708
|
+
},
|
|
3709
|
+
],
|
|
3710
|
+
servers: [{ url: "" }],
|
|
3711
|
+
get: {
|
|
3712
|
+
description: "List all pending confirmation codes for the project.",
|
|
3713
|
+
operationId: "emulator.projects.oobCodes.list",
|
|
3714
|
+
responses: {
|
|
3715
|
+
200: {
|
|
3716
|
+
description: "Successful response",
|
|
3717
|
+
content: {
|
|
3718
|
+
"application/json": {
|
|
3719
|
+
schema: { $ref: "#/components/schemas/EmulatorV1ProjectsOobCodes" },
|
|
3720
|
+
},
|
|
3721
|
+
},
|
|
3722
|
+
},
|
|
3723
|
+
},
|
|
3724
|
+
security: [],
|
|
3725
|
+
tags: ["emulator"],
|
|
3726
|
+
},
|
|
3727
|
+
},
|
|
3594
3728
|
"/emulator/v1/projects/{targetProjectId}/verificationCodes": {
|
|
3595
3729
|
parameters: [
|
|
3596
3730
|
{
|
|
@@ -3619,6 +3753,41 @@ exports.default = {
|
|
|
3619
3753
|
tags: ["emulator"],
|
|
3620
3754
|
},
|
|
3621
3755
|
},
|
|
3756
|
+
"/emulator/v1/projects/{targetProjectId}/tenants/{tenantId}/verificationCodes": {
|
|
3757
|
+
parameters: [
|
|
3758
|
+
{
|
|
3759
|
+
name: "targetProjectId",
|
|
3760
|
+
in: "path",
|
|
3761
|
+
description: "The ID of the Google Cloud project that the verification codes belongs to.",
|
|
3762
|
+
required: true,
|
|
3763
|
+
schema: { type: "string" },
|
|
3764
|
+
},
|
|
3765
|
+
{
|
|
3766
|
+
name: "tenantId",
|
|
3767
|
+
in: "path",
|
|
3768
|
+
description: "The ID of the Identity Platform tenant the accounts belongs to. If not specified, accounts on the Identity Platform project are returned.",
|
|
3769
|
+
required: true,
|
|
3770
|
+
schema: { type: "string" },
|
|
3771
|
+
},
|
|
3772
|
+
],
|
|
3773
|
+
servers: [{ url: "" }],
|
|
3774
|
+
get: {
|
|
3775
|
+
description: "List all pending phone verification codes for the project.",
|
|
3776
|
+
operationId: "emulator.projects.verificationCodes.list",
|
|
3777
|
+
responses: {
|
|
3778
|
+
200: {
|
|
3779
|
+
description: "Successful response",
|
|
3780
|
+
content: {
|
|
3781
|
+
"application/json": {
|
|
3782
|
+
schema: { $ref: "#/components/schemas/EmulatorV1ProjectsOobCodes" },
|
|
3783
|
+
},
|
|
3784
|
+
},
|
|
3785
|
+
},
|
|
3786
|
+
},
|
|
3787
|
+
security: [],
|
|
3788
|
+
tags: ["emulator"],
|
|
3789
|
+
},
|
|
3790
|
+
},
|
|
3622
3791
|
},
|
|
3623
3792
|
components: {
|
|
3624
3793
|
schemas: {
|
|
@@ -4840,7 +5009,7 @@ exports.default = {
|
|
|
4840
5009
|
type: "string",
|
|
4841
5010
|
},
|
|
4842
5011
|
postBody: {
|
|
4843
|
-
description: "If the user is signing in with an authorization response obtained via a previous CreateAuthUri authorization request, this is the body of the HTTP POST callback from the IdP, if present. Otherwise, if the user is signing in with a manually provided IdP credential, this should be a URL-encoded form that contains the credential (e.g. an ID token or access token for OAuth 2.0 IdPs) and the provider ID of the IdP that issued the credential. For example, if the user is signing in to the Google provider using a Google ID token, this should be set to `id_token=[GOOGLE_ID_TOKEN]&providerId=google.com`, where `[GOOGLE_ID_TOKEN]` should be replaced with the Google ID token. If the user is signing in to the Facebook provider using a Facebook access token, this should be set to `access_token=[FACEBOOK_ACCESS_TOKEN]&providerId=facebook.com`, where `[FACEBOOK_ACCESS_TOKEN]` should be replaced with the Facebook access token. If the user is signing in to the Twitter provider using a Twitter OAuth 1.0 credential, this should be set to `access_token=[TWITTER_ACCESS_TOKEN]&oauth_token_secret=[TWITTER_TOKEN_SECRET]&providerId=twitter.com`, where `[TWITTER_ACCESS_TOKEN]` and `[TWITTER_TOKEN_SECRET]` should be replaced with the Twitter OAuth access token and Twitter OAuth token secret respectively.",
|
|
5012
|
+
description: "If the user is signing in with an authorization response obtained via a previous CreateAuthUri authorization request, this is the body of the HTTP POST callback from the IdP, if present. Otherwise, if the user is signing in with a manually provided IdP credential, this should be a URL-encoded form that contains the credential (e.g. an ID token or access token for OAuth 2.0 IdPs) and the provider ID of the IdP that issued the credential. For example, if the user is signing in to the Google provider using a Google ID token, this should be set to `id_token=[GOOGLE_ID_TOKEN]&providerId=google.com`, where `[GOOGLE_ID_TOKEN]` should be replaced with the Google ID token. If the user is signing in to the Facebook provider using a Facebook authentication token, this should be set to `id_token=[FACEBOOK_AUTHENTICATION_TOKEN]&providerId=facebook.com&nonce= [NONCE]`, where `[FACEBOOK_AUTHENTICATION_TOKEN]` should be replaced with the Facebook authentication token. Nonce is required for validating the token. The request will fail if no nonce is provided. If the user is signing in to the Facebook provider using a Facebook access token, this should be set to `access_token=[FACEBOOK_ACCESS_TOKEN]&providerId=facebook.com`, where `[FACEBOOK_ACCESS_TOKEN]` should be replaced with the Facebook access token. If the user is signing in to the Twitter provider using a Twitter OAuth 1.0 credential, this should be set to `access_token=[TWITTER_ACCESS_TOKEN]&oauth_token_secret=[TWITTER_TOKEN_SECRET]&providerId=twitter.com`, where `[TWITTER_ACCESS_TOKEN]` and `[TWITTER_TOKEN_SECRET]` should be replaced with the Twitter OAuth access token and Twitter OAuth token secret respectively.",
|
|
4844
5013
|
type: "string",
|
|
4845
5014
|
},
|
|
4846
5015
|
requestUri: {
|
|
@@ -5530,6 +5699,16 @@ exports.default = {
|
|
|
5530
5699
|
},
|
|
5531
5700
|
type: "object",
|
|
5532
5701
|
},
|
|
5702
|
+
GoogleCloudIdentitytoolkitAdminV2Anonymous: {
|
|
5703
|
+
description: "Configuration options related to authenticating an anonymous user.",
|
|
5704
|
+
properties: {
|
|
5705
|
+
enabled: {
|
|
5706
|
+
description: "Whether anonymous user auth is enabled for the project or not.",
|
|
5707
|
+
type: "boolean",
|
|
5708
|
+
},
|
|
5709
|
+
},
|
|
5710
|
+
type: "object",
|
|
5711
|
+
},
|
|
5533
5712
|
GoogleCloudIdentitytoolkitAdminV2AppleSignInConfig: {
|
|
5534
5713
|
description: "Additional config for SignInWithApple.",
|
|
5535
5714
|
properties: {
|
|
@@ -5544,6 +5723,41 @@ exports.default = {
|
|
|
5544
5723
|
},
|
|
5545
5724
|
type: "object",
|
|
5546
5725
|
},
|
|
5726
|
+
GoogleCloudIdentitytoolkitAdminV2BlockingFunctionsConfig: {
|
|
5727
|
+
description: "Configuration related to Blocking Functions.",
|
|
5728
|
+
properties: {
|
|
5729
|
+
forwardInboundCredentials: {
|
|
5730
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2ForwardInboundCredentials",
|
|
5731
|
+
},
|
|
5732
|
+
triggers: {
|
|
5733
|
+
additionalProperties: {
|
|
5734
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Trigger",
|
|
5735
|
+
},
|
|
5736
|
+
description: 'Map of Trigger to event type. Key should be one of the supported event types: "beforeCreate", "beforeSignIn"',
|
|
5737
|
+
type: "object",
|
|
5738
|
+
},
|
|
5739
|
+
},
|
|
5740
|
+
type: "object",
|
|
5741
|
+
},
|
|
5742
|
+
GoogleCloudIdentitytoolkitAdminV2ClientConfig: {
|
|
5743
|
+
description: "Options related to how clients making requests on behalf of a project should be configured.",
|
|
5744
|
+
properties: {
|
|
5745
|
+
apiKey: {
|
|
5746
|
+
description: "Output only. API key that can be used when making requests for this project.",
|
|
5747
|
+
readOnly: true,
|
|
5748
|
+
type: "string",
|
|
5749
|
+
},
|
|
5750
|
+
firebaseSubdomain: {
|
|
5751
|
+
description: "Output only. Firebase subdomain.",
|
|
5752
|
+
readOnly: true,
|
|
5753
|
+
type: "string",
|
|
5754
|
+
},
|
|
5755
|
+
permissions: {
|
|
5756
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Permissions",
|
|
5757
|
+
},
|
|
5758
|
+
},
|
|
5759
|
+
type: "object",
|
|
5760
|
+
},
|
|
5547
5761
|
GoogleCloudIdentitytoolkitAdminV2CodeFlowConfig: {
|
|
5548
5762
|
description: "Additional config for Apple for code flow.",
|
|
5549
5763
|
properties: {
|
|
@@ -5556,6 +5770,46 @@ exports.default = {
|
|
|
5556
5770
|
},
|
|
5557
5771
|
type: "object",
|
|
5558
5772
|
},
|
|
5773
|
+
GoogleCloudIdentitytoolkitAdminV2Config: {
|
|
5774
|
+
description: "Represents an Identity Toolkit project.",
|
|
5775
|
+
properties: {
|
|
5776
|
+
authorizedDomains: {
|
|
5777
|
+
description: "List of domains authorized for OAuth redirects",
|
|
5778
|
+
items: { type: "string" },
|
|
5779
|
+
type: "array",
|
|
5780
|
+
},
|
|
5781
|
+
blockingFunctions: {
|
|
5782
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2BlockingFunctionsConfig",
|
|
5783
|
+
},
|
|
5784
|
+
client: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2ClientConfig" },
|
|
5785
|
+
mfa: {
|
|
5786
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig",
|
|
5787
|
+
},
|
|
5788
|
+
monitoring: {
|
|
5789
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2MonitoringConfig",
|
|
5790
|
+
},
|
|
5791
|
+
multiTenant: {
|
|
5792
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2MultiTenantConfig",
|
|
5793
|
+
},
|
|
5794
|
+
name: {
|
|
5795
|
+
description: 'Output only. The name of the Config resource. Example: "projects/my-awesome-project/config"',
|
|
5796
|
+
readOnly: true,
|
|
5797
|
+
type: "string",
|
|
5798
|
+
},
|
|
5799
|
+
notification: {
|
|
5800
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2NotificationConfig",
|
|
5801
|
+
},
|
|
5802
|
+
quota: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2QuotaConfig" },
|
|
5803
|
+
signIn: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2SignInConfig" },
|
|
5804
|
+
subtype: {
|
|
5805
|
+
description: "Output only. The subtype of this config.",
|
|
5806
|
+
enum: ["SUBTYPE_UNSPECIFIED", "IDENTITY_PLATFORM", "FIREBASE_AUTH"],
|
|
5807
|
+
readOnly: true,
|
|
5808
|
+
type: "string",
|
|
5809
|
+
},
|
|
5810
|
+
},
|
|
5811
|
+
type: "object",
|
|
5812
|
+
},
|
|
5559
5813
|
GoogleCloudIdentitytoolkitAdminV2DefaultSupportedIdp: {
|
|
5560
5814
|
description: "Standard Identity Toolkit-trusted IDPs.",
|
|
5561
5815
|
properties: {
|
|
@@ -5583,6 +5837,94 @@ exports.default = {
|
|
|
5583
5837
|
},
|
|
5584
5838
|
type: "object",
|
|
5585
5839
|
},
|
|
5840
|
+
GoogleCloudIdentitytoolkitAdminV2DnsInfo: {
|
|
5841
|
+
description: "Information of custom domain DNS verification. By default, default_domain will be used. A custom domain can be configured using VerifyCustomDomain.",
|
|
5842
|
+
properties: {
|
|
5843
|
+
customDomain: {
|
|
5844
|
+
description: "Output only. The applied verified custom domain.",
|
|
5845
|
+
readOnly: true,
|
|
5846
|
+
type: "string",
|
|
5847
|
+
},
|
|
5848
|
+
customDomainState: {
|
|
5849
|
+
description: "Output only. The current verification state of the custom domain. The custom domain will only be used once the domain verification is successful.",
|
|
5850
|
+
enum: [
|
|
5851
|
+
"VERIFICATION_STATE_UNSPECIFIED",
|
|
5852
|
+
"NOT_STARTED",
|
|
5853
|
+
"IN_PROGRESS",
|
|
5854
|
+
"FAILED",
|
|
5855
|
+
"SUCCEEDED",
|
|
5856
|
+
],
|
|
5857
|
+
readOnly: true,
|
|
5858
|
+
type: "string",
|
|
5859
|
+
},
|
|
5860
|
+
domainVerificationRequestTime: {
|
|
5861
|
+
description: "Output only. The timestamp of initial request for the current domain verification.",
|
|
5862
|
+
format: "google-datetime",
|
|
5863
|
+
readOnly: true,
|
|
5864
|
+
type: "string",
|
|
5865
|
+
},
|
|
5866
|
+
pendingCustomDomain: {
|
|
5867
|
+
description: "Output only. The custom domain that's to be verified.",
|
|
5868
|
+
readOnly: true,
|
|
5869
|
+
type: "string",
|
|
5870
|
+
},
|
|
5871
|
+
useCustomDomain: { description: "Whether to use custom domain.", type: "boolean" },
|
|
5872
|
+
},
|
|
5873
|
+
type: "object",
|
|
5874
|
+
},
|
|
5875
|
+
GoogleCloudIdentitytoolkitAdminV2Email: {
|
|
5876
|
+
description: "Configuration options related to authenticating a user by their email address.",
|
|
5877
|
+
properties: {
|
|
5878
|
+
enabled: {
|
|
5879
|
+
description: "Whether email auth is enabled for the project or not.",
|
|
5880
|
+
type: "boolean",
|
|
5881
|
+
},
|
|
5882
|
+
passwordRequired: {
|
|
5883
|
+
description: "Whether a password is required for email auth or not. If true, both an email and password must be provided to sign in. If false, a user may sign in via either email/password or email link.",
|
|
5884
|
+
type: "boolean",
|
|
5885
|
+
},
|
|
5886
|
+
},
|
|
5887
|
+
type: "object",
|
|
5888
|
+
},
|
|
5889
|
+
GoogleCloudIdentitytoolkitAdminV2EmailTemplate: {
|
|
5890
|
+
description: "Email template. The subject and body fields can contain the following placeholders which will be replaced with the appropriate values: %LINK% - The link to use to redeem the send OOB code. %EMAIL% - The email where the email is being sent. %NEW_EMAIL% - The new email being set for the account (when applicable). %APP_NAME% - The GCP project's display name. %DISPLAY_NAME% - The user's display name.",
|
|
5891
|
+
properties: {
|
|
5892
|
+
body: { description: "Email body", type: "string" },
|
|
5893
|
+
bodyFormat: {
|
|
5894
|
+
description: "Email body format",
|
|
5895
|
+
enum: ["BODY_FORMAT_UNSPECIFIED", "PLAIN_TEXT", "HTML"],
|
|
5896
|
+
type: "string",
|
|
5897
|
+
},
|
|
5898
|
+
customized: {
|
|
5899
|
+
description: "Output only. Whether the body or subject of the email is customized.",
|
|
5900
|
+
readOnly: true,
|
|
5901
|
+
type: "boolean",
|
|
5902
|
+
},
|
|
5903
|
+
replyTo: { description: "Reply-to address", type: "string" },
|
|
5904
|
+
senderDisplayName: { description: "Sender display name", type: "string" },
|
|
5905
|
+
senderLocalPart: { description: "Local part of From address", type: "string" },
|
|
5906
|
+
subject: { description: "Subject of the email", type: "string" },
|
|
5907
|
+
},
|
|
5908
|
+
type: "object",
|
|
5909
|
+
},
|
|
5910
|
+
GoogleCloudIdentitytoolkitAdminV2ForwardInboundCredentials: {
|
|
5911
|
+
description: "Indicates which credentials to pass to the registered Blocking Functions.",
|
|
5912
|
+
properties: {
|
|
5913
|
+
accessToken: {
|
|
5914
|
+
description: "Whether to pass the user's OAuth identity provider's access token.",
|
|
5915
|
+
type: "boolean",
|
|
5916
|
+
},
|
|
5917
|
+
idToken: {
|
|
5918
|
+
description: "Whether to pass the user's OIDC identity provider's ID token.",
|
|
5919
|
+
type: "boolean",
|
|
5920
|
+
},
|
|
5921
|
+
refreshToken: {
|
|
5922
|
+
description: "Whether to pass the user's OAuth identity provider's refresh token.",
|
|
5923
|
+
type: "boolean",
|
|
5924
|
+
},
|
|
5925
|
+
},
|
|
5926
|
+
type: "object",
|
|
5927
|
+
},
|
|
5586
5928
|
GoogleCloudIdentitytoolkitAdminV2HashConfig: {
|
|
5587
5929
|
description: "History information of the hash algorithm and key. Different accounts' passwords may be generated by different version.",
|
|
5588
5930
|
properties: {
|
|
@@ -5765,6 +6107,15 @@ exports.default = {
|
|
|
5765
6107
|
},
|
|
5766
6108
|
type: "object",
|
|
5767
6109
|
},
|
|
6110
|
+
GoogleCloudIdentitytoolkitAdminV2MonitoringConfig: {
|
|
6111
|
+
description: "Configuration related to monitoring project activity.",
|
|
6112
|
+
properties: {
|
|
6113
|
+
requestLogging: {
|
|
6114
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2RequestLogging",
|
|
6115
|
+
},
|
|
6116
|
+
},
|
|
6117
|
+
type: "object",
|
|
6118
|
+
},
|
|
5768
6119
|
GoogleCloudIdentitytoolkitAdminV2MultiFactorAuthConfig: {
|
|
5769
6120
|
description: "Options related to MultiFactor Authentication for the project.",
|
|
5770
6121
|
properties: {
|
|
@@ -5781,6 +6132,32 @@ exports.default = {
|
|
|
5781
6132
|
},
|
|
5782
6133
|
type: "object",
|
|
5783
6134
|
},
|
|
6135
|
+
GoogleCloudIdentitytoolkitAdminV2MultiTenantConfig: {
|
|
6136
|
+
description: "Configuration related to multi-tenant functionality.",
|
|
6137
|
+
properties: {
|
|
6138
|
+
allowTenants: {
|
|
6139
|
+
description: "Whether this project can have tenants or not.",
|
|
6140
|
+
type: "boolean",
|
|
6141
|
+
},
|
|
6142
|
+
defaultTenantLocation: {
|
|
6143
|
+
description: 'The default cloud parent org or folder that the tenant project should be created under. The parent resource name should be in the format of "/", such as "folders/123" or "organizations/456". If the value is not set, the tenant will be created under the same organization or folder as the agent project.',
|
|
6144
|
+
type: "string",
|
|
6145
|
+
},
|
|
6146
|
+
},
|
|
6147
|
+
type: "object",
|
|
6148
|
+
},
|
|
6149
|
+
GoogleCloudIdentitytoolkitAdminV2NotificationConfig: {
|
|
6150
|
+
description: "Configuration related to sending notifications to users.",
|
|
6151
|
+
properties: {
|
|
6152
|
+
defaultLocale: {
|
|
6153
|
+
description: "Default locale used for email and SMS in IETF BCP 47 format.",
|
|
6154
|
+
type: "string",
|
|
6155
|
+
},
|
|
6156
|
+
sendEmail: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2SendEmail" },
|
|
6157
|
+
sendSms: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2SendSms" },
|
|
6158
|
+
},
|
|
6159
|
+
type: "object",
|
|
6160
|
+
},
|
|
5784
6161
|
GoogleCloudIdentitytoolkitAdminV2OAuthIdpConfig: {
|
|
5785
6162
|
description: "Configuration options for authenticating with an OAuth IDP.",
|
|
5786
6163
|
properties: {
|
|
@@ -5826,6 +6203,139 @@ exports.default = {
|
|
|
5826
6203
|
},
|
|
5827
6204
|
type: "object",
|
|
5828
6205
|
},
|
|
6206
|
+
GoogleCloudIdentitytoolkitAdminV2Permissions: {
|
|
6207
|
+
description: "Configuration related to restricting a user's ability to affect their account.",
|
|
6208
|
+
properties: {
|
|
6209
|
+
disabledUserDeletion: {
|
|
6210
|
+
description: "When true, end users cannot delete their account on the associated project through any of our API methods",
|
|
6211
|
+
type: "boolean",
|
|
6212
|
+
},
|
|
6213
|
+
disabledUserSignup: {
|
|
6214
|
+
description: "When true, end users cannot sign up for a new account on the associated project through any of our API methods",
|
|
6215
|
+
type: "boolean",
|
|
6216
|
+
},
|
|
6217
|
+
},
|
|
6218
|
+
type: "object",
|
|
6219
|
+
},
|
|
6220
|
+
GoogleCloudIdentitytoolkitAdminV2PhoneNumber: {
|
|
6221
|
+
description: "Configuration options related to authenticated a user by their phone number.",
|
|
6222
|
+
properties: {
|
|
6223
|
+
enabled: {
|
|
6224
|
+
description: "Whether phone number auth is enabled for the project or not.",
|
|
6225
|
+
type: "boolean",
|
|
6226
|
+
},
|
|
6227
|
+
testPhoneNumbers: {
|
|
6228
|
+
additionalProperties: { type: "string" },
|
|
6229
|
+
description: "A map of that can be used for phone auth testing.",
|
|
6230
|
+
type: "object",
|
|
6231
|
+
},
|
|
6232
|
+
},
|
|
6233
|
+
type: "object",
|
|
6234
|
+
},
|
|
6235
|
+
GoogleCloudIdentitytoolkitAdminV2QuotaConfig: {
|
|
6236
|
+
description: "Configuration related to quotas.",
|
|
6237
|
+
properties: {
|
|
6238
|
+
signUpQuotaConfig: {
|
|
6239
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2TemporaryQuota",
|
|
6240
|
+
},
|
|
6241
|
+
},
|
|
6242
|
+
type: "object",
|
|
6243
|
+
},
|
|
6244
|
+
GoogleCloudIdentitytoolkitAdminV2RequestLogging: {
|
|
6245
|
+
description: "Configuration for logging requests made to this project to Stackdriver Logging",
|
|
6246
|
+
properties: {
|
|
6247
|
+
enabled: {
|
|
6248
|
+
description: "Whether logging is enabled for this project or not.",
|
|
6249
|
+
type: "boolean",
|
|
6250
|
+
},
|
|
6251
|
+
},
|
|
6252
|
+
type: "object",
|
|
6253
|
+
},
|
|
6254
|
+
GoogleCloudIdentitytoolkitAdminV2SendEmail: {
|
|
6255
|
+
description: "Options for email sending.",
|
|
6256
|
+
properties: {
|
|
6257
|
+
callbackUri: { description: "action url in email template.", type: "string" },
|
|
6258
|
+
changeEmailTemplate: {
|
|
6259
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2EmailTemplate",
|
|
6260
|
+
},
|
|
6261
|
+
dnsInfo: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2DnsInfo" },
|
|
6262
|
+
legacyResetPasswordTemplate: {
|
|
6263
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2EmailTemplate",
|
|
6264
|
+
},
|
|
6265
|
+
method: {
|
|
6266
|
+
description: "The method used for sending an email.",
|
|
6267
|
+
enum: ["METHOD_UNSPECIFIED", "DEFAULT", "CUSTOM_SMTP"],
|
|
6268
|
+
type: "string",
|
|
6269
|
+
},
|
|
6270
|
+
resetPasswordTemplate: {
|
|
6271
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2EmailTemplate",
|
|
6272
|
+
},
|
|
6273
|
+
revertSecondFactorAdditionTemplate: {
|
|
6274
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2EmailTemplate",
|
|
6275
|
+
},
|
|
6276
|
+
smtp: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Smtp" },
|
|
6277
|
+
verifyEmailTemplate: {
|
|
6278
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2EmailTemplate",
|
|
6279
|
+
},
|
|
6280
|
+
},
|
|
6281
|
+
type: "object",
|
|
6282
|
+
},
|
|
6283
|
+
GoogleCloudIdentitytoolkitAdminV2SendSms: {
|
|
6284
|
+
description: "Options for SMS sending.",
|
|
6285
|
+
properties: {
|
|
6286
|
+
smsTemplate: {
|
|
6287
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2SmsTemplate",
|
|
6288
|
+
},
|
|
6289
|
+
useDeviceLocale: {
|
|
6290
|
+
description: "Whether to use the accept_language header for SMS.",
|
|
6291
|
+
type: "boolean",
|
|
6292
|
+
},
|
|
6293
|
+
},
|
|
6294
|
+
type: "object",
|
|
6295
|
+
},
|
|
6296
|
+
GoogleCloudIdentitytoolkitAdminV2SignInConfig: {
|
|
6297
|
+
description: "Configuration related to local sign in methods.",
|
|
6298
|
+
properties: {
|
|
6299
|
+
allowDuplicateEmails: {
|
|
6300
|
+
description: "Whether to allow more than one account to have the same email.",
|
|
6301
|
+
type: "boolean",
|
|
6302
|
+
},
|
|
6303
|
+
anonymous: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Anonymous" },
|
|
6304
|
+
email: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2Email" },
|
|
6305
|
+
hashConfig: { $ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2HashConfig" },
|
|
6306
|
+
phoneNumber: {
|
|
6307
|
+
$ref: "#/components/schemas/GoogleCloudIdentitytoolkitAdminV2PhoneNumber",
|
|
6308
|
+
},
|
|
6309
|
+
},
|
|
6310
|
+
type: "object",
|
|
6311
|
+
},
|
|
6312
|
+
GoogleCloudIdentitytoolkitAdminV2SmsTemplate: {
|
|
6313
|
+
description: "The template to use when sending an SMS.",
|
|
6314
|
+
properties: {
|
|
6315
|
+
content: {
|
|
6316
|
+
description: "Output only. The SMS's content. Can contain the following placeholders which will be replaced with the appropriate values: %APP_NAME% - For Android or iOS apps, the app's display name. For web apps, the domain hosting the application. %LOGIN_CODE% - The OOB code being sent in the SMS.",
|
|
6317
|
+
readOnly: true,
|
|
6318
|
+
type: "string",
|
|
6319
|
+
},
|
|
6320
|
+
},
|
|
6321
|
+
type: "object",
|
|
6322
|
+
},
|
|
6323
|
+
GoogleCloudIdentitytoolkitAdminV2Smtp: {
|
|
6324
|
+
description: "Configuration for SMTP relay",
|
|
6325
|
+
properties: {
|
|
6326
|
+
host: { description: "SMTP relay host", type: "string" },
|
|
6327
|
+
password: { description: "SMTP relay password", type: "string" },
|
|
6328
|
+
port: { description: "SMTP relay port", format: "int32", type: "integer" },
|
|
6329
|
+
securityMode: {
|
|
6330
|
+
description: "SMTP security mode.",
|
|
6331
|
+
enum: ["SECURITY_MODE_UNSPECIFIED", "SSL", "START_TLS"],
|
|
6332
|
+
type: "string",
|
|
6333
|
+
},
|
|
6334
|
+
senderEmail: { description: "Sender email for the SMTP relay", type: "string" },
|
|
6335
|
+
username: { description: "SMTP relay username", type: "string" },
|
|
6336
|
+
},
|
|
6337
|
+
type: "object",
|
|
6338
|
+
},
|
|
5829
6339
|
GoogleCloudIdentitytoolkitAdminV2SpCertificate: {
|
|
5830
6340
|
description: "The SP's certificate data for IDP to verify the SAMLRequest generated by the SP.",
|
|
5831
6341
|
properties: {
|
|
@@ -5855,6 +6365,27 @@ exports.default = {
|
|
|
5855
6365
|
},
|
|
5856
6366
|
type: "object",
|
|
5857
6367
|
},
|
|
6368
|
+
GoogleCloudIdentitytoolkitAdminV2TemporaryQuota: {
|
|
6369
|
+
description: "Temporary quota increase / decrease",
|
|
6370
|
+
properties: {
|
|
6371
|
+
quota: {
|
|
6372
|
+
description: "Corresponds to the 'refill_token_count' field in QuotaServer config",
|
|
6373
|
+
format: "int64",
|
|
6374
|
+
type: "string",
|
|
6375
|
+
},
|
|
6376
|
+
quotaDuration: {
|
|
6377
|
+
description: "How long this quota will be active for",
|
|
6378
|
+
format: "google-duration",
|
|
6379
|
+
type: "string",
|
|
6380
|
+
},
|
|
6381
|
+
startTime: {
|
|
6382
|
+
description: "When this quota will take affect",
|
|
6383
|
+
format: "google-datetime",
|
|
6384
|
+
type: "string",
|
|
6385
|
+
},
|
|
6386
|
+
},
|
|
6387
|
+
type: "object",
|
|
6388
|
+
},
|
|
5858
6389
|
GoogleCloudIdentitytoolkitAdminV2Tenant: {
|
|
5859
6390
|
description: "A Tenant contains configuration for the tenant in a multi-tenant project.",
|
|
5860
6391
|
properties: {
|
|
@@ -5895,6 +6426,18 @@ exports.default = {
|
|
|
5895
6426
|
},
|
|
5896
6427
|
type: "object",
|
|
5897
6428
|
},
|
|
6429
|
+
GoogleCloudIdentitytoolkitAdminV2Trigger: {
|
|
6430
|
+
description: "Synchronous Cloud Function with HTTP Trigger",
|
|
6431
|
+
properties: {
|
|
6432
|
+
functionUri: { description: "HTTP URI trigger for the Cloud Function.", type: "string" },
|
|
6433
|
+
updateTime: {
|
|
6434
|
+
description: "When the trigger was changed.",
|
|
6435
|
+
format: "google-datetime",
|
|
6436
|
+
type: "string",
|
|
6437
|
+
},
|
|
6438
|
+
},
|
|
6439
|
+
type: "object",
|
|
6440
|
+
},
|
|
5898
6441
|
GoogleCloudIdentitytoolkitV2AutoRetrievalInfo: {
|
|
5899
6442
|
description: "The information required to auto-retrieve an SMS.",
|
|
5900
6443
|
properties: {
|
|
@@ -6153,16 +6696,16 @@ exports.default = {
|
|
|
6153
6696
|
type: "object",
|
|
6154
6697
|
},
|
|
6155
6698
|
GoogleIamV1Binding: {
|
|
6156
|
-
description: "Associates `members
|
|
6699
|
+
description: "Associates `members`, or principals, with a `role`.",
|
|
6157
6700
|
properties: {
|
|
6158
6701
|
condition: { $ref: "#/components/schemas/GoogleTypeExpr" },
|
|
6159
6702
|
members: {
|
|
6160
|
-
description: "Specifies the
|
|
6703
|
+
description: "Specifies the principals requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ",
|
|
6161
6704
|
items: { type: "string" },
|
|
6162
6705
|
type: "array",
|
|
6163
6706
|
},
|
|
6164
6707
|
role: {
|
|
6165
|
-
description: "Role that is assigned to `members
|
|
6708
|
+
description: "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.",
|
|
6166
6709
|
type: "string",
|
|
6167
6710
|
},
|
|
6168
6711
|
},
|
|
@@ -6185,7 +6728,7 @@ exports.default = {
|
|
|
6185
6728
|
type: "object",
|
|
6186
6729
|
},
|
|
6187
6730
|
GoogleIamV1Policy: {
|
|
6188
|
-
description: 'An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members
|
|
6731
|
+
description: 'An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp(\'2020-10-01T00:00:00.000Z\')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp(\'2020-10-01T00:00:00.000Z\') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).',
|
|
6189
6732
|
properties: {
|
|
6190
6733
|
auditConfigs: {
|
|
6191
6734
|
description: "Specifies cloud audit logging configuration for this policy.",
|
|
@@ -6193,7 +6736,7 @@ exports.default = {
|
|
|
6193
6736
|
type: "array",
|
|
6194
6737
|
},
|
|
6195
6738
|
bindings: {
|
|
6196
|
-
description: "Associates a list of `members
|
|
6739
|
+
description: "Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`.",
|
|
6197
6740
|
items: { $ref: "#/components/schemas/GoogleIamV1Binding" },
|
|
6198
6741
|
type: "array",
|
|
6199
6742
|
},
|