public sealed class PostPolicy
Represents an unsigned post policy. It needs to be signed with Sign(UrlSigner.PostPolicy, UrlSigner.Options) before it is used to enforced policies when posting objects via form.
Namespace
Google.Cloud.Storage.V1Assembly
Google.Cloud.Storage.V1.dll
Properties
Bucket
public string Bucket { get; }
Bucket name explicitly enforced by this policy, that is, if Google.Cloud.Storage.V1.UrlSigner.PostPolicy.SetField``2(``0,``1) has been called for BucketName. Otherwise, for instance, if the bucket name was specified as part of the Key element, this will return null.
Property Value | |
---|---|
Type | Description |
String |
Fields
public IReadOnlyDictionary<string, object> Fields { get; }
Collection of fields as defined by this policy. Post requests enforced by this policy should set, for each pair in this sequence, the given element to the exact given value.
Property Value | |
---|---|
Type | Description |
IReadOnlyDictionary<String, Object> |
Methods
ForBucketAndKey(String, String)
public static UrlSigner.PostPolicy ForBucketAndKey(string bucketName, string exactKeyValue)
Creates a new UrlSigner.PostPolicy instance which sets the BucketName and requires an exact match for the Google.Cloud.Storage.V1.UrlSigner.Key element.
Parameters | |
---|---|
Name | Description |
bucketName | String The exact value for the bucket name. |
exactKeyValue | String The value to match against. Must not be null. |
Returns | |
---|---|
Type | Description |
UrlSigner.PostPolicy | A new UrlSigner.PostPolicy instance. |
ForBucketAndKeyStartsWith(String, String)
public static UrlSigner.PostPolicy ForBucketAndKeyStartsWith(string bucketName, string keyPrefix)
Creates a new UrlSigner.PostPolicy instance which sets the BucketName and requires a starts-with match for the Key element.
Parameters | |
---|---|
Name | Description |
bucketName | String The exact value for the bucket name. |
keyPrefix | String The value to match against. Must not be null. |
Returns | |
---|---|
Type | Description |
UrlSigner.PostPolicy | A new UrlSigner.PostPolicy instance. |
SetCustomField<TValue>(UrlSigner.PostPolicyCustomElement, String, TValue, Func<TValue, Object>)
public void SetCustomField<TValue>(UrlSigner.PostPolicyCustomElement element, string elementName, TValue value, Func<TValue, object> valueToObject = null)
Sets a required field value for element
of name elementName
.
If any condition existed on this instance for element
of name elementName
it will be overriden with this required field value.
Parameters | |
---|---|
Name | Description |
element | UrlSigner.PostPolicyCustomElement The element for which to set a required field value. |
elementName | String The custom element name. |
value | TValue The value to set the element to. |
valueToObject | Func<TValue, Object> The function to convert |
Type Parameter | |
---|---|
Name | Description |
TValue | The type of the value to set the element to. |
SetCustomStartsWith(UrlSigner.PostPolicyCustomElement, String, String)
public void SetCustomStartsWith(UrlSigner.PostPolicyCustomElement element, string elementName, string prefix)
Sets a starts-with condition for element
of name elementName
.
If any condition existed on this instance for element
of name elementName
it will be overriden with this starts-with condition.
Parameters | |
---|---|
Name | Description |
element | UrlSigner.PostPolicyCustomElement The element for which to set an starts-with condition. |
elementName | String The custom element name. |
prefix | String The prefix to validate against. |
SetField<TValue>(UrlSigner.PostPolicyStandardElement, TValue)
public void SetField<TValue>(UrlSigner.PostPolicyStandardElement element, TValue value)
Sets a required field value for element
.
If any condition existed on this instance for element
it will
be overriden with this required field value.
Parameters | |
---|---|
Name | Description |
element | UrlSigner.PostPolicyStandardElement The element for which to set a required field value. |
value | TValue The value to set the element to. |
Type Parameter | |
---|---|
Name | Description |
TValue | The type of the value to set the element to. |
SetRange<TValue>(UrlSigner.PostPolicyStandardElement, TValue, TValue)
public void SetRange<TValue>(UrlSigner.PostPolicyStandardElement element, TValue min, TValue max)
where TValue : IComparable
Sets a range condition for element
.
If any condition existed on this instance for element
it will
be overriden with this range condition.
Parameters | |
---|---|
Name | Description |
element | UrlSigner.PostPolicyStandardElement The element for which to set a range condition. |
min | TValue The range lower bound. |
max | TValue The range upper bound. |
Type Parameter | |
---|---|
Name | Description |
TValue | The type of the values defining the range. |
SetStartsWith(UrlSigner.PostPolicyStandardElement, String)
public void SetStartsWith(UrlSigner.PostPolicyStandardElement element, string prefix)
Sets a starts-with condition for element
.
If any condition existed on this instance for element
it will
be overriden with this starts-with condition.
Parameters | |
---|---|
Name | Description |
element | UrlSigner.PostPolicyStandardElement The element for which to set an starts-with condition. |
prefix | String The prefix to validate against. |